mjs@apple.com [Fri, 26 Sep 2008 01:26:07 +0000 (01:26 +0000)]
2008-09-25 Maciej Stachowiak <mjs@apple.com>
Not reviewed.
- add some screenshots.
* blog-files/acid3-screenshot.png: Added.
* blog-files/acid3-timing-screenshot.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36920
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 26 Sep 2008 01:22:55 +0000 (01:22 +0000)]
2008-09-25 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21101
Fix the updating of the active state to not be dumb, so that viewless scrollbars repaint properly.
Reviewed by Tim Hatcher
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateFocusedAndActiveState]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36919
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Fri, 26 Sep 2008 00:53:18 +0000 (00:53 +0000)]
WebCore:
Fix bug: https://bugs.webkit.org/show_bug.cgi?id=21032
<rdar://problem/
6243032>
Reviewed by Dave Hyatt.
Test: fast/dom/attribute-downcast-right.html
Add isMappedAttribute function to Attribute for checking if an object
is an instance of MappedAttribute. Removed attributeItem,
getAttributeItem functions from NamedMappedAttrMap, and callers
expecting MappedAttribute have to check isMappedAttribute before
downcasting the return value to MappedAttribute.
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForElement):
* dom/Attribute.h:
(WebCore::Attribute::isMappedAttribute):
* dom/MappedAttribute.h:
(WebCore::MappedAttribute::isMappedAttribute):
* dom/NamedMappedAttrMap.cpp:
(WebCore::NamedMappedAttrMap::declCount):
(WebCore::NamedMappedAttrMap::mapsEquivalent):
* dom/NamedMappedAttrMap.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setInputType):
* svg/SVGForeignObjectElement.cpp:
(WebCore::addCSSPropertyAndNotifyAttributeMap):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::getPresentationAttribute):
LayoutTests:
Test for: https://bugs.webkit.org/show_bug.cgi?id=21032
<rdar://problem/
6243032>
Reviewed by Dave Hyatt.
The test crashes webkit if using Windows heap allocator.
* fast/dom/attribute-downcast-right-expected.txt: Added.
* fast/dom/attribute-downcast-right.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36918
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Fri, 26 Sep 2008 00:26:22 +0000 (00:26 +0000)]
Fix Gtk bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36917
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 23:13:01 +0000 (23:13 +0000)]
Fix Win bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36916
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 23:03:13 +0000 (23:03 +0000)]
Fix Win bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36915
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:52:03 +0000 (22:52 +0000)]
Fix Qt, Win, Gtk bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36914
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:47:53 +0000 (22:47 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36913
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:34:43 +0000 (22:34 +0000)]
Fix Win, Gtk, Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36912
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:30:03 +0000 (22:30 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36911
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:28:36 +0000 (22:28 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36910
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 22:25:22 +0000 (22:25 +0000)]
2008-09-25 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21120
Make visibleContentRect cross-platform. Note this does add new horizontal/verticalScrollbar accessors
to a bunch of platforms. This is a temporary evil until the scrollbars get made cross-platform (and I
didn't want to mix that change in with this patch).
Reviewed by Sam Weinig
* page/Frame.cpp:
(WebCore::Frame::markAllMatchesForText):
* page/FrameView.cpp:
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::windowClipRect):
(WebCore::FrameView::updateControlTints):
* platform/ScrollView.cpp:
(WebCore::ScrollView::visibleContentRect):
(WebCore::ScrollView::platformVisibleContentRect):
* platform/ScrollView.h:
(WebCore::ScrollView::visibleWidth):
(WebCore::ScrollView::visibleHeight):
* platform/gtk/ScrollViewGtk.cpp:
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
* platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
(WebCore::ScrollView::platformVisibleContentRect):
* platform/qt/ScrollViewQt.cpp:
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
* platform/win/ScrollViewWin.cpp:
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
* platform/wx/ScrollViewWx.cpp:
(WebCore::ScrollView::platformVisibleContentRect):
(WebCore::ScrollView::horizontalScrollbar):
(WebCore::ScrollView::verticalScrollbar):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::frameVisibleRect):
* rendering/RenderView.cpp:
(WebCore::RenderView::viewRect):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36909
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dsmith@webkit.org [Thu, 25 Sep 2008 20:55:31 +0000 (20:55 +0000)]
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Timothy Hatcher
https://bugs.webkit.org/show_bug.cgi?id=21052
Generalize id selector special case for querySelectorAll
By checking the element we get with getElementById against the selector, we can use the special case in many more circumstances.
Changes results on http://native.khan.mozilla.org
from
#title: 2ms
h1#title: 55ms
div #title: 55ms
to:
#title: 1ms
h1#title: 2ms
div #title: 5ms
* dom/Node.cpp:
(WebCore::Node::querySelector):
* dom/SelectorNodeList.cpp:
(WebCore::createSelectorNodeList):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36907
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 20:49:17 +0000 (20:49 +0000)]
2008-09-25 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21118
Make the concept of whether you can blit on scroll cross-platform on ScrollView.
Reviewed by Sam Weinig
* page/FrameView.cpp:
(WebCore::FrameView::clear):
(WebCore::FrameView::layout):
(WebCore::FrameView::setUseSlowRepaints):
(WebCore::FrameView::addSlowRepaintObject):
(WebCore::FrameView::removeSlowRepaintObject):
* platform/ScrollView.cpp:
(WebCore::ScrollView::init):
(WebCore::ScrollView::addChild):
(WebCore::ScrollView::removeChild):
(WebCore::ScrollView::setCanBlitOnScroll):
* platform/ScrollView.h:
(WebCore::ScrollView::canBlitOnScroll):
* platform/gtk/ScrollViewGtk.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
(WebCore::ScrollView::ScrollView):
* platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::platformAddChild):
(WebCore::ScrollView::platformRemoveChild):
(WebCore::ScrollView::platformSetCanBlitOnScroll):
* platform/qt/ScrollViewQt.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
(WebCore::ScrollView::ScrollView):
* platform/win/ScrollViewWin.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
(WebCore::ScrollView::ScrollView):
* platform/wx/ScrollViewWx.cpp:
(WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
(WebCore::ScrollView::ScrollView):
(WebCore::ScrollView::scrollBy):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36906
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 25 Sep 2008 20:29:57 +0000 (20:29 +0000)]
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
Bug 21109: Console should right-align urls
* page/inspector/Console.js: Re-order the message elements so that when
it overflows it doesn't get mixed in with the next message.
* page/inspector/inspector.css:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36905
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 20:15:44 +0000 (20:15 +0000)]
2008-09-25 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21113
Putting r36771 back in with a fix to the addPendingSheet check in CSSImportRule::insertedIntoParent.
Reviewed by Darin Adler
* css/CSSImportRule.cpp:
(WebCore::CSSImportRule::insertedIntoParent):
* css/CSSRule.cpp:
(WebCore::CSSRule::parentStyleSheet):
(WebCore::CSSRule::parentRule):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::CSSStyleSheet):
* css/CSSStyleSheet.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36904
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 25 Sep 2008 20:02:11 +0000 (20:02 +0000)]
2008-09-25 Darin Adler <darin@apple.com>
Reviewed by Adele Peterson.
- fix https://bugs.webkit.org/show_bug.cgi?id=21115
<rdar://problem/
6245773> REGRESSION (r34702): Safari no longer zips
bundled documents
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::formData): Use files() instead of value()
to get the path, since value() now returns just the basename.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36903
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Thu, 25 Sep 2008 18:37:09 +0000 (18:37 +0000)]
WebCore:
2008-09-25 Brady Eidson <beidson@apple.com>
Rubberstamped by Mark Rowe
Roll out 36771 as it caused <rdar://problem/
6246554>
"nytimes.com doesn't display after returning to it with back/forward"
* css/CSSImportRule.cpp:
(WebCore::CSSImportRule::insertedIntoParent):
* css/CSSRule.cpp:
(WebCore::CSSRule::parentStyleSheet):
(WebCore::CSSRule::parentRule):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::CSSStyleSheet):
(WebCore::CSSStyleSheet::docLoader):
* css/CSSStyleSheet.h:
(WebCore::CSSStyleSheet::doc):
LayoutTests:
2008-09-25 Brady Eidson <beidson@apple.com>
Rubberstamped by Mark Rowe
Roll out 36771 as it caused <rdar://problem/
6246554>
"nytimes.com doesn't display after returning to it with back/forward"
* fast/css/nested-rule-parent-sheet-expected.txt: Removed.
* fast/css/nested-rule-parent-sheet.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36902
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 25 Sep 2008 17:47:15 +0000 (17:47 +0000)]
Windows build fix
* WebCore.vcproj/WebCore.vcproj: Add ScrollView.cpp to the project.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36901
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 25 Sep 2008 17:27:37 +0000 (17:27 +0000)]
- Windows build fix
* platform/win/ScrollViewWin.cpp:
(WebCore::ScrollView::addChildPlatformWidget):
(WebCore::ScrollView::removeChildPlatformWidget):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36900
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 25 Sep 2008 17:24:22 +0000 (17:24 +0000)]
2008-09-25 Darin Adler <darin@apple.com>
* contact.html: Take a cut at making the role of webkitsdk-dev
clearer, specifying that it's Mac OS X specific and hosted at
Apple, not WebKit.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36899
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Thu, 25 Sep 2008 17:07:43 +0000 (17:07 +0000)]
Fixes a leak of ConsoleMessage seen when repeated console
messages occur.
Reviewed by Mark Rowe.
* page/InspectorController.cpp:
(WebCore::InspectorController::addConsoleMessage): Delete the repeat
since we don't add it to m_consoleMessages.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36898
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 25 Sep 2008 16:48:34 +0000 (16:48 +0000)]
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Dan Bernstein.
Bug 21105: XHRs logged in the console may show the wrong URL for the
source
- Get the url at the time of the send() and pass it on to the XHR.
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::send):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::didFinishLoading):
* xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::setLastSendURL):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36895
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 25 Sep 2008 16:04:20 +0000 (16:04 +0000)]
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff and Tim.
Bug 20322: XHRs logged in the console do not have line numbers
- Get the line number at the time of the send and pass it on to the XHR.
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::send):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore::XMLHttpRequest::didFinishLoading):
* xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::setLastSendLineNumber):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36894
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Thu, 25 Sep 2008 15:33:02 +0000 (15:33 +0000)]
2008-09-25 Eric Carlson <eric.carlson@apple.com>
Reviewed by Eric Seidel.
<rdar://problem/
6171047> HTMLMediaElement "begin" event is now "loadstart"
https://bugs.webkit.org/show_bug.cgi?id=21003
* dom/EventNames.h: remove "begin" event
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::load): Post "loadstart" event instead of "begin"
2008-09-25 Eric Carlson <eric.carlson@apple.com>
Reviewed by Eric Seidel.
<rdar://problem/
6171047> HTMLMediaElement "begin" event is now "loadstart"
https://bugs.webkit.org/show_bug.cgi?id=21003
Update media layout test results for progress event name change from "begin" to "loadstart"
* media/audio-constructor-expected.txt:
* media/audio-constructor-src-expected.txt:
* media/audio-constructor-src.html:
* media/audio-constructor.html:
* media/progress-event-expected.txt:
* media/progress-event-total-expected.txt:
* media/progress-event-total.html:
* media/progress-event.html:
* media/video-error-abort-expected.txt:
* media/video-error-abort.html:
* media/video-load-networkState-expected.txt:
* media/video-load-networkState.html:
* media/video-load-readyState-expected.txt:
* media/video-load-readyState.html:
* media/video-pause-empty-events-expected.txt:
* media/video-pause-empty-events.html:
* media/video-play-empty-events-expected.txt:
* media/video-play-empty-events.html:
* media/video-source-expected.txt:
* media/video-source-media-expected.txt:
* media/video-source-media.html:
* media/video-source-type-expected.txt:
* media/video-source-type-params-expected.txt:
* media/video-source-type-params.html:
* media/video-source-type.html:
* media/video-source.html:
* media/video-src-change-expected.txt:
* media/video-src-change.html:
* media/video-src-expected.txt:
* media/video-src-remove-expected.txt:
* media/video-src-remove.html:
* media/video-src-set-expected.txt:
* media/video-src-set.html:
* media/video-src-source-expected.txt:
* media/video-src-source.html:
* media/video-src.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36893
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 25 Sep 2008 11:30:02 +0000 (11:30 +0000)]
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=21097
Calling a MessageChannel constructor from a destroyed document results in a crash
Test: fast/events/message-port-constructor-for-deleted-document.html
* bindings/js/JSMessageChannelConstructor.cpp:
(WebCore::JSMessageChannelConstructor::construct):
* bindings/js/JSMessageChannelConstructor.h:
Made m_document a RefPtr.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36892
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 25 Sep 2008 10:15:11 +0000 (10:15 +0000)]
Reviewed by Sam Weinig, Anders Carlsson, and (unofficially) Adam Barth.
https://bugs.webkit.org/show_bug.cgi?id=20879
Implement HTML5 channel messaging
Tests: fast/events/message-channel-gc.html
fast/events/message-port-deleted-document.html
fast/events/message-port-deleted-frame.html
fast/events/message-port-inactive-document.html
fast/events/message-port.html
http/tests/security/MessagePort/event-listener-context.html
* Configurations/WebCore.xcconfig:
Removed unused ENABLE_CROSS_DOCUMENT_MESSAGING macro.
* DerivedSources.make:
Added MessageChannel and MessagePort.
* WebCore.pro: Made MessageEvent compilation unconditional, as it could not possibly be
turmed off anyway. Added new files.
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
Added new files.
* bindings/js/JSDOMWindowBase.h:
* bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty):
Added suport for window.MessageChannel constructor.
* bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::postMessage):
* page/DOMWindow.h:
* page/DOMWindow.idl:
Added support for three-argument postMessage (that posts a MessagePort).
* dom/EventTarget.cpp:
(WebCore::EventTarget::toMessagePort):
* dom/EventTarget.h:
* bindings/js/JSEventTargetBase.cpp: (WebCore::toJS): Added MessagePort as yet another
EventTarget variant.
* bindings/js/JSMessageChannelConstructor.h:
* bindings/js/JSMessageChannelConstructor.cpp: Added a custom constructor, so that it could
take a browsing context (document) parameter.
* bindings/js/JSMessageChannelCustom.cpp: Added.
(WebCore::JSMessageChannel::mark): JSMessageChannel uses a custom mark function to mark
port1 and port2 that it owns.
* bindings/js/JSMessagePortCustom.cpp: Added.
(WebCore::JSMessagePort::startConversation):
(WebCore::JSMessagePort::addEventListener):
(WebCore::JSMessagePort::removeEventListener):
(WebCore::JSMessagePort::dispatchEvent):
(WebCore::JSMessagePort::setOnmessage):
(WebCore::JSMessagePort::onmessage):
(WebCore::JSMessagePort::setOnclose):
(WebCore::JSMessagePort::onclose):
(WebCore::JSMessagePort::mark):
* dom/MessagePort.cpp: Added.
* dom/MessagePort.h: Added.
* dom/MessagePort.idl: Added.
Added a MessagePort implementation. Currently, it is not thread-safe at all, and only works
with Documents as contexts, but in the future, it will be used for communication with worker
threads.
* bindings/objc/DOMInternal.h: Include "DOMMessagePortInternal.h". The new APIs do not
really have Obj-C bindings, as they are far from being final, but a MessagePort stub is
needed for MessageEvent.
* bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h for MessagePort happiness.
* dom/Document.cpp:
(WebCore::MessagePortTimer::MessagePortTimer):
(WebCore::MessagePortTimer::fired):
(WebCore::Document::processMessagePortMessagesSoon):
(WebCore::Document::~Document):
(WebCore::Document::dispatchMessagePortEvents):
(WebCore::Document::createdMessagePort):
(WebCore::Document::destroyedMessagePort):
* dom/Document.h:
Document keeps track of all MessagePort objects that were created when it was fully active
in its context.
* dom/EventNames.h: Added closeEvent.
* dom/MessageChannel.cpp: Added.
(WebCore::MessageChannel::MessageChannel):
(WebCore::MessageChannel::~MessageChannel):
* dom/MessageChannel.h: Added.
(WebCore::MessageChannel::create):
(WebCore::MessageChannel::port1):
(WebCore::MessageChannel::port2):
* dom/MessageChannel.idl: Added.
Addded JSMessageChannel implementation.
* dom/MessageEvent.cpp:
(WebCore::MessageEvent::MessageEvent):
(WebCore::MessageEvent::initMessageEvent):
* dom/MessageEvent.h:
(WebCore::MessageEvent::create):
(WebCore::MessageEvent::messagePort):
* dom/MessageEvent.idl:
MessageEvent has a MessagePort member now, making it possible to pass ports across
documents.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36891
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dsmith@webkit.org [Thu, 25 Sep 2008 08:57:31 +0000 (08:57 +0000)]
WebCore:
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Eric Seidel
fix https://bugs.webkit.org/show_bug.cgi?id=21091
Regression: querySelector matches tag names case sensitively
Tests: fast/dom/SelectorAPI/caseTag.html
fast/dom/SelectorAPI/caseTagX.xhtml
* css/CSSParser.cpp:
(WebCore::CSSParser::parseSelector): Add a Document argument, since tag case sensitivity is different for HTML documents
* css/CSSParser.h:
* dom/Node.cpp:
(WebCore::Node::querySelector):
(WebCore::Node::querySelectorAll):
LayoutTests:
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Eric Seidel
Tests for https://bugs.webkit.org/show_bug.cgi?id=21091
Regression: querySelector matches tag names case sensitively
* ChangeLog:
* fast/dom/SelectorAPI/caseTag-expected.txt: Added.
* fast/dom/SelectorAPI/caseTag.html: Added.
* fast/dom/SelectorAPI/caseTagX-expected.txt: Added.
* fast/dom/SelectorAPI/caseTagX.xhtml: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36890
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 08:23:02 +0000 (08:23 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36889
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 08:09:27 +0000 (08:09 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36888
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 07:57:37 +0000 (07:57 +0000)]
Fix Qt bustage.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36887
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 25 Sep 2008 07:38:56 +0000 (07:38 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21084
Make the m_children member of ScrollView cross-platform. Consolidate children add/remove
functionality. Add platform stubs for connecting/disconnecting the platform widgets.
Reviewed by Sam Weinig
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* platform/ScrollView.h:
(WebCore::ScrollView::children):
* platform/Widget.h:
* platform/gtk/ScrollViewGtk.cpp:
(WebCore::ScrollView::addChildPlatformWidget):
(WebCore::ScrollView::removeChildPlatformWidget):
(WebCore::ScrollView::geometryChanged):
* platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::addChildPlatformWidget):
(WebCore::ScrollView::removeChildPlatformWidget):
* platform/qt/ScrollViewQt.cpp:
(WebCore::ScrollView::geometryChanged):
(WebCore::ScrollView::addChildPlatformWidget):
(WebCore::ScrollView::removeChildPlatformWidget):
* platform/win/ScrollViewWin.cpp:
(WebCore::ScrollView::geometryChanged):
(WebCore::ScrollView::setParentVisible):
(WebCore::ScrollView::show):
(WebCore::ScrollView::hide):
* platform/wx/ScrollViewWx.cpp:
(WebCore::ScrollView::addChildPlatformWidget):
(WebCore::ScrollView::removeChildPlatformWidget):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36886
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 25 Sep 2008 07:16:05 +0000 (07:16 +0000)]
Reviewed by Dave Hyatt.
- fix https://bugs.webkit.org/show_bug.cgi?id=21024
<rdar://problem/
6240821> Scrollbar not painted until hovered
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidgetGeometry): Replaced resizeWidget with
this method, which sets both the location and the size.
(WebCore::RenderWidget::setWidget): Replaced the call to resizeWidget
with a call to the new method setWidgetGeometry. Positioning the
widget correctly ensures that the scroll bars invalidate correctly when
they are created and resized.
* rendering/RenderWidget.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36885
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Thu, 25 Sep 2008 02:46:09 +0000 (02:46 +0000)]
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Move most of the return code back into the callee, now that the callee
doesn't have to calculate anything dynamically.
11.5% speedup on empty function call benchmark.
SunSpider says 0.3% faster. SunSpider --v8 says no change.
* VM/CTI.cpp:
(JSC::CTI::compileOpCall):
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompileSlowCases):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36882
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Thu, 25 Sep 2008 01:10:17 +0000 (01:10 +0000)]
2008-09-24 Matt Lilek <webkit@mattlilek.com>
Reviewed by Darin Adler.
Bug 20999: Inspector hover to select does not work properly on Windows
https://bugs.webkit.org/show_bug.cgi?id=20999
<rdar://problem/
6236524>
* WebNodeHighlight.cpp:
(WebNodeHighlight::show):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36881
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 25 Sep 2008 01:08:00 +0000 (01:08 +0000)]
2008-09-24 Darin Adler <darin@apple.com>
Reviewed by Dan Bernstein.
- https://bugs.webkit.org/show_bug.cgi?id=21079
<rdar://problem/
6203938> Disallow embedding Safari-generated pages
(e.g bookmarks collection) in subframes
* DefaultDelegates/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
Use the new +[WebView _canHandleRequest:forMainFrame:] so we can give
a different answer for the main frame and subframes.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::canHandleRequest): Ditto.
* WebView/WebView.mm:
(+[WebView _canHandleRequest:forMainFrame:]): Added forMainFrame. Only look
for scheme-specific representations for the main frame, not subframes.
(+[WebView _canHandleRequest:]): Give answer for main frame -- calls the
method above with YES for main frame.
* WebView/WebViewInternal.h: Added _canHandleRequest:forMainFrame:.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36880
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 25 Sep 2008 00:53:57 +0000 (00:53 +0000)]
..:
2008-09-24 Darin Adler <darin@apple.com>
* StringsNotToBeLocalized.txt: Updated for recent changes.
../win:
2008-09-24 Darin Adler <darin@apple.com>
* English.lproj/Localizable.strings: Updated for recent changes.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36879
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 25 Sep 2008 00:50:05 +0000 (00:50 +0000)]
Rubber-stamped by Sam Weinig.
- create a "style" subfolder under "rendering" and move style files to that folder
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36878
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Thu, 25 Sep 2008 00:39:11 +0000 (00:39 +0000)]
JavaScriptCore:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Remove staticFunctionGetter. There is only one remaining user of
staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
* JavaScriptCore.exp:
* kjs/lookup.cpp:
* kjs/lookup.h:
WebCore:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Remove staticFunctionGetter. There is only one remaining user of
staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::getOwnPropertySlot):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36877
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Thu, 25 Sep 2008 00:26:38 +0000 (00:26 +0000)]
2008-09-24 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- inline JIT fast case of op_neq
- remove extra level of function call indirection from slow cases of eq and neq
1% speedup on Richards
* VM/CTI.cpp:
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompileSlowCases):
* VM/Machine.cpp:
(JSC::Machine::privateExecute):
(JSC::Machine::cti_op_eq):
(JSC::Machine::cti_op_neq):
* kjs/operations.cpp:
(JSC::equal):
(JSC::equalSlowCase):
* kjs/operations.h:
(JSC::equalSlowCaseInline):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36876
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Thu, 25 Sep 2008 00:07:29 +0000 (00:07 +0000)]
JavaScriptCore:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/
6243534>
Crash below Function.apply when using a runtime array as the argument list
Test: plugins/bindings-array-apply-crash.html
* kjs/FunctionPrototype.cpp:
(JSC::functionProtoFuncApply): Revert to the slow case if the object inherits from
JSArray (via ClassInfo) but is not a JSArray.
WebKitTools:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/
6243534>
Crash below Function.apply when using a runtime array as the argument list
Add method to ObjCController to return a runtime array.
* DumpRenderTree/mac/ObjCController.m:
(+[ObjCController isSelectorExcludedFromWebScript:]):
(+[ObjCController webScriptNameForSelector:]):
(-[ObjCController testArray]):
LayoutTests:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Test for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/
6243534>
Crash below Function.apply when using a runtime array as the argument list
* platform/mac/plugins/bindings-array-apply-crash-expected.txt: Added.
* platform/mac/plugins/bindings-array-apply-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36875
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 24 Sep 2008 23:40:29 +0000 (23:40 +0000)]
WebCore:
2008-09-24 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Dan Bernstein.
Test: editing/spelling/inline_spelling_markers.html
- https://bugs.webkit.org/show_bug.cgi?id=20092
Spelling markers positioned incorrectly in RTL text
Measure spelling markers with selectionRectForText() to fix RTL.
This patch also fixes hit-testing for spelling marker tool tips,
which used to work only on the first line.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
LayoutTests:
2008-09-24 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Dan Bernstein.
- https://bugs.webkit.org/show_bug.cgi?id=20092
Spelling markers positioned incorrectly in RTL text
* editing/spelling/inline_spelling_markers.html: Added.
* platform/mac/editing/spelling/inline_spelling_markers-expected.checksum: Added.
* platform/mac/editing/spelling/inline_spelling_markers-expected.png: Added.
* platform/mac/editing/spelling/inline_spelling_markers-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36874
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Wed, 24 Sep 2008 22:26:27 +0000 (22:26 +0000)]
Removed a stray line from a recent ChangeLog entry.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36873
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 24 Sep 2008 22:24:00 +0000 (22:24 +0000)]
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Style change.
* kjs/nodes.cpp:
(JSC::statementListEmitCode):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36872
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 24 Sep 2008 22:19:05 +0000 (22:19 +0000)]
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff.
Bug 21031: Breakpoints in the condition of loops only breaks the first
time
- Now when setting breakpoints in the condition of a loop (for, while,
for in, and do while) will successfully break each time throught the
loop.
- For 'for' loops we need a little more complicated behavior that cannot
be accomplished without some more significant changes:
https://bugs.webkit.org/show_bug.cgi?id=21073
* kjs/nodes.cpp:
(JSC::statementListEmitCode): We don't want to blindly emit a debug hook
at the first line of loops, instead let the loop emit the debug hooks.
(JSC::DoWhileNode::emitCode):
(JSC::WhileNode::emitCode):
(JSC::ForNode::emitCode):
(JSC::ForInNode::emitCode):
* kjs/nodes.h:
(JSC::StatementNode::):
(JSC::DoWhileNode::):
(JSC::WhileNode::):
(JSC::ForInNode::):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36871
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Wed, 24 Sep 2008 21:48:14 +0000 (21:48 +0000)]
2008-09-24 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
Speculative build fix.
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::supportsPressAction):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36870
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 21:45:19 +0000 (21:45 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=21074
Make sure the viewless scrollbar knows how to paint properly when transformed.
Reviewed by Sam Weinig
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
(WebCore::ScrollbarThemeMac::paint):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36869
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 21:28:08 +0000 (21:28 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
Make sure the viewless scrollbar knows how to paint properly when transformed.
Reviewed by Sam Weinig
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
(WebCore::ScrollbarThemeMac::paint):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36868
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 21:18:24 +0000 (21:18 +0000)]
Add new screenshots of the Web Inspector's Scope Variables pane.
Not reviewed.
* blog-files/inspector-closure-scope.png: Added.
* blog-files/inspector-event-scope.png: Added.
* blog-files/inspector-with-scope.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36867
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 24 Sep 2008 21:17:14 +0000 (21:17 +0000)]
Not reviewed. Try to fix win build.
Add missing ChangeLog entry from last commit.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36866
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Wed, 24 Sep 2008 21:13:47 +0000 (21:13 +0000)]
Remove stray characters Maciej pointed out in log.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36865
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 24 Sep 2008 21:08:23 +0000 (21:08 +0000)]
2008-09-24 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dave Hyatt
Wrap up dirtying the z-order list of the stacking context
RenderLayer into a method.
https://bugs.webkit.org/show_bug.cgi?id=21072
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setHasVisibleContent):
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::dirtyStackingContextZOrderLists):
(WebCore::RenderLayer::styleChanged):
* rendering/RenderLayer.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::setStyle):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36864
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 20:38:55 +0000 (20:38 +0000)]
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Fixed <rdar://problem/
5605532> Need a SPI for telling JS the size of
the objects it retains
* API/JSBase.h: Filled in some missing function names.
* API/tests/testapi.c: Test the new SPI a little.
* API/JSSPI.cpp: Add the new SPI.
* API/JSSPI.h: Add the new SPI.
* JavaScriptCore.exp: Add the new SPI.
* JavaScriptCore.xcodeproj/project.pbxproj: Add the new SPI.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36863
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 20:37:14 +0000 (20:37 +0000)]
Add another screenshot of the Web Inspector.
Not reviewed.
* blog-files/inspector-disabling-properties.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36862
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 24 Sep 2008 20:22:23 +0000 (20:22 +0000)]
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
Bug 21070: REGRESSION Repeated messages with arguments are not repeated
or displayed multiple times
- The Insepctor Controller was comparing JSValue pointers so thought the
message was not a repeat, but the JS of the inspector compared the
strings and so knew it was the same message and so overwrote the old
message.
* page/InspectorController.cpp:
(WebCore::ConsoleMessage::isEqual):
(WebCore::InspectorController::addMessageToConsole):
(WebCore::InspectorController::addConsoleMessage):
(WebCore::InspectorController::startGroup):
(WebCore::InspectorController::endGroup):
* page/InspectorController.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36861
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 20:19:26 +0000 (20:19 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
arrow placement preference and the thumb jump preference).
Reviewed by Adam Roben
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::Scrollbar):
(WebCore::Scrollbar::~Scrollbar):
* platform/ScrollbarTheme.h:
(WebCore::ScrollbarTheme::registerScrollbar):
(WebCore::ScrollbarTheme::unregisterScrollbar):
* platform/mac/ScrollbarThemeMac.h:
* platform/mac/ScrollbarThemeMac.mm:
(+[ScrollbarPrefsObserver appearancePrefsChanged:]):
(+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
(+[ScrollbarPrefsObserver registerAsObserver]):
(WebCore::ScrollbarThemeMac::registerScrollbar):
(WebCore::ScrollbarThemeMac::unregisterScrollbar):
(WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
(WebCore::ScrollbarThemeMac::preferencesChanged):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36860
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 20:13:05 +0000 (20:13 +0000)]
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
* API/JSBase.h: Filled in some missing function names.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36859
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 24 Sep 2008 20:06:58 +0000 (20:06 +0000)]
Reviewed by Oliver.
Add ContainerNodeAlgorithms.h, as central place to share algorithms
operating on TreeShared-derived classes with a Node-style interface.
This allows SVGElementInstance & ContainerNode to share code.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36858
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 19:50:43 +0000 (19:50 +0000)]
Add new screenshots of the Web Inspector.
Not reviewed.
* blog-files/inspector-console-autocomplete.png: Added.
* blog-files/inspector-databases-panel-query-view.png: Added.
* blog-files/inspector-databases-panel.png: Added.
* blog-files/inspector-elements-panel.png: Added.
* blog-files/inspector-numeric-style-stepping.gif: Added.
* blog-files/inspector-profiles-panel.png: Added.
* blog-files/inspector-resources-panel.png: Added.
* blog-files/inspector-scripts-panel.png: Added.
* blog-files/inspector-status-bar-with-errors.png: Added.
* blog-files/inspector-toolbar.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36857
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Wed, 24 Sep 2008 19:23:54 +0000 (19:23 +0000)]
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=20557
getScreenCTM() returns wrong values
Use the absolute position of the svg root when
determining the screen ctm.
Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36856
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 18:26:51 +0000 (18:26 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
Turn off support for CSS variables.
* ChangeLog:
* css/CSSParser.cpp:
(WebCore::CSSParser::createVariablesRule):
(WebCore::CSSParser::addVariable):
(WebCore::CSSParser::addVariableDeclarationBlock):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36855
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 18:15:15 +0000 (18:15 +0000)]
2008-09-24 David Hyatt <hyatt@apple.com>
Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
* css/CSSGrammar.y:
* css/CSSParserValues.cpp:
(WebCore::CSSParserValue::isVariable):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::cleanup):
(WebCore::CSSPrimitiveValue::getStringValue):
(WebCore::CSSPrimitiveValue::cssText):
(WebCore::CSSPrimitiveValue::parserValue):
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::):
(WebCore::CSSPrimitiveValue::isVariable):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36854
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 17:54:10 +0000 (17:54 +0000)]
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Cameron Zwarich.
Fixed https://bugs.webkit.org/show_bug.cgi?id=21057
Crash in RegisterID::deref() running fast/canvas/canvas-putImageData.html
* VM/CodeGenerator.h: Changed declaration order to ensure the
m_lastConstant, which is a RefPtr that points into m_calleeRegisters,
has its destructor called before the destructor for m_calleeRegisters.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36853
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 17:40:16 +0000 (17:40 +0000)]
* demos/drosera/demo.js: Add some console.profile() calls.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36852
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Wed, 24 Sep 2008 17:02:14 +0000 (17:02 +0000)]
2008-09-24 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
- https://bugs.webkit.org/show_bug.cgi?id=21047
speed up ret_activation with inlining
About 1% on v8-raytrace.
* JavaScriptCore.exp: Removed JSVariableObject::setRegisters.
* kjs/JSActivation.cpp: Moved copyRegisters to the header to make it inline.
* kjs/JSActivation.h:
(JSC::JSActivation::copyRegisters): Moved here. Also removed the registerArraySize
argument to setRegisters, since the object doesn't need to store the number of
registers.
* kjs/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset): Removed unnecessary clearing left over from when we
used this on objects that weren't brand new. These days, this function is really
just part of the constructor.
* kjs/JSGlobalObject.h: Added registerArraySize to JSGlobalObjectData, since
JSVariableObjectData no longer needs it. Added a setRegisters override here
that handles storing the size.
* kjs/JSStaticScopeObject.h: Removed code to set registerArraySize, since it
no longer exists.
* kjs/JSVariableObject.cpp: Moved copyRegisterArray and setRegisters to the
header to make them inline.
* kjs/JSVariableObject.h: Removed registerArraySize from JSVariableObjectData,
since it was only used for the global object.
(JSC::JSVariableObject::copyRegisterArray): Moved here ot make it inline.
(JSC::JSVariableObject::setRegisters): Moved here to make it inline. Also
removed the code to set registerArraySize and changed an if statement into
an assert to save an unnnecessary branch.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36851
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 24 Sep 2008 16:39:55 +0000 (16:39 +0000)]
Added bug URLs for r36001
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36850
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 16:23:17 +0000 (16:23 +0000)]
Fixes a regression where the "incorrect MIME-type" warning would not
show up correctly in the Console or the resources sidebar.
Reviewed by Kevin McCullough.
* page/inspector/Resource.js:
(WebInspector.Resource.prototype._addTip): Add the repeat count argument
to the WebInspector.ConsoleMessage constructor call.
(WebInspector.Resource.prototype._checkWarning): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36849
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Wed, 24 Sep 2008 13:47:06 +0000 (13:47 +0000)]
2008-09-23 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Remove deprecated JS Qt bindings object call/construct code and fix autotests
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36848
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Wed, 24 Sep 2008 08:11:35 +0000 (08:11 +0000)]
2008-09-24 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- inline PropertyMap::getOffset to speed up polymorphic lookups
~1.5% speedup on v8 benchmark
no effect on SunSpider
* JavaScriptCore.exp:
* kjs/PropertyMap.cpp:
* kjs/PropertyMap.h:
(JSC::PropertyMap::getOffset):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36847
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Wed, 24 Sep 2008 07:43:03 +0000 (07:43 +0000)]
2008-09-24 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp Toker.
https://bugs.webkit.org/show_bug.cgi?id=20992
Build fails on GTK+ Mac OS
* wtf/ThreadingGtk.cpp: Remove platform ifdef as suggested by
Richard Hult.
(WTF::initializeThreading):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36846
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Wed, 24 Sep 2008 07:42:51 +0000 (07:42 +0000)]
2008-09-23 Richard Hult <richard@imendio.com>
Reviewed by Alp Toker. Landed by Jan Alonzo.
http://bugs.webkit.org/show_bug.cgi?id=20582
[Gtk] Link error on Mac OS X
* GNUmakefile.am: Only use the -version-script flag for the gnu
linker.
* configure.ac: Check for GNU OSes.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36845
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jmalonzo@webkit.org [Wed, 24 Sep 2008 07:42:39 +0000 (07:42 +0000)]
2008-09-23 Julien Chaffraix <jchaffraix@pleyo.com>
Reviewed by Alp Toker. Landed by Jan Alonzo.
Bug 20883: [CURL] Add deferred loading
https://bugs.webkit.org/show_bug.cgi?id=20883
Implement deferred loading for the libcURL backend using curl_easy_pause.
As the method was introduced in version 7.18.0, all the code checks for libcURL
version.
* platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::setDefersLoading):
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::writeCallback): Add an assertion that deferred loading is not
activated.
(WebCore::headerCallback): Ditto.
(WebCore::readCallback): Ditto.
(WebCore::ResourceHandleManager::dispatchSynchronousJob): Force
defersLoading to be false in order to avoid triggering an assertion.
(WebCore::ResourceHandleManager::initializeHandle): If deferred loading is
activated, pause the easy handle.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36844
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Wed, 24 Sep 2008 07:32:23 +0000 (07:32 +0000)]
Bug 19968: Slow Script at www.huffingtonpost.com
<https://bugs.webkit.org/show_bug.cgi?id=19968>
Reviewed by Maciej Stachowiak
Finally found the cause of this accursed issue. It is triggered
by synchronous creation of a new global object from JS. The new
global object resets the timer state in this execution group's
Machine, taking timerCheckCount to 0. Then when JS returns the
timerCheckCount is decremented making it non-zero. The next time
we execute JS we will start the timeout counter, however the non-zero
timeoutCheckCount means we don't reset the timer information. This
means that the timeout check is now checking the cumulative time
since the creation of the global object rather than the time since
JS was last entered. At this point the slow script dialog is guaranteed
to eventually be displayed incorrectly unless a page is loaded
asynchronously (which will reset everything into a sane state).
The fix for this is rather trivial -- the JSGlobalObject constructor
should not be resetting the machine timer state.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36843
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 06:44:11 +0000 (06:44 +0000)]
JavaScriptCore:
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed https://bugs.webkit.org/show_bug.cgi?id=21038 | <rdar://problem/
6240812>
Uncaught exceptions in regex replace callbacks crash webkit
This was a combination of two problems:
(1) the replace function would continue execution after an exception
had been thrown.
(2) In some cases, the Machine would return 0 in the case of an exception,
despite the fact that a few clients dereference the Machine's return
value without first checking for an exception.
* VM/Machine.cpp:
(JSC::Machine::execute):
^ Return jsNull() instead of 0 in the case of an exception, since some
clients depend on using our return value.
^ ASSERT that execution does not continue after an exception has been
thrown, to help catch problems like this in the future.
* kjs/StringPrototype.cpp:
(JSC::stringProtoFuncReplace):
^ Stop execution if an exception has been thrown.
LayoutTests:
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Test for https://bugs.webkit.org/show_bug.cgi?id=21038
Uncaught exceptions in regex replace callbacks crash webkit
* fast/js/string-replace-exception-crash-expected.txt: Added.
* fast/js/string-replace-exception-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36842
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 05:49:25 +0000 (05:49 +0000)]
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Try to fix the windows build.
* VM/CTI.cpp:
(JSC::CTI::compileOpCall):
(JSC::CTI::privateCompileMainPass):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36841
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Wed, 24 Sep 2008 03:36:40 +0000 (03:36 +0000)]
2008-09-23 Alp Toker <alp@nuanti.com>
Build fix.
* VM/CTI.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36840
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Wed, 24 Sep 2008 03:24:43 +0000 (03:24 +0000)]
2008-09-23 Matt Lilek <webkit@mattlilek.com>
Reviewed by Tim Hatcher.
Inspector search field style tweaks.
* page/inspector/inspector.css:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36839
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 24 Sep 2008 02:23:24 +0000 (02:23 +0000)]
Reviewed by Eric.
Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
Fix missing negation in EventTargetNode::insertedIntoDocument.
Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
Remove code, that wasn't supposed to go in in dispatchGenericEvent().
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36838
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:44 +0000 (02:08 +0000)]
Adds search support to the Profiles panel.
The Profiles panel supports a few types of queries:
* Standard string matching for function names and file URLs.
* Greater than and less than search for numeric columns.
So a query of ">24" will match all rows that have calls
greater than 24. Or "<=42" will match all 42 or less.
* Percent and time units. Adding a unit of "s", "ms" or "%"
is supported and will match only the Self and Total columns.
So a query of ">1.25s" will match all rows that took longer
than 1.25 seconds.
Reviewed by Oliver Hunt.
* page/inspector/ProfileView.js:
(WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
it will start at the first result.
(WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file.
(WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted
data grid nodes.
(WebInspector.ProfileView.prototype.performSearch): Search the profile nodes.
(WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult.
(WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto.
(WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto.
(WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto.
(WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says.
(WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto.
(WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node.
Expand all the ancestors first so the profile node will have a DataGridNode.
(WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree.
(WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that
have search matches.
* page/inspector/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
(WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile.
(WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view.
(WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed.
(WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView to visibleView.
(WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views.
(WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches.
(WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches.
(WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
* page/inspector/inspector.css: New style rules for the cell highlight color.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36837
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:39 +0000 (02:08 +0000)]
Adds search support to the Resources and Scripts panels.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* page/inspector/Images/searchSmallBlue.png: Added.
* page/inspector/Images/searchSmallBrightBlue.png: Added.
* page/inspector/Images/searchSmallGray.png: Added.
* page/inspector/Images/searchSmallWhite.png: Added.
* page/inspector/ResourceView.js:
(WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views"
or "script-resource-views" since one might not be created yet.
* page/inspector/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that
are not this panel's current visible view. This can happen when a ResourceView is
visible in the Scripts panel then switched to the this panel.
(WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the
visibleView first.
(WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function
that uses the current graph search function. So cycling through results will be in the order
things appear in the sidebar.
(WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the
resource's sidebar tree element.
(WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles
in the sidebar. Calls the Panel prototype's searchCanceled.
(WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles
in the sidebar. Calls the Panel prototype's performSearch.
(WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
(WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings
if there is a current search query.
(WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
(WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto.
(WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view.
(WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content.
(WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class.
(WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
* page/inspector/ScriptView.js:
(WebInspector.ScriptView): Set _sourceFrameSetup to flase.
(WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
it will start at the first result.
(WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax
highlighting complete".
(WebInspector.ScriptView.prototype): Share many methods with SourceView.
* page/inspector/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this
This can happen when a ResourceView is visible in the Resources panel then switched to the this panel.
(WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first.
(WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
(WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view.
(WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
* page/inspector/SourceFrame.js:
(WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
* page/inspector/SourceView.js:
(WebInspector.SourceView.prototype.hide):
(WebInspector.SourceView.prototype.detach):
(WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file.
(WebInspector.SourceView.prototype._addBreakpoint): Ditto.
(WebInspector.SourceView.prototype.searchCanceled): Delete search properties.
(WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise
store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished.
(WebInspector.SourceView.prototype.jumpToFirstSearchResult):
(WebInspector.SourceView.prototype.jumpToLastSearchResult):
(WebInspector.SourceView.prototype.jumpToNextSearchResult):
(WebInspector.SourceView.prototype.jumpToPreviousSearchResult):
(WebInspector.SourceView.prototype.showingFirstSearchResult):
(WebInspector.SourceView.prototype.showingLastSearchResult):
(WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range.
(WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches.
(WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
* page/inspector/inspector.css:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36836
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:32 +0000 (02:08 +0000)]
Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
so future code can be shared.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement.
And visibleResourceView to visibleView.
* page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36835
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:27 +0000 (02:08 +0000)]
Highlight all matched search results in the Elements panel DOM tree.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* page/inspector/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight
on all previous search results.
(WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight
on all new search results.
* page/inspector/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement): Delay setting the title until onattach.
(WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes
the highlighted class on the listItemElement.
(WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class
if needed. Calls _updateTitle.
(WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight
class so it can be styled when the highlighted class is present.
* page/inspector/inspector.css: New style rules for the hihglight.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36834
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:19 +0000 (02:08 +0000)]
Add search support to the Elements panel.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* page/inspector/ElementsPanel.js:
(WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount
with a 0 match count to rest. Reset the other search properties.
(WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath
query and a CSS selector on all the Documents in the page. Remembers the found nodes
and avoids duplicates. Focuses the first result.
(WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result.
(WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36833
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:15 +0000 (02:08 +0000)]
Add support to Panel that allows easy searching of sub-views.
Reviewed by Oliver Hunt.
* page/inspector/Panel.js:
(WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the
views in the search results and delete the currentQuery property. Call
WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the
other search properties.
(WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will
reset everything we need before doing a new search. Get an array of searchableViews
from the panel, implemented by sub-classes. Iterate over the views one-by-one
with an interval to prevent blocking the UI for large lists of searchableViews.
This keeps the interface really responsive. Pass a finishedCallback function to
the performSearch on each view so it can notify the panel of results.
(WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the
searchResults of the visibleView, so we know where in the results we are.
This is done every time incase the user manually navigates to a new view.
If the view is showing the last result, jump to the next view and show it's
first result. Otherwise jump to the next result in the current view.
(WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36832
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:11 +0000 (02:08 +0000)]
Add support for asking the current panel to perform a search, find next/previous and clear.
A search is performed on the new new current panel when switching between panels. The search
label/placeholder in the toolbar now includes the panel name to make it clear that panel will
be searched. The search field contents are selected when Command/Control-F or Enter/Return
is pressed, so the user can easily type an entirely new query. The search match count shows
up in the toolbar next to the search field.
Also changed:
* Rename lastQuery to currentQuery since it better matches the truth.
* Set the search field "results" attribute to zero since results arn't saved for
how we use the search field.
* Make repeated presses of the Return key jump to the next search result instead
of doing nothing.
* Increased the search field width.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* English.lproj/localizedStrings.js: New strings.
* page/inspector/inspector.css: New styles.
* page/inspector/inspector.html: Add the search-results-matches element. Add the
incremental attribute to the search field and set the results attribute to zero.
* page/inspector/inspector.js:
(WebInspector.set currentPanel): perform the search on the new panel.
(WebInspector.loaded): Change the event listeners and remove code that changes
the search label text.
(WebInspector.documentKeyDown): Add support for Command/Control-G and
Command/Control-Shift-G. To jump to the next and previous search results.
(WebInspector.updateSearchLabel): Added. Update the search placeholder/label.
This does different things depending on the attached state.
(WebInspector.searchKeyDown): Call preventDefault since this was the Enter key.
This prevents a "search" event from firing for key down. We handle the Enter key
on key up in searchKeyUp. This stops performSearch from being called twice in a row.
(WebInspector.searchKeyUp): Calls performSearch when it is the Enter key.
(WebInspector.performSearch): Delete the currentQuery property and call searchCanceled
on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search.
Call updateSearchMatchesCount to reset the matches count in the toolbar.
(WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36831
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:08:01 +0000 (02:08 +0000)]
Remove the previous Inspector search code to make room for the new stuff.
https://bugs.webkit.org/show_bug.cgi?id=21005
Reviewed by Oliver Hunt.
* page/inspector/inspector.css:
* page/inspector/inspector.html:
* page/inspector/inspector.js:
(WebInspector.get/set showingSearchResults): Removed.
(WebInspector.searchResultsKeyDown): Removed.
(WebInspector.searchResultsResizerDragStart): Removed.
(WebInspector.searchResultsResizerDragEnd): Removed.
(WebInspector.searchResultsResizerDrag): Removed.
(WebInspector.performSearch): Removed searching parts.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36830
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:07:56 +0000 (02:07 +0000)]
Use the Array.remove helper function in more places.
https://bugs.webkit.org/show_bug.cgi?id=21037
Reviewed by Kevin McCullough.
* page/inspector/ResourceCategory.js:
(WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
* page/inspector/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
* page/inspector/inspector.js:
(WebInspector.removeResource): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36829
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:07:50 +0000 (02:07 +0000)]
Fixes a bug where inspecting a node after reloading the page
would not reveal the node in the DOM tree. The TreeOutline
was not being told to forget decendants of a removed child.
So old TreeElements would be found that are not in the tree.
https://bugs.webkit.org/show_bug.cgi?id=21036
Reviewed by Kevin McCullough.
* page/inspector/treeoutline.js:
(TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive
in addition to _forgetTreeElement.
(TreeOutline._removeChildren): Call _forgetChildrenRecursive
in addition to _forgetTreeElement.
(TreeOutline._rememberTreeElement): Use Array.indexOf to quickly
search for known elements.
(TreeOutline._forgetTreeElement): Use Array.remove to remove elements.
(TreeOutline._forgetChildrenRecursive): Recursively traverse the
descendants and call _forgetTreeElement.
* page/inspector/utilities.js:
(Array.prototype.remove): Speed up this function by using Array.indexOf
when onlyFirst is true.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36828
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:07:45 +0000 (02:07 +0000)]
Fixes a bug where inspecting some short text nodes does
not reveal them in the Elements panel DOM tree.
https://bugs.webkit.org/show_bug.cgi?id=21035
Reviewed by Oliver Hunt.
* page/inspector/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
The revealAndSelectNode() method might find a different element
if there is inlined text, and the select() call would change the
focusedDOMNode and reenter this setter. So to avoid calling
focusedNodeChanged() twice, first check if _focusedDOMNode is
the same node as the one passed in.
(WebInspector.ElementsTreeOutline.prototype.update): Remove use of
this.treeOutline, since this is the TreeOutline.
(WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added.
Provides default functions for isAncestor, getParet and equal.
Calls the base protoype's findTreeElement. If that returns null
and the node is a text node, try finding it's parent.
(WebInspector.ElementsTreeOutline.prototype.revealNode): Removed.
Renamed to revealAndSelectNode.
(WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
Selects and reveals the node passed in. Use the simple findTreeElement.
(WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
Remove use of this.treeOutline, since this is the TreeOutline.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36827
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 24 Sep 2008 02:07:39 +0000 (02:07 +0000)]
Fixes an exception that happened when removing a Resource
from the ResourcesPanel.
https://bugs.webkit.org/show_bug.cgi?id=21034
Reviewed by Kevin McCullough.
* page/inspector/ResourcesPanel.js:
(WebInspctor.ResourcesPanel.prototype.removeResource):
Remove the graphElement.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36826
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 01:52:08 +0000 (01:52 +0000)]
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
* wtf/Platform.h: Removed duplicate #if.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36825
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 24 Sep 2008 01:18:31 +0000 (01:18 +0000)]
2008-09-23 Kevin McCullough <kmccullough@apple.com>
Fixed "Time" to "Tim"
* ChangeLog:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36824
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 24 Sep 2008 01:00:42 +0000 (01:00 +0000)]
Reviewed by Oliver.
Move mapInstanceToElement/removeInstanceMapping/instancesForElement
from SVGDocumentExtensions to SVGElement. It's more useful to store
the list of SVGElementInstances per SVGElement, instead of using
a document-wide hash for this purpose.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36823
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Wed, 24 Sep 2008 00:53:56 +0000 (00:53 +0000)]
wx build fix.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36822
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 24 Sep 2008 00:27:18 +0000 (00:27 +0000)]
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Changed the layout of the call frame from
{ header, parameters, locals | constants, temporaries }
to
{ parameters, header | locals, constants, temporaries }
This simplifies function entry+exit, and enables a number of future
optimizations.
13.5% speedup on empty call benchmark for bytecode; 23.6% speedup on
empty call benchmark for CTI.
SunSpider says no change. SunSpider --v8 says 1% faster.
* VM/CTI.cpp:
Added a bit of abstraction for calculating whether a register is a
constant, since this patch changes that calculation:
(JSC::CTI::isConstant):
(JSC::CTI::getConstant):
(JSC::CTI::emitGetArg):
(JSC::CTI::emitGetPutArg):
(JSC::CTI::getConstantImmediateNumericArg):
Updated for changes to callframe header location:
(JSC::CTI::emitPutToCallFrameHeader):
(JSC::CTI::emitGetFromCallFrameHeader):
(JSC::CTI::printOpcodeOperandTypes):
Renamed to spite Oliver:
(JSC::CTI::emitInitRegister):
Added an abstraction for emitting a call through a register, so that
calls through registers generate exception info, too:
(JSC::CTI::emitCall):
Updated to match the new callframe header layout, and to support calls
through registers, which have no destination address:
(JSC::CTI::compileOpCall):
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompileSlowCases):
(JSC::CTI::privateCompile):
* VM/CTI.h:
More of the above:
(JSC::CallRecord::CallRecord):
* VM/CodeBlock.cpp:
Updated for new register layout:
(JSC::registerName):
(JSC::CodeBlock::dump):
* VM/CodeBlock.h:
Updated CodeBlock to track slightly different information about the
register frame, and tweaked the style of an ASSERT_NOT_REACHED.
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::getStubInfo):
* VM/CodeGenerator.cpp:
Added some abstraction around constant register allocation, since this
patch changes it, changed codegen to account for the new callframe
layout, and added abstraction around register fetching code
that used to assume that all local registers lived at negative indices,
since vars now live at positive indices:
(JSC::CodeGenerator::generate):
(JSC::CodeGenerator::addVar):
(JSC::CodeGenerator::addGlobalVar):
(JSC::CodeGenerator::allocateConstants):
(JSC::CodeGenerator::CodeGenerator):
(JSC::CodeGenerator::addParameter):
(JSC::CodeGenerator::registerFor):
(JSC::CodeGenerator::constRegisterFor):
(JSC::CodeGenerator::newRegister):
(JSC::CodeGenerator::newTemporary):
(JSC::CodeGenerator::highestUsedRegister):
(JSC::CodeGenerator::addConstant):
ASSERT that our caller referenced the registers it passed to us.
Otherwise, we might overwrite them with parameters:
(JSC::CodeGenerator::emitCall):
(JSC::CodeGenerator::emitConstruct):
* VM/CodeGenerator.h:
Added some abstraction for getting a RegisterID for a given index,
since the rules are a little weird:
(JSC::CodeGenerator::registerFor):
* VM/Machine.cpp:
Utility function to transform a machine return PC to a virtual machine
return VPC, for the sake of stack unwinding, since both PCs are stored
in the same location now:
(JSC::vPCForPC):
Tweaked to account for new call frame:
(JSC::Machine::initializeCallFrame):
Tweaked to account for registerOffset supplied by caller:
(JSC::slideRegisterWindowForCall):
Tweaked to account for new register layout:
(JSC::scopeChainForCall):
(JSC::Machine::callEval):
(JSC::Machine::dumpRegisters):
(JSC::Machine::unwindCallFrame):
(JSC::Machine::execute):
Changed op_call and op_construct to implement the new calling convention:
(JSC::Machine::privateExecute):
Tweaked to account for the new register layout:
(JSC::Machine::retrieveArguments):
(JSC::Machine::retrieveCaller):
(JSC::Machine::retrieveLastCaller):
(JSC::Machine::callFrame):
(JSC::Machine::getArgumentsData):
Changed CTI call helpers to implement the new calling convention:
(JSC::Machine::cti_op_call_JSFunction):
(JSC::Machine::cti_op_call_NotJSFunction):
(JSC::Machine::cti_op_ret_activation):
(JSC::Machine::cti_op_ret_profiler):
(JSC::Machine::cti_op_construct_JSConstruct):
(JSC::Machine::cti_op_construct_NotJSConstruct):
(JSC::Machine::cti_op_call_eval):
* VM/Machine.h:
* VM/Opcode.h:
Renamed op_initialise_locals to op_init, because this opcode
doesn't initialize all locals, and it doesn't initialize only locals.
Also, to spite Oliver.
* VM/RegisterFile.h:
New call frame enumeration values:
(JSC::RegisterFile::):
Simplified the calculation of whether a RegisterID is a temporary,
since we can no longer assume that all positive non-constant registers
are temporaries:
* VM/RegisterID.h:
(JSC::RegisterID::RegisterID):
(JSC::RegisterID::setTemporary):
(JSC::RegisterID::isTemporary):
Renamed firstArgumentIndex to firstParameterIndex because the assumption
that this variable pertained to the actual arguments supplied by the
caller caused me to write some buggy code:
* kjs/Arguments.cpp:
(JSC::ArgumentsData::ArgumentsData):
(JSC::Arguments::Arguments):
(JSC::Arguments::fillArgList):
(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::put):
Updated for new call frame layout:
* kjs/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::functionName):
(JSC::DebuggerCallFrame::type):
* kjs/DebuggerCallFrame.h:
Changed the activation object to account for the fact that a call frame
header now sits between parameters and local variables. This change
requires all variable objects to do their own marking, since they
now use their register storage differently:
* kjs/JSActivation.cpp:
(JSC::JSActivation::mark):
(JSC::JSActivation::copyRegisters):
(JSC::JSActivation::createArgumentsObject):
* kjs/JSActivation.h:
Updated global object to use the new interfaces required by the change
to JSActivation above:
* kjs/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
(JSC::JSGlobalObject::mark):
(JSC::JSGlobalObject::copyGlobalsFrom):
(JSC::JSGlobalObject::copyGlobalsTo):
* kjs/JSGlobalObject.h:
(JSC::JSGlobalObject::addStaticGlobals):
Updated static scope object to use the new interfaces required by the
change to JSActivation above:
* kjs/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::mark):
(JSC::JSStaticScopeObject::~JSStaticScopeObject):
* kjs/JSStaticScopeObject.h:
(JSC::JSStaticScopeObject::JSStaticScopeObject):
(JSC::JSStaticScopeObject::d):
Updated variable object to use the new interfaces required by the
change to JSActivation above:
* kjs/JSVariableObject.cpp:
(JSC::JSVariableObject::copyRegisterArray):
(JSC::JSVariableObject::setRegisters):
* kjs/JSVariableObject.h:
Changed the bit twiddling in symbol table not to assume that all indices
are negative, since they can be positive now:
* kjs/SymbolTable.h:
(JSC::SymbolTableEntry::SymbolTableEntry):
(JSC::SymbolTableEntry::isNull):
(JSC::SymbolTableEntry::getIndex):
(JSC::SymbolTableEntry::getAttributes):
(JSC::SymbolTableEntry::setAttributes):
(JSC::SymbolTableEntry::isReadOnly):
(JSC::SymbolTableEntry::pack):
(JSC::SymbolTableEntry::isValidIndex):
Changed call and construct nodes to ref their functions and/or bases,
so that emitCall/emitConstruct doesn't overwrite them with parameters.
Also, updated for rename to registerFor:
* kjs/nodes.cpp:
(JSC::ResolveNode::emitCode):
(JSC::NewExprNode::emitCode):
(JSC::EvalFunctionCallNode::emitCode):
(JSC::FunctionCallValueNode::emitCode):
(JSC::FunctionCallResolveNode::emitCode):
(JSC::FunctionCallBracketNode::emitCode):
(JSC::FunctionCallDotNode::emitCode):
(JSC::PostfixResolveNode::emitCode):
(JSC::DeleteResolveNode::emitCode):
(JSC::TypeOfResolveNode::emitCode):
(JSC::PrefixResolveNode::emitCode):
(JSC::ReadModifyResolveNode::emitCode):
(JSC::AssignResolveNode::emitCode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::ForInNode::emitCode):
Added abstraction for getting exception info out of a call through a
register:
* masm/X86Assembler.h:
(JSC::X86Assembler::emitCall):
Removed duplicate #if:
* wtf/Platform.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36821
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Wed, 24 Sep 2008 00:23:28 +0000 (00:23 +0000)]
Rubber stamped by Sam.
Move code from EventTarget to EventTargetNode.
I refactored most parts to live in EventTarget, a year ago,
though the implementation of EventTargetSVGElementInstance is
done in another way, that obsoletes this.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36820
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 24 Sep 2008 00:14:42 +0000 (00:14 +0000)]
Fix horizontal scrollbars on windows.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36819
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Wed, 24 Sep 2008 00:09:33 +0000 (00:09 +0000)]
WebCore:
2008-09-23 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
link at gmail does not support AXPress action
and corresponding: <rdar://problem/
6216178>
I fixed this bug by making AccessibilityObject::anchorElement
support ARIA links.
* page/AccessibilityImageMapLink.cpp:
(WebCore::AccessibilityImageMapLink::anchorElement):
* page/AccessibilityImageMapLink.h:
* page/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::anchorElement):
* page/AccessibilityObject.h:
(WebCore::AccessibilityObject::isNativeAnchor):
* page/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isNativeAnchor):
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::internalLinkElement):
(WebCore::AccessibilityRenderObject::url):
* page/AccessibilityRenderObject.h:
* page/mac/AccessibilityObjectWrapper.mm:
(AXLinkElementForNode):
WebKitTools:
2008-09-23 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
This patch extends DumpRenderTree's AccessibilityController to ask
if the focused element supports the press action.
* DumpRenderTree/AccessibilityUIElement.cpp:
(getSupportsPressActionCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::supportsPressAction):
LayoutTests:
2008-09-23 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
Test for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add
Contact" link at gmail does not support AXPress action
and corresponding: <rdar://problem/
6216178>
* accessibility/aria-link-supports-press-expected.txt: Added.
* accessibility/aria-link-supports-press.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36818
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 24 Sep 2008 00:05:34 +0000 (00:05 +0000)]
2008-09-23 Kevin McCullough <kmccullough@apple.com>
Reviewed by Time and Oliver.
Bug 20949: Catch repeated messages in Inspector Controller to limit
memory usage
- Store the repeat count in the Console Message object, in the
Inspector Controller and JS ConsoleMessage object.
* page/InspectorController.cpp:
(WebCore::ConsoleMessage::ConsoleMessage):
(WebCore::ConsoleMessage::operator==):
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::addConsoleMessage):
(WebCore::InspectorController::addScriptConsoleMessage):
* page/InspectorController.h:
* page/inspector/Console.js:
* page/inspector/Resource.js:
* page/inspector/ResourcesPanel.js:
* page/inspector/SourceFrame.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36817
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Tue, 23 Sep 2008 23:44:20 +0000 (23:44 +0000)]
Reviewed by Eric.
Working on proper EventTarget support for SVGElementInstance.
Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
implementation. Let it use TreeShared directly.
It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
The transition to EventTargetSVGElementInstance will be done in a few individual patches.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36816
268f45cc-cd09-0410-ab3c-
d52691b4dbfc