timothy@apple.com [Wed, 5 Mar 2008 04:48:04 +0000 (04:48 +0000)]
Fix the Tiger build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30786
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 5 Mar 2008 04:40:36 +0000 (04:40 +0000)]
Another go at fixing the Qt build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30785
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 5 Mar 2008 04:34:58 +0000 (04:34 +0000)]
Update link to Windows Platform SDK to its new location.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30784
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 5 Mar 2008 04:22:54 +0000 (04:22 +0000)]
Speculative Qt build fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30783
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 5 Mar 2008 02:14:41 +0000 (02:14 +0000)]
Reviewed by Sam.
Update include paths. This code is not used yet.
* bridge/NP_jsobject.cpp:
* bridge/c/c_class.cpp:
* bridge/c/c_instance.cpp:
* bridge/c/c_utility.cpp:
(KJS::Bindings::convertUTF8ToUTF16WithLatin1Fallback):
#if 0 this out for now.
* bridge/jni/jni_class.cpp:
* bridge/jni/jni_jsobject.cpp:
* bridge/jni/jni_objc.mm:
* bridge/jni/jni_runtime.cpp:
* bridge/jni/jni_utility.cpp:
* bridge/jni/jni_utility.h:
* bridge/npruntime.cpp:
* bridge/objc/WebScriptObject.h:
* bridge/objc/objc_class.h:
* bridge/objc/objc_instance.h:
* bridge/objc/objc_runtime.h:
* bridge/objc/objc_utility.h:
* bridge/objc/objc_utility.mm:
* bridge/runtime.cpp:
* bridge/runtime.h:
* bridge/runtime_array.cpp:
* bridge/runtime_array.h:
* bridge/runtime_method.cpp:
* bridge/runtime_method.h:
* bridge/runtime_object.cpp:
* bridge/runtime_object.h:
* bridge/runtime_root.cpp:
* bridge/runtime_root.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30782
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 5 Mar 2008 02:09:04 +0000 (02:09 +0000)]
WebCore:
Reviewed by Darin Adler.
- fix http://bugs.webkit.org/show_bug.cgi?id=17676
<rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
Test: fast/encoding/url-host-name-non-ascii.html
* platform/KURL.cpp:
(WebCore::appendEncodedHostname): Added an early return in the all-ASCII
case to avoid copying the host name twice and corrected the error
checking after calling uidna_IDNToASCII().
LayoutTests:
- test for http://bugs.webkit.org/show_bug.cgi?id=17676
<rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
* fast/encoding/url-host-name-non-ascii-expected.txt: Added.
* fast/encoding/url-host-name-non-ascii.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30781
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 5 Mar 2008 01:21:42 +0000 (01:21 +0000)]
Fix the Tiger build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30780
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Wed, 5 Mar 2008 01:02:41 +0000 (01:02 +0000)]
Reviewed by Dan Bernstein.
Use JSDOMWindow exclusively instead of JSDOMWindowBase.
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/js/ScheduledAction.h:
* bindings/js/kjs_window.cpp:
(WebCore::JSDOMWindowBase::timerFired):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30779
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 5 Mar 2008 00:57:26 +0000 (00:57 +0000)]
WebCore:
Reviewed by Darin Adler.
<rdar://problem/5720160> Browser windows "do nothing" while modal
dialog or menu is up due to run loop modes (or while scrolling)
Adds a new SchedulePair object that holds a runloop and the mode to use.
A HashSet of SchedulePairs is tracked by Page so it can be used for resource
loading and, in the future, maybe SharedTimerMac.
* WebCore.base.exp: Add new exports for WebKit.
* WebCore.xcodeproj/project.pbxproj: Add new files.
* loader/mac/DocumentLoaderMac.cpp: Added.
(WebCore::scheduleAll): Call schedule all the ResourceLoader handles.
(WebCore::unscheduleAll): Call unschedule all the ResourceLoader handles.
(WebCore::DocumentLoader::schedule): Schedule all the ResourceLoaders owned by the DocumentLoader.
(WebCore::DocumentLoader::unschedule): Unschedule all the ResourceLoaders owned by the DocumentLoader.
* loader/DocumentLoader.h:
* page/Page.h:
(WebCore::Page::scheduledRunLoopPairs): Return m_scheduledRunLoopPairs.
* page/mac/PageMac.cpp:
(WebCore::Page::addSchedulePair): Add a SchedulePair to m_scheduledRunLoopPairs.
(WebCore::Page::removeSchedulePair): Removes a SchedulePair from m_scheduledRunLoopPairs.
* platform/cf/SchedulePair.cpp: Added.
* platform/cf/SchedulePair.h: Added.
* platform/mac/SchedulePairMac.mm: Added.
* platform/network/ResourceHandle.h:
* platform/network/mac/FormDataStreamMac.mm:
(WebCore::advanceCurrentStream): Use the new SchedulePair.
(WebCore::formCreate): Ditto.
(WebCore::formFinalize): Ditto.
(WebCore::formSchedule): Ditto.
(WebCore::formUnschedule): Ditto.
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::start): Schedule the connection with all the SchedulePairs
that Page holds. If Page has no SchedulePairs, schedule with the current runloop, and
pick the mode based on ResourceHandle::loadsDuringCommonRunLoopModes.
(WebCore::ResourceHandle::schedule):
(WebCore::ResourceHandle::unschedule):
WebKit/mac:
Reviewed by Darin Adler.
<rdar://problem/5720160> Browser windows "do nothing" while modal
dialog or menu is up due to run loop modes (or while scrolling)
Add new API that lets a WebView be scheduled with multiple runloops and modes.
This lets loading continue when in a nested runloop or in a different mode.
* Misc/WebKitVersionChecks.h: Add a new version define:
WEBKIT_FIRST_VERSION_WITH_LOADING_DURING_COMMON_RUNLOOP_MODES.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]): Schedule in the main runloop and with
the default runloop mode if we are linked on an earlier WebKit version, use common modes otherwise.
(-[WebView scheduleInRunLoop:forMode:]): New API, that calls through to Page.
(-[WebView unscheduleFromRunLoop:forMode:]): Ditto.
* WebView/WebViewPrivate.h: Add the new pending API methods.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30778
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 5 Mar 2008 00:53:11 +0000 (00:53 +0000)]
Reviewed by Eric.
Fix svg/dynamic-updates time-dependancy problem. Remove unneeded setTimeout() call.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30777
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Wed, 5 Mar 2008 00:28:28 +0000 (00:28 +0000)]
Reviewed by Darin Adler.
Rename kjs_css to JSRGBColor.
* DerivedSources.make:
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* bindings/js/JSRGBColor.cpp: Copied from bindings/js/kjs_css.cpp.
* bindings/js/JSRGBColor.h: Copied from bindings/js/kjs_css.h.
* bindings/js/kjs_css.cpp: Removed.
* bindings/js/kjs_css.h: Removed.
* bindings/js/kjs_window.cpp:
* bindings/objc/DOMUtility.mm:
* bindings/scripts/CodeGeneratorJS.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30776
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 5 Mar 2008 00:08:13 +0000 (00:08 +0000)]
Fix 64-bit build.
* html/HTMLPlugInElement.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30775
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:05:08 +0000 (00:05 +0000)]
WebScriptDebugServer cleanup
Reviewed by Anders.
* WebScriptDebugServer.cpp: Renamed m_callingServer to
m_callingListeners.
(WebScriptDebugServer::WebScriptDebugServer):
(WebScriptDebugServer::sharedWebScriptDebugServer): Changed to keep
the shared instance as a function-level static.
(WebScriptDebugServer::didLoadMainResourceForDataSource): Made return
void.
(WebScriptDebugServer::sourceParsed):
(WebScriptDebugServer::callEvent):
(WebScriptDebugServer::atStatement):
(WebScriptDebugServer::returnEvent):
(WebScriptDebugServer::exception):
(WebScriptDebugServer::serverDidDie): Made return void.
* WebScriptDebugServer.h:
- Removed unnecessary #includes
- Made inheritance from KJS::Debugger private
- Made some methods private
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30774
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:04:50 +0000 (00:04 +0000)]
Remove WebScriptDebugger
Reviewed by Anders.
* WebKit.vcproj/WebKit.vcproj: Removed files from project.
* WebScriptDebugServer.cpp:
(frame): Moved here from WebScriptDebugger.cpp.
(webFrame): Ditto.
(webView): Ditto.
(WebScriptDebugServer::WebScriptDebugServer): Initialize new member.
* WebScriptDebugServer.h: Changed to inherit directly from
KJS::Debugger instead of from WebScriptDebugger, and added
m_callingServer member that WebScriptDebugger used to own.
* WebScriptDebugger.cpp: Removed.
* WebScriptDebugger.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30773
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:04:31 +0000 (00:04 +0000)]
Move sourceParsed to WebScriptDebugServer
Reviewed by Anders.
* WebScriptDebugServer.cpp:
(WebScriptDebugServer::sourceParsed): Moved here from
WebScriptDebugger and merged with didParseSource/failedToParseSource.
* WebScriptDebugServer.h: Removed didParseSource/failedToParseSource.
* WebScriptDebugger.cpp: Removed sourceParsed.
* WebScriptDebugger.h: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30772
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:04:11 +0000 (00:04 +0000)]
Move callEvent, returnEvent, and exception to WebScriptDebugServer
WebCore:
Add ExecState.h to ForwardingHeaders
Reviewed by Anders.
* ForwardingHeaders/kjs/ExecState.h: Added.
* page/Page.cpp: Touch this to force WebCore to build and the headers
to be copied.
WebKit/win:
Move callEvent, returnEvent, and exception to WebScriptDebugServer
Reviewed by Anders.
* WebScriptDebugServer.cpp:
(WebScriptDebugServer::callEvent): Moved here from WebScriptDebugger
and merged with didEnterCallFrame.
(WebScriptDebugServer::returnEvent): Ditto for willLeaveCallFrame.
(WebScriptDebugServer::exception): Ditto for exceptionWasRaised.
* WebScriptDebugServer.h: Removed didEnterCallFrame,
willLeaveCallFrame, and exceptionWasRaised.
* WebScriptDebugger.cpp: Removed callEvent, returnEvent, and
exception.
* WebScriptDebugger.h: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30771
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:03:37 +0000 (00:03 +0000)]
Move atStatement to WebScriptDebugServer
Reviewed by Anders.
* WebScriptDebugServer.cpp:
(WebScriptDebugServer::atStatement): Moved here and merged with the
old willExecuteStatement method.
* WebScriptDebugServer.h: Removed inheritance from
IWebScriptDebugListener, which no one was relying on.
* WebScriptDebugger.cpp:
(webFrame): Made non-static.
(webView): Ditto.
* WebScriptDebugger.h: Added declarations of webFrame and webView
methods for WebScriptDebugServer's benefit. Removed unused m_webView
and m_frame members.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30770
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 5 Mar 2008 00:02:54 +0000 (00:02 +0000)]
Start to merge WebScriptDebugger and WebScriptDebugServer
WebScriptDebugServer now inherits from WebScriptDebugger.
Reviewed by Anders.
* WebScriptDebugServer.cpp:
(WebScriptDebugServer::pageCreated): Use sharedWebScriptDebugServer
instead of WebScriptDebugger::shared.
(WebScriptDebugServer::addListener): Ditto.
(WebScriptDebugServer::removeListener): Ditto.
* WebScriptDebugServer.h: Changed to inherit from WebScriptDebugger.
* WebScriptDebugger.cpp: Removed shared method.
* WebScriptDebugger.h: Made constructor/destructor protected, and
removed shared method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30769
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 4 Mar 2008 23:43:11 +0000 (23:43 +0000)]
Mac build fix. Add new symbol to exports file.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30768
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Tue, 4 Mar 2008 23:21:50 +0000 (23:21 +0000)]
Reviewed by Eric & David.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=17078
Fix getSubStringLength() handling, verified by Acid3 test 77.
Brings up Acid3 score to 88/100.
Added test: svg/custom/acid3-test-77.html
svg/custom/getSubStringLength.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30767
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 4 Mar 2008 23:07:04 +0000 (23:07 +0000)]
Mac build fix. Neither me, Sam nor Adam know why we need to do this though :(
* bindings/js/kjs_proxy.cpp:
(WebCore::KJSProxy::attachDebugger):
* page/Page.cpp:
(WebCore::Page::setDebuggerForAllPages):
(WebCore::Page::setDebugger):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30766
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 4 Mar 2008 22:35:27 +0000 (22:35 +0000)]
Reviewed by Darin.
Fix crash that happens when trying to load a page with a Java applet.
* WebCoreSupport/WebFrameLoaderClient.mm:
Don't release the names and values array - the kit method returns an autoreleased array.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30765
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 22:26:17 +0000 (22:26 +0000)]
Move debugger-attaching code from WebKit/win to WebCore
WebCore:
Make it possible to set a KJS::Debugger on all Frames in a Page and
all Pages in the process
Reviewed by Kevin M.
* ForwardingHeaders/kjs/debugger.h: Added.
* bindings/js/kjs_proxy.cpp:
(WebCore::KJSProxy::initScript): Attach the Page's debugger if there
is one.
(WebCore::KJSProxy::attachDebugger): Attach the passed-in debugger, or
detach any existing debugger if none was passed in.
* bindings/js/kjs_proxy.h:
* page/Page.cpp:
(WebCore::Page::Page): Initialize new member.
(WebCore::Page::setDebuggerForAllPages): Call setDebugger on each Page
in the process.
(WebCore::Page::setDebugger): Store the debugger and pass it off to
all our Frames.
* page/Page.h:
WebKit/win:
Use WebCore's new debugger-attaching code
Reviewed by Kevin M.
* WebCoreSupport/WebFrameLoaderClient.cpp: Moved a kit() function to
WebView.{cpp,h} so that other files can call it.
* WebFrame.cpp:
(WebFrame::WebFrame): Removed m_scriptDebugger member.
(WebFrame::windowObjectCleared): Removed attach/detach calls. This is
no longer needed because WebScriptDebugger no longer stores any
per-WebFrame state.
* WebFrame.h:
* WebScriptDebugServer.cpp:
(WebScriptDebugServer::pageCreated): Added. Attaches our shared
debugger to the Page if we have any listeners.
(WebScriptDebugServer::addListener): Sets our shared debugger for all
Pages when we get our first listener.
(WebScriptDebugServer::removeListener): Removes our shared debugger
from all Pages when we lose our last listener.
* WebScriptDebugServer.h:
* WebScriptDebugger.cpp:
(WebScriptDebugger::shared): Added.
(WebScriptDebugger::WebScriptDebugger): Removed m_frame member.
(WebScriptDebugger::~WebScriptDebugger): Added.
(frame): Gets a Frame from an ExecState.
(webFrame): Gets a WebFrame from an ExecState.
(webView): Gets a WebView from an ExecState.
(WebScriptDebugger::sourceParsed): Changed to call webFrame() and
webView() instead of using m_frame and m_webView members.
(WebScriptDebugger::callEvent): Ditto.
(WebScriptDebugger::atStatement): Ditto.
(WebScriptDebugger::returnEvent): Ditto.
(WebScriptDebugger::exception): Ditto.
* WebScriptDebugger.h:
* WebView.cpp:
(kit): Moved here from WebFrameLoaderClient.cpp.
(WebView::initWithFrame): Tell the WebScriptDebugServer about the new
Page so it can attach a debugger if needed.
* WebView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30764
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 22:05:52 +0000 (22:05 +0000)]
WebCore:
Reviewed by Darin Adler.
Add ClassInfo to custom constructors so that they toString properly
- Take this chance to remove the "Imp" from the end of JSXMLHttpRequestConstructorImp,
and XSLTProcessorConstructorImp and prefix all the classes with JS.
* bindings/js/JSAudioConstructor.cpp:
(WebCore::): Added ClassInfo definition.
(WebCore::JSAudioConstructor::JSAudioConstructor):
(WebCore::JSAudioConstructor::construct): Cleanup.
* bindings/js/JSAudioConstructor.h: Rename m_doc to m_document.
(WebCore::JSAudioConstructor::classInfo): Added.
* bindings/js/JSHTMLInputElementBase.cpp: Rename HTMLInputElementBasePrototype
to JSHTMLInputElementBasePrototype as seen if toString'ed.
(WebCore::):
* bindings/js/JSHTMLOptionElementConstructor.cpp:
(WebCore::): Added ClassInfo definition.
* bindings/js/JSHTMLOptionElementConstructor.h:
(WebCore::JSHTMLOptionElementConstructor::classInfo): Added.
* bindings/js/JSImageConstructor.cpp:
(WebCore::): Added ClassInfo definition.
(WebCore::JSImageConstructor::implementsConstruct): Moved here from header.
* bindings/js/JSImageConstructor.h:
(WebCore::JSImageConstructor::classInfo): Added.
* bindings/js/JSXMLHttpRequest.cpp:
(WebCore::): Rename XMLHttpRequestPrototype to JSXMLHttpRequestPrototype
as seen if toString'ed.
(WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
(WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
(WebCore::JSXMLHttpRequestConstructor::construct):
* bindings/js/JSXMLHttpRequest.h: Renamed JSXMLHttpRequestConstructorImp to
JSXMLHttpRequestConstructor and doc to m_document and
(WebCore::JSXMLHttpRequestConstructor::classInfo): Added.
* bindings/js/JSXSLTProcessor.cpp:
(WebCore::): Renamed XSLTProcessorPrototype to JSXSLTProcessorPrototype and
XSLTProcessorConstructorImp to JSXSLTProcessorConstructor.
(WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
(WebCore::JSXSLTProcessorConstructor::implementsConstruct):
(WebCore::JSXSLTProcessorConstructor::construct):
* bindings/js/JSXSLTProcessor.h:
(WebCore::JSXSLTProcessorConstructor::classInfo): Added.
* bindings/js/kjs_window.cpp:
(WebCore::JSDOMWindowBase::getValueProperty): Fixed to work with the new class names.
WebKitTools:
Reviewed by Darin Adler.
* Scripts/do-webcore-rename: Update renaming plan.
LayoutTests:
Reviewed by Darin Adler.
Update results for fixed class names.
* fast/dom/Window/window-properties-expected.txt:
* fast/dom/xmlhttprequest-get-expected.txt:
* http/tests/xmlhttprequest/event-target-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30763
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 4 Mar 2008 21:12:31 +0000 (21:12 +0000)]
WebCore:
Reviewed by Oliver Hunt and Geoffrey Garen.
- fix http://bugs.webkit.org/show_bug.cgi?id=17667
<rdar://problem/5779658> REGRESSION (r30587): Document::implicitClose() not called when done loading page (Image does not get scaled to fit)
* loader/loader.cpp:
(WebCore::Loader::didFinishLoading): Changed to call
setLoadInProgress(false) even for 4xx errors, because that triggers
load completion check.
LayoutTests:
Reviewed by Oliver Hunt and Geoffrey Garen.
- extended test to cover http://bugs.webkit.org/show_bug.cgi?id=17667
<rdar://problem/5779658> REGRESSION (r30587): Document::implicitClose() not called when done loading page (Image does not get scaled to fit)
* http/tests/misc/missing-style-sheet-expected.txt:
* http/tests/misc/missing-style-sheet.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30762
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele@apple.com [Tue, 4 Mar 2008 21:09:07 +0000 (21:09 +0000)]
WebCore:
Reviewed by Beth.
Fix for <rdar://problem/5779718> focus() does not work for anchor elements with no content
If an anchor has zero size, don't exclude it from being focusable from JS, just exclude it
from being keyboard focusable (using the tab key).
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::isFocusable):
(WebCore::HTMLAnchorElement::isKeyboardFocusable):
LayoutTests:
Reviewed by Beth.
Test for <rdar://problem/5779718> focus() does not work for anchor elements with no content
* fast/events/anchor-empty-focus-expected.txt: Added.
* fast/events/anchor-empty-focus.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30761
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 4 Mar 2008 19:36:01 +0000 (19:36 +0000)]
<rdar://problem/5119360> ER - Seed: Google results do not have AXHeading information
Make headers appear in AX regardless of whether they have BlockFlow renderers or not
Reviewed by Darin Adler.
* page/mac/WebCoreAXObject.mm:
(headingLevel): no longer ignores BlockFlow rendered headers
(-[WebCoreAXObject accessibilityIsIgnored]): does not ignore headers
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30760
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 19:15:16 +0000 (19:15 +0000)]
* PrettyPatch/PrettyPatch.rb: Allow the extent of the previous file to be omitted from the hunk header.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30759
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 17:59:28 +0000 (17:59 +0000)]
Change WebView's string-finding methods to call through to Page
These methods were added to Page back in r28878 (and the
implementation was copied from WebView!) but we never switched over to
using them.
Reviewed by Sam.
* WebView.cpp:
(WebView::searchFor): Call through to Page::findString.
(WebView::markAllMatchesForText): Call through to Page.
(WebView::unmarkAllTextMatches): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30758
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 17:57:18 +0000 (17:57 +0000)]
GTK+ build fix.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30757
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 17:46:01 +0000 (17:46 +0000)]
Reviewed by Darin Adler.
Remame ImageConstructorImp to JSImageConstructor and move it into its
own file.
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* bindings/js/JSImageConstructor.cpp: Copied from bindings/js/kjs_html.cpp.
(WebCore::JSImageConstructor::JSImageConstructor):
(WebCore::JSImageConstructor::construct):
* bindings/js/JSImageConstructor.h: Copied from bindings/js/kjs_html.h.
* bindings/js/kjs_html.cpp:
(WebCore::getRuntimeObject): Make this function static since it is only used
in this file.
* bindings/js/kjs_html.h:
* bindings/js/kjs_window.cpp:
(WebCore::JSDOMWindowBase::getValueProperty):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30756
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 17:24:42 +0000 (17:24 +0000)]
Reviewed by Adam.
- fix 200+ failing regression tests
- fix http://bugs.webkit.org/show_bug.cgi?id=17668
Vertical scrollbar at slashdot.org is randomly not shown
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage): Changed the refcounting
code here to exactly match the way it was before it was moved from WebCore. I had
introduced a storage leak and that was causing problems with scroll bars!
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30755
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 17:21:44 +0000 (17:21 +0000)]
Fix an uninitialized value warning in CodeGeneratorJS.pm
* bindings/scripts/CodeGeneratorJS.pm: Remove reference to
non-existent $maybeOkParam (this was removed in r30753).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30754
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 17:02:20 +0000 (17:02 +0000)]
Reviewed by Darin Adler.
Remove kjs_dom.{h,cpp}.
- Removed custom toAttr, which took a boolean ok, and teach CodeGeneratorJS.pm
to us a null return value as an indication of failure. (This new logic is used
for toVoidCallback as well.)
- Move getRuntimeObject to kjs_html where a bunch of other runtime object related
functions currently live.
- Move checkNodeSecurity to kjs_binding, where other frame security functions
currently live.
- Remove getNodeConstructor. It had no implementation.
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* bindings/js/JSAttrCustom.cpp:
* bindings/js/JSCustomVoidCallback.cpp:
(WebCore::toVoidCallback):
* bindings/js/JSCustomVoidCallback.h:
* bindings/js/JSDatabaseCustom.cpp:
(WebCore::JSDatabase::changeVersion):
(WebCore::JSDatabase::transaction):
* bindings/js/JSElementCustom.cpp:
(WebCore::JSElement::setAttributeNode):
(WebCore::JSElement::setAttributeNodeNS):
* bindings/js/JSEventTargetBase.cpp:
(WebCore::toJS):
* bindings/js/JSEventTargetBase.h:
* bindings/js/JSHTMLAppletElementCustom.cpp:
* bindings/js/JSHTMLElementCustom.cpp:
* bindings/js/JSHTMLEmbedElementCustom.cpp:
* bindings/js/JSHTMLFormElementCustom.cpp:
* bindings/js/JSHTMLFrameElementCustom.cpp:
* bindings/js/JSHTMLIFrameElementCustom.cpp:
* bindings/js/JSHTMLObjectElementCustom.cpp:
* bindings/js/JSNamedNodeMapCustom.cpp:
* bindings/js/JSNamedNodesCollection.cpp:
* bindings/js/JSNodeFilterCustom.cpp:
* bindings/js/JSXSLTProcessor.cpp:
* bindings/js/kjs_binding.cpp:
(WebCore::checkNodeSecurity):
* bindings/js/kjs_binding.h:
* bindings/js/kjs_css.cpp:
* bindings/js/kjs_dom.cpp: Removed.
* bindings/js/kjs_dom.h: Removed.
* bindings/js/kjs_events.cpp:
* bindings/js/kjs_html.cpp:
(WebCore::getRuntimeObject):
* bindings/js/kjs_html.h:
* bindings/js/kjs_window.cpp:
* bindings/scripts/CodeGeneratorJS.pm:
* dom/Attr.idl:
* html/HTMLPlugInElement.cpp:
* page/InspectorController.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30753
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 17:00:22 +0000 (17:00 +0000)]
Actually pause the process while Drosera is at a breakpoint
WebScriptDebugServer::suspendProcessIfPaused is supposed to pause the
process while Drosera is at a breakpoint. Previously we were just
starting a message pump that would deliver messages to all windows in
the process, allowing mouse events, JS timers, etc. to execute.
Now we only deliver messages to COM's message window, which is all we
need to allow RPC to function.
Reviewed by Anders.
* WebScriptDebugServer.cpp:
(comMessageWindow): Added. Finds COM's message window.
(WebScriptDebugServer::suspendProcessIfPaused): Only deliver messages
to COM's message window so that mouse events, JS timers, etc., won't
execute.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30752
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 17:00:04 +0000 (17:00 +0000)]
Generate WebScriptCallFrame instances dynamically
WebScriptDebugger no longer holds a reference to the topmost call
frame, and WebScriptCallFrame no longer holds a reference to its
caller. We now generate WebScriptCallFrame instances as needed by
walking the callingExecState chain.
By making WebKit no longer responsible for keeping track of the call
stack, we get one step closer to moving most JS debugging code out of
WebKit entirely.
This incidentally fixes a bug in Drosera where we'd never show the
global scope in the call stack.
Reviewed by Sam and Kevin M.
* WebScriptCallFrame.cpp:
(callingFunctionOrGlobalExecState): Finds the nearest calling
ExecState that is a FunctionExecState or GlobalExecState, if any, and
returns it.
(WebScriptCallFrame::WebScriptCallFrame):
- No longer takes a caller parameter.
- Sets m_state to the callingFunctionOrGlobalExecState of the
ExecState passed in.
(WebScriptCallFrame::createInstance): Removed the caller parameter.
(WebScriptCallFrame::caller): Generate a new WebScriptCallFrame on the
fly from our ExecState.
* WebScriptCallFrame.h: No longer holds a reference to the caller.
* WebScriptDebugger.cpp:
(WebScriptDebugger::WebScriptDebugger): Removed the call to callEvent
that was supposed to set up the global scope call frame, but never
worked because m_callingServer was set to true, which would cause
callEvent to return early without doing anything. Also removed the
m_callingServer guards since we're not calling callEvent anymore.
(WebScriptDebugger::callEvent): Create a WebScriptCallFrame on the
fly from the passed-in ExecState.
(WebScriptDebugger::atStatement): Ditto.
(WebScriptDebugger::returnEvent): Ditto, but use the callingExecState.
This is equivalent to what calling leaveFrame() did before.
(WebScriptDebugger::exception): Ditto, using the passed-in ExecState.
* WebScriptDebugger.h: Removed m_topStackFrame member and
enterFrame/leaveFrame methods.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30751
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 4 Mar 2008 16:59:43 +0000 (16:59 +0000)]
Win/Qt/GTK+/wx build fix after r30740
* editing/Editor.cpp: Added missing #include.
* page/qt/FrameQt.cpp: Removed Frame::dashboardRegionsChanged.
* page/win/FrameWin.cpp: Ditto.
* platform/wx/TemporaryLinkStubs.cpp: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30750
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Tue, 4 Mar 2008 16:57:03 +0000 (16:57 +0000)]
2008-03-04 Alp Toker <alp@atoker.com>
GTK+ build fix for breakage introduced in r30740.
Remove Frame::dashboardRegionsChanged(). There's now a default
implementation at ChromeClient::dashboardRegionsChanged().
* page/gtk/FrameGtk.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30749
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Tue, 4 Mar 2008 16:49:48 +0000 (16:49 +0000)]
2008-03-04 Alp Toker <alp@atoker.com>
GTK+ build fix suggested by aroben. Remove an unused Mac-specific
included introduced in r30740.
* page/ChromeClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30748
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 4 Mar 2008 16:03:02 +0000 (16:03 +0000)]
WebCore:
Reviewed by Sam Weinig.
- fix <rdar://problem/5622336> Burmese text does not render on http://www.myanmarbible.com/bible/Judson/html/index.html
Test: platform/win/fast/text/uniscribe-missing-glyph.html
Note that default installations of Windows do not have Myanmar fonts.
What this patch does is ensure that the Myanmar and other complex
scripts are rendered as missing glyphs rather than not rendered at all.
The particular page in the bug measures the relative widths of two
rendered strings and, if they are rendered as missing glyphs, detects
that a Myanmar fonts is not available and substitutes the text with
images. By not rendering (and measuring) missing glyphs, WebKit was
throwing the page's detection code off.
* platform/graphics/win/UniscribeController.cpp:
(WebCore::UniscribeController::shape): Removed an early return in case
shaping resulted in missing glyphs. This is now expected if font
fallback failed to produce a font containing glyphs for the character.
Also changed two resize()s to shrink()s.
LayoutTests:
- test for <rdar://problem/5622336> Burmese text does not render on http://www.myanmarbible.com/bible/Judson/html/index.html
* platform/win/fast/text/uniscribe-missing-glyph-expected.txt: Added.
* platform/win/fast/text/uniscribe-missing-glyph.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30747
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:34:24 +0000 (15:34 +0000)]
WebCore:
Reviewed by Adam.
- remove WebCoreFrameBridge reapplyStyles method
* WebCore.base.exp: Added exports.
* page/mac/WebCoreFrameBridge.h: Removed WebCoreDeviceType and
reapplyStylesForDeviceType: method.
* page/mac/WebCoreFrameBridge.mm: Ditto.
WebKit/mac:
Reviewed by Adam.
- remove WebCoreFrameBridge reapplyStyles method
* WebView/WebHTMLView.mm:
(-[WebHTMLView reapplyStyles]): Moved code to reapply styles here from the bridge.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30746
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:29:08 +0000 (15:29 +0000)]
WebCore:
Reviewed by Adam.
- eliminate WebCoreFrameBridge createFrameViewWithNSView
* WebCore.base.exp: Added some more exports.
* page/mac/WebCoreFrameBridge.h: Deleted createFrameViewWithNSView.
* page/mac/WebCoreFrameBridge.mm: Ditto.
WebKit/mac:
Reviewed by Adam.
- eliminate WebCoreFrameBridge createFrameViewWithNSView
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
Moved code here from createFrameViewWithNSView.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30745
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:24:43 +0000 (15:24 +0000)]
WebCore:
Reviewed by Adam.
- removed WebCoreFrameBridge scrollOverflowInDirection
* WebCore.base.exp: Export function needed by WebKit.
* page/mac/WebCoreFrameBridge.h: Removed WebScrollDirection, WebScrollGranularity,
and scrollOverflowInDirection.
* page/mac/WebCoreFrameBridge.mm: Removed method.
WebKit/mac:
Reviewed by Adam.
- removed WebCoreFrameBridge scrollOverflowInDirection
* WebView/WebFrameView.mm:
(-[WebFrameView _scrollOverflowInDirection:granularity:]): Changed to call
EventHandler directly instead of using the bridge.
(-[WebFrameView scrollToBeginningOfDocument:]): Updated to use WebCore enums instead
of the ones from the bridge.
(-[WebFrameView scrollToEndOfDocument:]): Ditto.
(-[WebFrameView _pageVertically:]): Ditto.
(-[WebFrameView _pageHorizontally:]): Ditto.
(-[WebFrameView _scrollLineVertically:]): Ditto.
(-[WebFrameView _scrollLineHorizontally:]): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30744
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:21:42 +0000 (15:21 +0000)]
WebCore:
Reviewed by Adam.
- remove WebCoreFrameBridge installInFrame: method
* WebCore.base.exp: Export a few symbols.
* WebCore.xcodeproj/project.pbxproj: Export a few files.
* page/mac/WebCoreFrameBridge.h: Remove installInFrame:.
* page/mac/WebCoreFrameBridge.mm: Ditto.
WebKit/mac:
Reviewed by Adam.
- remove WebCoreFrameBridge installInFrame: method
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage): Call
-[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:].
* WebView/WebFrameView.mm:
(-[WebFrameView _install]): Added. Has code from -[WebCoreFrameBridge installInFrame:].
(-[WebFrameView _setCustomScrollViewClass:]): Used early return idiom so the entire
method isn't nested inside an if statement. Call
-[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:].
* WebView/WebFrameViewInternal.h: Added declaration of _install method so it can be
used in WebFrameLoaderClient.mm.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30743
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:20:16 +0000 (15:20 +0000)]
WebCore:
Reviewed by Adam.
- remove WebCoreFrameBridge window method
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::sendFakeEventsAfterWidgetTracking): Get the window by calling
window on the NSView instead of using the bridge. The WebKit side wasn't doing anything
special, so a call to -[NSView window] is fine.
* page/mac/WebCoreFrameBridge.h: Removed the window method.
WebKit/mac:
Reviewed by Adam.
- remove WebCoreFrameBridge window method
* WebCoreSupport/WebFrameBridge.mm: Removed window method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30742
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:17:35 +0000 (15:17 +0000)]
Reviewed by Adam.
- move code from WebFrameBridge into WebFrameLoaderClient
* WebCoreSupport/WebFrameBridge.h: Removed unused fields, changed frame name parameters
to use WebCore::String instead of NSString, add initSubframeWithOwnerElement declaration,
removed viewForPluginWithFrame, viewForJavaAppletWithFrame, createChildFrameNamed,
redirectDataToPlugin, determineObjectFromMIMEType, and windowObjectCleared methods.
* WebCoreSupport/WebFrameBridge.mm:
(-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]):
Changed to use WebCore::String.
(-[WebFrameBridge initMainFrameWithPage:frameName:WebCore::frameView:]): Ditto.
(-[WebFrameBridge initSubframeWithOwnerElement:frameName:WebCore::frameView:]): Ditto.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::setOriginalURLForDownload): Removed some dead code I found here
and added a FIXME.
(WebFrameLoaderClient::createFrame): Moved the code from WebFrameBridge here.
(WebFrameLoaderClient::objectContentType): Ditto.
(parameterValue): Added. Helper function, based on code originally in WebFrameBridge.
(pluginView): Ditto.
(WebFrameLoaderClient::createPlugin): Moved the code from WebFrameBridge here.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30741
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:10:30 +0000 (15:10 +0000)]
WebCore:
Reviewed by Adam.
- remove -[WebCoreFrameBridge dashboardRegionsChanged:]
* WebCore.base.exp: Updated.
* page/Chrome.cpp:
(WebCore::ChromeClient::dashboardRegionsChanged): Added.
* page/ChromeClient.h: Added virtual function for dashboardRegionsChanged.
* page/Frame.h: Removed dashboardRegionsChanged function.
* page/FrameView.cpp:
(WebCore::FrameView::updateDashboardRegions): Changed to call dashboardRegionsChanged
on ChromeClient and to only call it when the regions actually changed.
* page/mac/FrameMac.mm: Removed dashboardRegionsChanged function.
* page/mac/WebCoreFrameBridge.h: Removed dashboardRegionsChanged: method.
WebKit/mac:
Reviewed by Adam.
- remove -[WebCoreFrameBridge dashboardRegionsChanged:]
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::dashboardRegionsChanged): Moved code here from the bridge.
The WebCore side now calls this only when there's an actual change.
* WebCoreSupport/WebFrameBridge.h: Removed lastDashboardRegions.
* WebCoreSupport/WebFrameBridge.mm:
(-[WebFrameBridge dealloc]): Removed code to release lastDashboardRegions.
Removed _compareDashboardRegions: and dashboardRegionsChanged: methods.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30740
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 4 Mar 2008 15:07:48 +0000 (15:07 +0000)]
WebCore:
Reviewed by Adam.
- remove WebCoreFrameBridge issuePasteComand method
* editing/Editor.cpp:
(WebCore::Editor::paste): Moved the Mac-specific part of this to EditorMac.
* editing/mac/EditorMac.mm:
(WebCore::Editor::paste): Added. Calls paste: on the document view (normally a
WebHTMLView). We should get rid of this eventually.
* page/Frame.h: Removed issuePasteCommand.
* page/mac/FrameMac.mm: Ditto.
* page/mac/WebCoreFrameBridge.h: Ditto.
WebKit/mac:
Reviewed by Adam.
- remove WebCoreFrameBridge issuePasteComand method
* WebCoreSupport/WebFrameBridge.mm: Removed issuePasteCommand method.
* WebView/WebHTMLViewInternal.h: Removed declaration of paste: method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30739
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Tue, 4 Mar 2008 09:11:35 +0000 (09:11 +0000)]
Suggested by Darin, rubber-stamped by Mark.
http://bugs.webkit.org/show_bug.cgi?id=17569
REGRESSION (r30571): Buzzword.com doesn't load
Rolling out r30571, as determining what is wrong with it proved tricky.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::tokenizerProcessedData):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30738
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 4 Mar 2008 08:25:26 +0000 (08:25 +0000)]
2008-03-04 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
Add a note about preferring if over else if when the previous if is terminated by a return statement.
* coding/coding-style.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30737
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 08:11:50 +0000 (08:11 +0000)]
Build fix.
* bindings/js/kjs_events.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30736
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 07:48:53 +0000 (07:48 +0000)]
WebCore:
Reviewed by Mark Rowe.
Move JSClipboard into its own file.
* DerivedSources.make:
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* bindings/js/JSAttrCustom.cpp:
* bindings/js/JSClipboardCustom.cpp: Added.
(WebCore::JSClipboard::types):
(WebCore::JSClipboard::clearData):
(WebCore::JSClipboard::getData):
(WebCore::JSClipboard::setData):
(WebCore::JSClipboard::setDragImage):
* bindings/js/JSElementCustom.cpp:
* bindings/js/JSEventCustom.cpp:
* bindings/js/JSHTMLFrameElementCustom.cpp:
* bindings/js/JSHTMLIFrameElementCustom.cpp:
* bindings/js/kjs_events.cpp:
* bindings/js/kjs_events.h:
* bindings/js/kjs_window.cpp:
* bindings/scripts/CodeGeneratorJS.pm:
* dom/Clipboard.cpp:
(WebCore::Clipboard::setDropEffect):
(WebCore::Clipboard::setEffectAllowed):
* dom/Clipboard.idl: Added.
LayoutTests:
Reviewed by Mark Rowe.
Update test results.
* fast/dom/Window/window-properties-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30735
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 06:20:31 +0000 (06:20 +0000)]
GTK+ build fix.
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::windowObjectCleared):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30734
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 05:33:13 +0000 (05:33 +0000)]
Windows build fix.
* WebFrame.cpp:
(WebFrame::windowObjectCleared):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30733
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 05:05:16 +0000 (05:05 +0000)]
Windows build-fix.
* page/Chrome.cpp:
* plugins/win/PluginViewWin.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30732
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 4 Mar 2008 03:08:30 +0000 (03:08 +0000)]
Reviewed by Darin Adler.
Cleanup and plumbing in preparation for the great Window split.
- Rename KJS::Window to WebCore::JSDOMWindowBase.
- Remove KJS::Window::retrieve() and KJS::Window::retrieveWindow() and replace
with the new toJSDOMWindow().
- Remove KJS::Window::retrieveActive() and replace with explicit call to
exec->dynamicGlobalObject() and toJSDOMWindow().
* bindings/js/JSCustomVoidCallback.cpp:
(WebCore::toVoidCallback):.
* bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::create):
* bindings/js/JSDatabaseCustom.cpp:
(WebCore::JSDatabase::changeVersion):
(WebCore::JSDatabase::transaction):
* bindings/js/JSDocumentCustom.cpp:
(WebCore::JSDocument::location):
(WebCore::toJS):
* bindings/js/JSEventTargetBase.cpp:
(WebCore::jsEventTargetAddEventListener):
(WebCore::jsEventTargetRemoveEventListener):
* bindings/js/JSEventTargetNode.cpp:
(WebCore::JSEventTargetNode::setListener):
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::JSHTMLDocument::nameGetter):
(WebCore::JSHTMLDocument::open):
* bindings/js/JSHTMLFrameSetElementCustom.cpp:
(WebCore::JSHTMLFrameSetElement::nameGetter):
* bindings/js/JSLocation.cpp:
(WebCore::JSLocation::put):
(WebCore::jsLocationProtoFuncReplace):
(WebCore::jsLocationProtoFuncReload):
(WebCore::jsLocationProtoFuncAssign):
* bindings/js/JSLocation.h:
* bindings/js/JSSQLTransactionCustom.cpp:
(WebCore::JSSQLTransaction::executeSql):
* bindings/js/JSSVGLazyEventListener.cpp:
(WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener):
(WebCore::JSSVGLazyEventListener::eventParameterName):
* bindings/js/JSSVGLazyEventListener.h:
* bindings/js/JSXMLHttpRequest.cpp:
(WebCore::JSXMLHttpRequest::putValueProperty):
(WebCore::jsXMLHttpRequestPrototypeFunctionOpen):
(WebCore::jsXMLHttpRequestPrototypeFunctionAddEventListener):
(WebCore::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/js/ScheduledAction.h:
* bindings/js/kjs_binding.cpp:
(WebCore::allowsAccessFromFrame):
(WebCore::printErrorMessageForFrame):
* bindings/js/kjs_events.cpp:
(WebCore::JSAbstractEventListener::handleEvent):
(WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
(WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
(WebCore::JSUnprotectedEventListener::windowObj):
(WebCore::JSEventListener::JSEventListener):
(WebCore::JSEventListener::~JSEventListener):
(WebCore::JSEventListener::windowObj):
(WebCore::JSLazyEventListener::JSLazyEventListener):
(WebCore::JSLazyEventListener::parseCode):
* bindings/js/kjs_events.h:
* bindings/js/kjs_navigator.cpp:
(WebCore::MimeType::getValueProperty):
* bindings/js/kjs_proxy.cpp:
(WebCore::KJSProxy::evaluate):
(WebCore::KJSProxy::createHTMLEventHandler):
(WebCore::KJSProxy::createSVGEventHandler):
* bindings/js/kjs_window.cpp:
(WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
(WebCore::DOMWindowTimer::DOMWindowTimer):
(WebCore::DOMWindowTimer::action):
(WebCore::DOMWindowTimer::takeAction):
(WebCore::):
(WebCore::JSDOMWindowBase::JSDOMWindowBase):
(WebCore::JSDOMWindowBase::~JSDOMWindowBase):
(WebCore::JSDOMWindowBase::location):
(WebCore::JSDOMWindowBase::mark):
(WebCore::allowPopUp):
(WebCore::createWindow):
(WebCore::showModalDialog):
(WebCore::JSDOMWindowBase::getValueProperty):
(WebCore::JSDOMWindowBase::childFrameGetter):
(WebCore::JSDOMWindowBase::indexGetter):
(WebCore::JSDOMWindowBase::namedItemGetter):
(WebCore::JSDOMWindowBase::getOwnPropertySlot):
(WebCore::JSDOMWindowBase::put):
(WebCore::JSDOMWindowBase::allowsAccessFrom):
(WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
(WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
(WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
(WebCore::JSDOMWindowBase::printErrorMessage):
(WebCore::JSDOMWindowBase::globalExec):
(WebCore::JSDOMWindowBase::shouldInterruptScript):
(WebCore::JSDOMWindowBase::setListener):
(WebCore::JSDOMWindowBase::getListener):
(WebCore::JSDOMWindowBase::findJSEventListener):
(WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
(WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
(WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
(WebCore::JSDOMWindowBase::clearHelperObjectProperties):
(WebCore::JSDOMWindowBase::clear):
(WebCore::JSDOMWindowBase::setCurrentEvent):
(WebCore::JSDOMWindowBase::currentEvent):
(WebCore::windowProtoFuncAToB):
(WebCore::windowProtoFuncBToA):
(WebCore::windowProtoFuncOpen):
(WebCore::windowProtoFuncSetTimeout):
(WebCore::windowProtoFuncClearTimeout):
(WebCore::windowProtoFuncSetInterval):
(WebCore::windowProtoFuncAddEventListener):
(WebCore::windowProtoFuncRemoveEventListener):
(WebCore::windowProtoFuncShowModalDialog):
(WebCore::windowProtoFuncNotImplemented):
(WebCore::JSDOMWindowBase::setReturnValueSlot):
(WebCore::JSDOMWindowBase::clearAllTimeouts):
(WebCore::JSDOMWindowBase::installTimeout):
(WebCore::JSDOMWindowBase::pauseTimeouts):
(WebCore::JSDOMWindowBase::resumeTimeouts):
(WebCore::JSDOMWindowBase::clearTimeout):
(WebCore::JSDOMWindowBase::timerFired):
(WebCore::JSDOMWindowBase::disconnectFrame):
(WebCore::JSDOMWindowBase::jsEventListeners):
(WebCore::JSDOMWindowBase::jsHTMLEventListeners):
(WebCore::JSDOMWindowBase::jsUnprotectedEventListeners):
(WebCore::JSDOMWindowBase::jsUnprotectedHTMLEventListeners):
(WebCore::toJS):
(WebCore::toJSDOMWindow):
(WebCore::toJSDOMWindow):
* bindings/js/kjs_window.h:
(WebCore::JSDOMWindowBase::impl):
(WebCore::JSDOMWindowBase::classInfo):
(WebCore::JSDOMWindowBase::):
* bindings/objc/DOMUtility.mm:
(KJS::createDOMWrapper):
* bindings/scripts/CodeGeneratorJS.pm:
* history/CachedPage.cpp:
(WebCore::CachedPage::CachedPage):
(WebCore::CachedPage::restore):
* page/Chrome.cpp:
(WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
(WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
* page/DOMWindow.idl:
* page/Frame.cpp:
(WebCore::Frame::~Frame):
(WebCore::Frame::windowScriptNPObject):
(WebCore::Frame::pageDestroyed):
* page/InspectorController.cpp:
(WebCore::inspectedWindow):
* page/mac/FrameMac.mm:
(WebCore::Frame::windowScriptObject):
* page/mac/WebCoreFrameBridge.mm:
(updateRenderingForBindings):
* platform/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::canAccess):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30731
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Tue, 4 Mar 2008 00:24:54 +0000 (00:24 +0000)]
Make ForInNode check for the timeout interrupt
Reviewed by Anders
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30726
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Mon, 3 Mar 2008 23:08:53 +0000 (23:08 +0000)]
wx build fixes after recent Frame-related changes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30725
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 3 Mar 2008 22:59:30 +0000 (22:59 +0000)]
WebCore:
Reviewed by Darin Adler.
- make :first-letter apply to the first letter in normal flow, skipping
floats and positioned objects
Test: fast/css/first-letter-skip-out-of-flow.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetter):
LayoutTests:
Reviewed by Darin Adler.
- test that :first-letter applies to the first letter in normal flow,
skipping floats and positioned objects
* fast/css/first-letter-skip-out-of-flow.html: Added.
* platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.checksum: Added.
* platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.png: Added.
* platform/mac/fast/css/first-letter-skip-out-of-flow-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30724
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Mon, 3 Mar 2008 22:58:34 +0000 (22:58 +0000)]
Fix build.
* plugins/win/PluginViewWin.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30723
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Mon, 3 Mar 2008 22:43:57 +0000 (22:43 +0000)]
2008-03-03 Mark Rowe <mrowe@apple.com>
Reviewed by Dan Bernstein.
Fix http://bugs.webkit.org/show_bug.cgi?id=17313
Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
Node::querySelector and SelectorNodeList were not sufficiently initializing the CSSStyleSelector
before using it to resolve styles, which lead to it having a stale m_style member in some situations.
This stale m_style member resulted in a wild store that would write over whatever object now resided
at the location m_style pointed to.
Test: fast/dom/SelectorAPI/bug-17313.html
* dom/Node.cpp:
(WebCore::Node::querySelector): Call initForStyleResolve to further initialize the CSSStyleSelector.
* dom/SelectorNodeList.cpp:
(WebCore::SelectorNodeList::SelectorNodeList): Ditto.
2008-03-03 Mark Rowe <mrowe@apple.com>
Reviewed by Dan Bernstein.
Test for http://bugs.webkit.org/show_bug.cgi?id=17313
Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
* fast/dom/SelectorAPI/bug-17313-expected.txt: Added.
* fast/dom/SelectorAPI/bug-17313.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30722
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Mon, 3 Mar 2008 22:06:52 +0000 (22:06 +0000)]
2008-03-03 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=17644
Build GTK on Mac OS X using native ICU library
Use Apple native ICU libraries when building GTK
webkit on Mac OS.
* configure.ac:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30721
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 3 Mar 2008 21:53:58 +0000 (21:53 +0000)]
Reviewed by Darin and Sam.
Include fixes, in preparation of using the headers in WebCore/bridge.
* bindings/js/kjs_binding.h:
* bindings/js/kjs_dom.cpp:
* bindings/objc/DOMInternal.mm:
* bindings/objc/DOMUtility.mm:
* bindings/objc/WebScriptObject.mm:
* bindings/objc/WebScriptObjectPrivate.h:
* bridge/objc/objc_class.h:
* bridge/objc/objc_instance.h:
* bridge/objc/objc_runtime.h:
* bridge/objc/objc_utility.h:
* bridge/runtime.h:
* bridge/runtime_object.h:
* bridge/runtime_root.h:
* html/HTMLAppletElement.cpp:
* html/HTMLAppletElement.h:
* html/HTMLEmbedElement.cpp:
* html/HTMLEmbedElement.h:
* html/HTMLObjectElement.cpp:
* html/HTMLPlugInElement.cpp:
* html/HTMLPlugInElement.h:
* page/mac/FrameMac.mm:
* page/mac/WebCoreFrameBridge.h:
* page/mac/WebCoreFrameBridge.mm:
* page/mac/WebCoreScriptDebugger.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30720
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Mon, 3 Mar 2008 21:18:22 +0000 (21:18 +0000)]
WebCore:
Full page zoom plumbing. Add a notion of whether or not a zoom is text only or a full zoom to the
Frame. setTextSizeMultiplier does a text only zoom.
Reviewed by Tim H.
* page/Frame.cpp:
(WebCore::Frame::zoomFactor):
(WebCore::Frame::isZoomFactorTextOnly):
(WebCore::Frame::setZoomFactor):
(WebCore::FramePrivate::FramePrivate):
* page/Frame.h:
* page/FramePrivate.h:
* page/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge setTextSizeMultiplier:]):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::setCurrentScale):
WebKit/win:
Full page zoom work. Make setting of a zoom factor take a boolean saying whether it is a text only
or full page zoom.
Reviewed by Tim H.
* WebFrame.cpp:
(WebFrame::setTextSizeMultiplier):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30719
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Mon, 3 Mar 2008 20:03:16 +0000 (20:03 +0000)]
2008-03-03 Alp Toker <alp@atoker.com>
Fix the GTK+ build following breakage introduced in r30712.
* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::imContextCommitted):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30718
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Mon, 3 Mar 2008 19:51:59 +0000 (19:51 +0000)]
Fix for <rdar://problem/5776161> REGRESSION: Google Docs Spreadsheet crash
This is also http://bugs.webkit.org/show_bug.cgi?id=17543, fixed table layout corrupts heap.
Make sure not to access position -1 of the size 0 vectors.
Reviewed by ggaren
* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::layout):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30716
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Mon, 3 Mar 2008 19:45:21 +0000 (19:45 +0000)]
WebCore:
Dynamically inserting CSS rule with @media query fails with DOM Exception 12
<http://bugs.webkit.org/show_bug.cgi?id=15986>
Reviewed by Darin.
Allow any valid rule (@font-face, @import, @media, @page or style) to be
parsed when using CSSStyleSheet.insertRule(). Previously only import and
style rules were allowed. Note that @page rules always throw an exception
because they're not implemented yet, so no test case was added for them.
Tests: fast/css/insertRule-font-face.html
fast/css/insertRule-media.html
* css/CSSGrammar.y: Extracted 'valid_rule' out of 'rule'. Renamed
'ruleset_or_import' to 'valid_rule_or_import' and changed its definition.
LayoutTests:
Dynamically inserting CSS rule with @media query fails with DOM Exception 12
<http://bugs.webkit.org/show_bug.cgi?id=15986>
Reviewed by Darin.
* fast/css/insertRule-font-face.html: Added.
* fast/css/insertRule-media.html: Added.
* fast/css/resources/insertRule-font-face.js: Added.
* fast/css/resources/insertRule-media.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30715
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 3 Mar 2008 19:43:29 +0000 (19:43 +0000)]
Reviewed by Sam.
Copy JSC bindings directory over to WebCore/bridge.
* bridge: Copied from ../JavaScriptCore/bindings.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30714
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 3 Mar 2008 18:56:20 +0000 (18:56 +0000)]
Reviewed by Darin Adler.
- remove CSSMutableStyleDeclaration::setChanged()'s change type
parameter
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::setChanged): Removed the change
type parameter and made this function determine the correct change type
based on whether this is an inline style declaration.
(WebCore::CSSMutableStyleDeclaration::setProperty):
* css/CSSMutableStyleDeclaration.h:
(WebCore::CSSMutableStyleDeclaration::clear): Removed this unused
method.
(WebCore::CSSMutableStyleDeclaration::setChanged): Made private.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30713
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Mon, 3 Mar 2008 18:44:12 +0000 (18:44 +0000)]
WebCore:
Reviewed by Adam.
- some "cleanup" on the path to removing WebCoreFrameBridge
* WebCore.base.exp: Exported some stuff we either already use or
I am about to use in an upcoming patch.
* WebCore.xcodeproj/project.pbxproj: Made FileChooser.h private rather
than project, for future use in WebKit.
* bindings/objc/WebScriptObject.mm: Removed some dead code.
* dom/ContainerNode.cpp: Added a now-needed or soon-to-be-needed include.
* editing/Editor.cpp: Ditto.
* editing/Editor.h: Removed many unneeded declarations and includes.
Removed the unused userVisibleString function.
* editing/EditorCommand.cpp:
(WebCore::executeYank): Added parameter for triggeringEvent, which no
longer has a default value.
(WebCore::executeYankAndSelect): Ditto.
* editing/mac/EditorMac.mm: Removed userVisibleString.
* page/mac/EventHandlerMac.mm:
(WebCore::isKeyboardOptionTab): Tweaked formattin.
* page/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge dragSourceMovedTo:]): Get window from -[NSView window]
rather than from the bridge. There's no special value in the bridge's window
method and we can use NSView directly.
(-[WebCoreFrameBridge dragSourceEndedAt:operation:]): Ditto.
* platform/graphics/mac/ImageMac.mm:
(WebCore::Image::loadPlatformResource): Use a new WebCoreBundleFinder class to
find the bundle rather than using WebCoreFrameBridge.
* platform/mac/ClipboardMac.mm: Added a now-needed or soon-to-be-needed include.
* platform/mac/PasteboardMac.mm: Ditto.
* rendering/RenderObject.h:
(WebCore::DashboardRegionValue::operator==): Fixed mistake where this wasn't
comparing the clip rectangle.
(WebCore::DashboardRegionValue::operator!=): Added. Needed by my future work.
WebKit/mac:
Reviewed by Adam.
- some "cleanup" on the path to removing WebCoreFrameBridge
* Storage/WebDatabaseManager.mm: Tweak includes.
* Storage/WebDatabaseTrackerClient.mm: Ditto.
* Storage/WebSecurityOrigin.mm: Ditto.
* Storage/WebSecurityOriginInternal.h: Ditto.
* WebView/WebFrame.mm:
(core): Changed to get rid of the requirement that WebKitEditableLinkBehavior exactly
match WebCore::EditableLinkBehavior.
* WebView/WebFrameInternal.h: Removed unused kit function.
* WebView/WebHTMLView.mm: Moved WebHTMLViewPrivate class in here.
* WebView/WebHTMLViewInternal.h: Moved WebHTMLVewPrivate class out of here.
* WebView/WebHTMLViewPrivate.h: Tweaked formatting and removed some unneeded declarations.
* WebView/WebPreferencesPrivate.h: Removed a no-longer-needed comment.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30712
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 3 Mar 2008 09:34:49 +0000 (09:34 +0000)]
Bug 17620: getImageData lies
http://bugs.webkit.org/show_bug.cgi?id=17620
Reviewed by Mark Rowe
Correct logic to actually iterate over the source row
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30711
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 3 Mar 2008 08:17:08 +0000 (08:17 +0000)]
Correct incorrect assertion
Reviewed by Mark Rowe
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30710
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Mon, 3 Mar 2008 05:34:58 +0000 (05:34 +0000)]
2008-03-02 Alp Toker <alp@atoker.com>
Another fix for non-database builds after changes in r30331.
Conditionalize a stopDatabases() call.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30709
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Mon, 3 Mar 2008 05:29:38 +0000 (05:29 +0000)]
Reviewed by Alp Toker.
Scrolling fixes. Implement page scrolling, initialize mouse wheel event variables, and remove duplicate event binding for TOP scrolling event.
http://bugs.webkit.org/show_bug.cgi?id=17643
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30708
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Mon, 3 Mar 2008 05:10:18 +0000 (05:10 +0000)]
2008-03-02 Brent Fulgham <bfulgham@gmail.com>
Reviewed by Alp Toker.
http://bugs.webkit.org/show_bug.cgi?id=17415
GTK Build (using autotools) on Mac OS (DarwinPorts) Fails
Add -lstdc++ to link flags for minidom program. This corrects
a build error for the GTK+ on Mac OS.
Add ICU_CPPFLAGS earlier in include path for WebCore
so that we find $(icu_cppflags)/unicode/utf8.h, rather than
the wtf/unicode/UTF8.h on case-insensitive file systems.
Remove some needless LIBS.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30707
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Mon, 3 Mar 2008 05:02:38 +0000 (05:02 +0000)]
2008-03-02 Alp Toker <alp@atoker.com>
Fix building without database support after changes in r30331.
* dom/Document.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30706
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Mon, 3 Mar 2008 03:16:05 +0000 (03:16 +0000)]
wx build fix for Windows after PageWin.cpp move.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30705
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Mon, 3 Mar 2008 02:02:28 +0000 (02:02 +0000)]
Reviewed by Dave Hyatt.
Gracefully handle a CSS rule containing an invalid value.
(Fixes http://bugs.webkit.org/show_bug.cgi?id=16898)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30704
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Sun, 2 Mar 2008 22:58:47 +0000 (22:58 +0000)]
2008-03-02 Alp Toker <alp@atoker.com>
Reviewed by Mark Rowe.
Improve the Cairo Path::isEmpty() function
Use cairo_has_current_point() where available.
* platform/graphics/cairo/PathCairo.cpp:
(WebCore::Path::isEmpty):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30703
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Sun, 2 Mar 2008 19:51:26 +0000 (19:51 +0000)]
2008-03-02 Alp Toker <alp@atoker.com>
Reviewed by Mark Rowe.
Split the WebKit GTK+ build out of the WebCore build and change the
shared object name to match the package name.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30702
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sun, 2 Mar 2008 07:08:59 +0000 (07:08 +0000)]
Update Xcode configuration to support building debug and release from the mysterious future.
Reviewed by Tim Hatcher.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30701
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Sun, 2 Mar 2008 06:55:44 +0000 (06:55 +0000)]
Bug 16954: Support putImageData
Reviewed by Sam Weinig.
Implement support for HTML5's putImageData for the CG port. All other ports
are currently just using stubs for the final blit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30700
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Sun, 2 Mar 2008 02:13:44 +0000 (02:13 +0000)]
Typo fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30699
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jhoneycutt@apple.com [Sun, 2 Mar 2008 02:02:38 +0000 (02:02 +0000)]
2008-03-01 Jon Honeycutt <jhoneycutt@apple.com>
Reviewed by Darin.
<rdar://problem/5772987> Crashing viewing page with two VLC plug-in
instances
The VLC Netscape plug-in crashes if more than one instance is created.
Added a quirk that disallows a plug-in from having more than one
instance and set this for the VLC plug-in.
In addition, we now sort plug-ins that handle the same MIME
type to choose the most appropriate one. This sorting first sorts by
whether a plug-in has an issue that should put it at the end of the
list, then whether it appears in a "preferred" plug-in directory.
* plugins/PluginQuirkSet.h: Added PluginQuirkDontAllowMultipleInstances.
* plugins/PluginDatabase.cpp:
(WebCore::PluginDatabase::preferredPluginCompare): Comparator for
sorting plug-ins; calls PluginPackage::compare().
(WebCore::PluginDatabase::pluginForMIMEType): Add all of the plug-ins
that handle this MIME type to a list, sort the list, and return the
first item.
(WebCore::PluginDatabase::MIMETypeForExtension): Add all of the plug-ins
that handle this extension to a list, sort the list, and return the MIME
type used by the plug-in at the beginning of the list.
* plugins/PluginDatabase.h:
* plugins/PluginPackage.h:
(WebCore::PluginPackage::version): Added; returns the module version.
* plugins/win/PluginDatabaseWin.cpp:
(WebCore::PluginDatabase::isPreferredPluginPath): Made static; removed
const.
* plugins/win/PluginPackageWin.cpp:
(WebCore::PluginPackage::compare): Sorts plug-ins with known issues to
the end, then plug-ins in preferred directories to the beginning, then
alphabetically by file name, numerically by version, and alphabetically
by parent directory.
(WebCore::PluginPackage::determineQuirks): Set the "don't allow multiple
instances" quirk for VLC.
(WebCore::PluginPackage::load): Return false if the plug-in library has
already been loaded and the "don't allow multiple instances" quirk is
set.
* platform/gtk/TemporaryLinkStubs.cpp:
(PluginPackage::compare): Added stub.
(PluginDatabase::IsPreferredPluginPath): Update the GTK stub.
* platform/qt/TemporaryLinkStubs.cpp:
(PluginPackage::compare): Added stub.
(PluginDatabase::IsPreferredPluginPath): Update the Qt stub.
* platform/wx/TemporaryLinkStubs.cpp:
(PluginPackage::compare): Added stub.
(PluginDatabase::IsPreferredPluginPath): Update the wx stub.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30698
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 1 Mar 2008 21:55:42 +0000 (21:55 +0000)]
Rubber-stamped by Mark Rowe.
Remove reference to the now non-existent bridge directory.
* WebCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30697
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sat, 1 Mar 2008 20:19:27 +0000 (20:19 +0000)]
WebCore:
Reviewed by Darin Adler.
Search the entire prototype chain when doing early prototype lookup in
the Window's getOwnPropertySlot method.
Makes fast/dom/Window/window-function-name-getter-precedence.html pass all tests.
* bindings/js/kjs_window.cpp:
(KJS::Window::getOwnPropertySlot):
LayoutTests:
Reviewed by Darin Adler.
Update test result.
* fast/dom/Window/window-function-name-getter-precedence-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30696
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Sat, 1 Mar 2008 13:46:29 +0000 (13:46 +0000)]
Reviewed by Oliver.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=17568 (SVGForeignObjectElement can't react to width/height SVG DOM changes)
As the bug title says, fix all dynamic update problems that occour with SVGForeignObjectElement.
Tests: svg/dynamic-updates/SVGForeignObjectElement-dom-height-attr.html
svg/dynamic-updates/SVGForeignObjectElement-dom-width-attr.html
svg/dynamic-updates/SVGForeignObjectElement-dom-x-attr.html
svg/dynamic-updates/SVGForeignObjectElement-dom-y-attr.html
svg/dynamic-updates/SVGForeignObjectElement-svgdom-height-prop.html
svg/dynamic-updates/SVGForeignObjectElement-svgdom-width-prop.html
svg/dynamic-updates/SVGForeignObjectElement-svgdom-x-prop.html
svg/dynamic-updates/SVGForeignObjectElement-svgdom-y-prop.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30695
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Sat, 1 Mar 2008 02:15:04 +0000 (02:15 +0000)]
Reviewed by build-fix karma
Bonehead mistake. Revert function to previous version for all non-Windows+CFNetwork platforms
* platform/network/ProtectionSpace.cpp:
(WebCore::ProtectionSpace::receivesCredentialSecurely): Make my previous change conditionally
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30692
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Sat, 1 Mar 2008 02:01:57 +0000 (02:01 +0000)]
Update Tiger version of WebKitSystemInterface to match r30690.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30691
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele@apple.com [Sat, 1 Mar 2008 01:56:30 +0000 (01:56 +0000)]
Reviewed by Mark.
Auto-generate image arrays.
* libWebKitSystemInterfaceLeopard.a:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30690
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Sat, 1 Mar 2008 01:50:32 +0000 (01:50 +0000)]
Reviewed by Darin
<rdar://problem/5771227> - Incorrect password handling text in credential sheet
* platform/network/ProtectionSpace.cpp:
(WebCore::ProtectionSpace::receivesCredentialSecurely): Call functional CFNetwork method to
get "secureness" of the auth challenge instead of figuring it out ourselves
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30689
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 1 Mar 2008 01:35:09 +0000 (01:35 +0000)]
Rubber-stamped by Sam Weinig.
- update test results following r30649
* svg/css/getComputedStyle-basic-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30688
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Sat, 1 Mar 2008 00:29:22 +0000 (00:29 +0000)]
2008-02-29 Brent Fulgham <bfulgham@gmail.com>
JavaScriptCore:
http://bugs.webkit.org/show_bug.cgi?id=17483
Implement scrollbars on Windows (Cairo)
Reviewed by Adam Roben.
* wtf/Platform.h:
WebCore:
http://bugs.webkit.org/show_bug.cgi?id=17483
Implement scrollbars on Windows (Cairo)
Reviewed by Adam Roben.
* platform/win/PlatfromScrollBarWin.cpp: Duplicate implementation
from PlatformScrollBarWinSafari.cpp, then modify to use the
native Windows theme engine. Use SOFT_LINK. Use platform
'GetSystemMetrics' call to decide size of scrollbars and buttons.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30687
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:14:22 +0000 (00:14 +0000)]
Delete an unused file
Rubberstamped by Brady.
* Interfaces/IWebScriptScope.idl: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30685
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:14:04 +0000 (00:14 +0000)]
Change WebPreferences to be backed by CFPreferences
Reviewed by Ada, Geoff, Steve, and Darin.
* WebPreferenceKeysPrivate.h:
* WebPreferences.cpp:
(WebPreferences::sharedStandardPreferences): Changed to call
setAutoSaves(TRUE) before calling load(). This ensures that the
preferences being migrated to CFPreferences are saved to disk.
(WebPreferences::valueForKey): Changed to return a RetainPtr to ensure
that the refcount is managed properly. Now attempts to retrieve a
value from CFPreferences before falling back to the default settings.
(WebPreferences::setValueForKey): Now saves the value in
CFPreferences if m_autoSaves is true.
(WebPreferences::stringValueForKey): Updated for valueForKey changes.
(WebPreferences::integerValueForKey): DItto.
(WebPreferences::boolValueForKey): Ditto.
(WebPreferences::floatValueForKey): Ditto.
(WebPreferences::save): Now simply calls CFPreferencesAppSynchronize.
(WebPreferences::load): Always initializes m_privatePrefs to an empty
CFMutableDictionary.
(WebPreferences::migrateWebKitPreferencesToCFPreferences): Migrates
preferences from our old custom plist to CFPreferences and then
deletes our custom plist, if the migration has never occurred before.
(WebPreferences::copyWebKitPreferencesToCFPreferences): Copies
preferences to CFPreferences. If we've never migrated the default
settings from Safari 3 Beta before, we omit them from this copying
procedure.
* WebPreferences.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30684
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:13:46 +0000 (00:13 +0000)]
Refactor value <-> CFNumber conversions into some helper functions
Reviewed by Jon.
* WebPreferences.cpp:
(preferencesPath): Changed to return a const String&.
(numberValueForPreferencesValue): Converts a value from preferences to
a native numeric type.
(cfNumber): Converts a native numeric value to a CFNumberRef.
(booleanValueForPreferencesValue): Converts a value from preferences
to a native boolean.
(WebPreferences::integerValueForKey): Changed to call
numberValueForPreferencesValue.
(WebPreferences::floatValueForKey): Ditto.
(WebPreferences::boolValueForKey): Changed to call
booleanValueForPreferencesValue.
(WebPreferences::setIntegerValue): Changed to call cfNumber.
(WebPreferences::setLongLongValue): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30683
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:13:29 +0000 (00:13 +0000)]
Add WebPreferences::setValueForKey
This is just a small refactoring of some duplicated logic into a
shared method.
Reviewed by Sam.
* WebPreferences.cpp:
(WebPreferences::setValueForKey): Added.
(WebPreferences::setStringValue): Call setValueForKey.
(WebPreferences::setIntegerValue): Ditto.
(WebPreferences::setBoolValue): Ditto.
(WebPreferences::setLongLongValue): Ditto.
* WebPreferences.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30682
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:13:10 +0000 (00:13 +0000)]
Remove WebPreferences' static members
s_defaultSettings is now a file-level static, and
s_standardPreferences has been removed completely (it wasn't being
used).
Reviewed by Sam.
* WebPreferences.cpp:
(WebPreferences::initializeDefaultSettings):
(WebPreferences::valueForKey):
(WebPreferences::migrateDefaultSettingsFromSafari3Beta):
(WebPreferences::removeValuesMatchingDefaultSettings):
* WebPreferences.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30681
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Sat, 1 Mar 2008 00:09:50 +0000 (00:09 +0000)]
Windows build fix
* WebCore.vcproj/WebCore.vcproj: Remove bridge/* from the include path
and the post-build event, and add page/win to each. Also let VS have
its way with the order of the files.
* page/win/PageWin.cpp: Copied from bridge/win/PageWin.cpp in r30673
* page/win/GlobalHistoryWin.cpp: Copied from
bridge/win/GlobalHistoryWin.cpp in r30673
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30680
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 29 Feb 2008 23:48:42 +0000 (23:48 +0000)]
Remove unused DebuggerImp::abort and DebuggerImp::aborted
Reviewed by Tim and Sam.
* kjs/function_object.cpp:
(KJS::FunctionObjectImp::construct):
* kjs/internal.h:
(KJS::DebuggerImp::DebuggerImp):
* kjs/nodes.cpp:
(KJS::Node::handleException):
(KJS::FunctionBodyNodeWithDebuggerHooks::execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30679
268f45cc-cd09-0410-ab3c-
d52691b4dbfc