hausmann@webkit.org [Fri, 16 May 2008 14:25:57 +0000 (14:25 +0000)]
2008-05-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Since WebKitGtk is fully using autotools now, clean-up the .pro/.pri files
from gtk-port.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 16 May 2008 07:22:22 +0000 (07:22 +0000)]
Fix the Gtk build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33515
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Fri, 16 May 2008 07:12:34 +0000 (07:12 +0000)]
Fix the Qt build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Fri, 16 May 2008 07:10:26 +0000 (07:10 +0000)]
Reviewed by Dave Hyatt.
https://bugs.webkit.org/show_bug.cgi?id=17433
getComputedStyle() -> clip returns empty string
Make getComputedStyle return a shape value for clip
if it is set.
Tests: fast/css/getPropertyValue-clip.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33513
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Fri, 16 May 2008 05:53:47 +0000 (05:53 +0000)]
wx build fix. Add rendering/style to includes dir.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 16 May 2008 05:10:32 +0000 (05:10 +0000)]
2008-05-15 Kevin McCullough <kmccullough@apple.com>
- Build fix.
* JavaScriptCore.exp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alice.liu@apple.com [Fri, 16 May 2008 03:27:24 +0000 (03:27 +0000)]
2008-05-15 Alice Liu <alice.liu@apple.com>
Reviewed by Beth Dakin.
Fixed <rdar://problem/5882283> Implement ARIA aria-activedescendant
Also added support for aria roles listbox and option, and aria-selected,
and aria-multiselectable for listboxes
* dom/Element.cpp:
(WebCore::Element::attributeChanged):
* dom/Element.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):
* html/HTMLAttributeNames.in:
* page/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleActiveDescendantChanged):
* page/AXObjectCache.h:
(WebCore::AXObjectCache::accessibilityEnabled):
(WebCore::AXObjectCache::handleActiveDescendantChanged):
* page/AccessibilityListBox.cpp:
(WebCore::AccessibilityListBox::selectedChildren):
(WebCore::AccessibilityListBox::visibleChildren):
* page/AccessibilityListBox.h:
* page/AccessibilityListBoxOption.h:
(WebCore::AccessibilityListBoxOption::selectedChildren):
(WebCore::AccessibilityListBoxOption::visibleChildren):
* page/AccessibilityObject.cpp:
* page/AccessibilityObject.h:
(WebCore::AccessibilityObject::isListBox):
(WebCore::AccessibilityObject::shouldFocusActiveDescendant):
(WebCore::AccessibilityObject::activeDescendant):
(WebCore::AccessibilityObject::handleActiveDescendantChanged):
* page/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId):
(WebCore::AccessibilityRenderObject::focusedUIElement):
(WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
(WebCore::AccessibilityRenderObject::activeDescendant):
(WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
(WebCore::RoleEntry::):
(WebCore::AccessibilityRenderObject::ariaRoleAttribute):
(WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
(WebCore::AccessibilityRenderObject::selectedChildren):
(WebCore::AccessibilityRenderObject::ariaListboxVisibleChildren):
(WebCore::AccessibilityRenderObject::visibleChildren):
* page/AccessibilityRenderObject.h:
(WebCore::AccessibilityRenderObject::isDetached):
* page/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Fri, 16 May 2008 03:20:44 +0000 (03:20 +0000)]
Fixes a bug in the view source parsing of text within <script>,
<style>, <xmp>, <textarea> and other special tags. The text was
being parsed as HTML and would be syntax highlighted if a "<"
was encountered.
<rdar://problem/5790805> Inspector's source view missing some words,
doubles others in JS source in <script> tag (17752)
Reviewed by Dave Hyatt.
Added test: fast/frames/viewsource-plain-text-tags.html
* html/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::scriptHandler): Set scriptCodeSize and
scriptCodeResync to zero before an early return in view source mode.
This was causing text from a previous script tag to show up in
then next style tag.
(WebCore::HTMLTokenizer::parseTag): Enter an if block in view source
mode even if n is null. The n is property guarded in other places
and not used by view source mode. Removes a redundant null check on n.
Add a new null check of n before setting scriptSrcCharset. Other code
in HTMLTokenizer is already guarded for this code path.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Fri, 16 May 2008 03:20:25 +0000 (03:20 +0000)]
Changes the Web Inspector node highlight to be less aggressive
and only highlight when hovering over the selected node in the DOM
tree or breadcrumbs. You can highlight on hover for any node if
you hold down the Alt/Option key while hovering.
Reviewed by Kevin McCullough.
* page/inspector/ElementsPanel.js:
* page/inspector/inspector.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Fri, 16 May 2008 02:51:33 +0000 (02:51 +0000)]
2008-05-15 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
- Cache some values to save on computing them repetitively. This will be
a big savings when we sort since we won't have to walk the tree for
every comparison!
- We cache these values when we end profiling because otherwise we won't
know which profile to get the totalTime for the whole profile from without
retaining a reference to the head profile or looking up the profile from
the list of all profiles.
- Also it's safe to assume we won't be asked for these values while we
are still profiling since the WebInspector only get's profileNodes from
profiles that are in the allProfiles() list and a profile is only added
to that list after it has finished and these values will no longer
change.
* JavaScriptCore.exp:
* profiler/ProfileNode.cpp:
(KJS::ProfileNode::ProfileNode):
(KJS::ProfileNode::stopProfiling):
(KJS::ProfileNode::printDataInspectorStyle):
(KJS::ProfileNode::printDataSampleStyle):
(KJS::ProfileNode::endAndRecordCall):
* profiler/ProfileNode.h:
(KJS::ProfileNode::totalTime):
(KJS::ProfileNode::selfTime):
(KJS::ProfileNode::totalPercent):
(KJS::ProfileNode::selfPercent):
* profiler/Profiler.cpp:
(KJS::Profiler::stopProfiling):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Fri, 16 May 2008 02:37:00 +0000 (02:37 +0000)]
2008-05-15 Stephanie Lewis <slewis@apple.com>
fix mac build
* WebView/WebView.mm:
(-[WebView closeWithFastTeardown]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Fri, 16 May 2008 02:31:14 +0000 (02:31 +0000)]
2008-05-15 Stephanie Lewis <slewis@apple.com>
Fix windows build
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Fri, 16 May 2008 01:07:49 +0000 (01:07 +0000)]
2008-05-15 Stephanie Lewis <slewis@apple.com>
Reviewed by Anders.
Turn on fast teardown. I added a preference for using full teardown because
the LEAKS output will be useless without a full teardown.
preference for fullteardown
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.m:
(-[WebPreferences setFullDocumentTeardownEnabled:]):
(-[WebPreferences fullDocumentTeardownEnabled]):
* WebView/WebPreferencesPrivate.h:
on application quit dispatch unload events and destroy plugins then exit
* WebView/WebView.mm:
(-[WebView closeWithFastTeardown]):
(-[WebView _close]):
* WebView/WebViewPrivate.h:
export a symbol needed for fast teardown
* WebCore.base.exp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Fri, 16 May 2008 00:51:54 +0000 (00:51 +0000)]
2008-05-15 Stephanie Lewis <slewis@apple.com>
Reviewed by Anders.
Keep track on pending unload event counts
No change in behavior so no new tests, but I am dumping the
unload event count to track the new variable.
* WebCore.base.exp:
increment/decrement the count when an event is added/removed
* dom/Document.cpp:
(WebCore::Document::removeHTMLWindowEventListener):
(WebCore::Document::addWindowEventListener):
(WebCore::Document::removeWindowEventListener):
(WebCore::Document::setPendingFrameUnloadEventCount):
* dom/Document.h:
set the count to 0 for each frame after the unload event has been dispatched
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
keep track of the number of pending unload events for the eventHandler's frame
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::pendingFrameUnloadEventCount):
(WebCore::EventHandler::setPendingFrameUnloadEventCount):
* page/EventHandler.h:
keep track of the total number of pending unload events for all of the frames
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::pendingUnloadEventCount):
(WebCore::Page::setPendingUnloadEventCount):
age/Page.h:
get the pending frame unload count from WebCore
* WebView/WebFrame.mm:
(-[WebFrame _pendingFrameUnloadEventCount]):
* WebView/WebFramePrivate.h:
Dump the unload count for a frame after parsing is finished.
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(-[FrameLoadDelegate webView:didFinishDocumentLoadForFrame:]):
Dump unload event counts for frames.
* fast/dom/Window/get-set-properties-expected.txt:
* fast/events/onunload-expected.txt:
* fast/events/onunload-not-on-body-expected.txt:
* fast/events/onunload-window-property-expected.txt:
* fast/forms/button-state-restore-expected.txt:
* fast/history/history_reload-expected.txt:
* fast/loader/onunload-form-submit-crash-2-expected.txt:
* fast/loader/onunload-form-submit-crash-expected.txt:
* http/tests/xmlhttprequest/xhr-onunload-expected.txt:
* platform/mac/fast/loader/start-load-in-unload-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Thu, 15 May 2008 23:40:12 +0000 (23:40 +0000)]
2008-05-15 Steve Falkenburg <sfalken@apple.com>
Fix build.
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan@apple.com [Thu, 15 May 2008 23:39:36 +0000 (23:39 +0000)]
2008-05-15 John Sullivan <sullivan@apple.com>
Reviewed by Kevin Decker
- fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of
screen when new tab appears
The highlight should go away entirely, but this simple patch just makes it not jump away.
The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306>
* WebInspector/WebNodeHighlight.m:
(-[WebNodeHighlight _repositionHighlightWindow]):
Bail out if target view isn't in a window
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Thu, 15 May 2008 23:37:33 +0000 (23:37 +0000)]
2008-05-15 Stephanie Lewis <slewis@apple.com>
Reviewed by Anders.
Track views that contain plugin instances so that they can be destroyed at application
quit without walking the entire document tree.
Add/Remove Netscape plugin views from instance list. Start/stop are when netscape
plugins are created and destroyed
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView stop]):
Add/remove WebKit plugin views from instance list
* Plugins/WebPluginController.mm:
(-[WebPluginController addPlugin:]):
(-[WebPluginController destroyPlugin:]):
(-[WebPluginController destroyAllPlugins]):
Add a set of views with plugin instances to the WebPluginDatabase
* Plugins/WebPluginDatabase.h:
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase init]):
(-[WebPluginDatabase dealloc]):
(-[WebPluginDatabase addPluginInstanceView:]):
(-[WebPluginDatabase removePluginInstanceView:]):
(-[WebPluginDatabase removePluginInstanceViewsFor:]):
(-[WebPluginDatabase destroyAllPluginInstanceViews]):
Handle cases where plugin views are detached before the plugin is destroyed.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::detachedFromParent2):
(WebFrameLoaderClient::transitionToCommittedFromCachedPage):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
Add plugin instances to the set in the WebPluginDatabase by way of the WebView
* WebView/WebHTMLView.mm:
* WebView/WebHTMLViewInternal.h:
* WebView/WebView.mm:
(-[WebView addPluginInstanceView:]):
(-[WebView removePluginInstanceView:]):
(-[WebView removePluginInstanceViewsFor:]):
* WebView/WebViewInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Thu, 15 May 2008 23:10:35 +0000 (23:10 +0000)]
WebKit/mac:
2008-05-15 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher
Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
before setting the page group of the new page.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path
immediately after creating the page so it is in place for initializing the LocalStorageThread
WebKit/win:
2008-05-06 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher
Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
before setting the page group of the new page.
Since I still need to add the local storage path to WebPreferences on Windows, mark this with a FIXME for now.
* WebView.cpp:
(WebView::initWithFrame): Mark an important FIXME for setting the LocalStorage path as
appropriate. Until this FIXME is handled, Windows will have no persistent LocalStorage
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Thu, 15 May 2008 23:03:47 +0000 (23:03 +0000)]
2008-05-15 Steve Falkenburg <sfalken@apple.com>
Fix build.
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken@apple.com [Thu, 15 May 2008 22:25:33 +0000 (22:25 +0000)]
2008-05-15 Steve Falkenburg <sfalken@apple.com>
Fix build.
* WebCore.vcproj/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Thu, 15 May 2008 21:08:08 +0000 (21:08 +0000)]
WebCore:
Bug 19085: font-family: initial sets font-family differently than font: initial
<https://bugs.webkit.org/show_bug.cgi?id=19085>
<rdar://problem/5939391>
Reviewed by David Hyatt.
Test: fast/css/font-family-initial.html
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty): Don't set family if first
family of initial font description is empty.
LayoutTests:
Bug 19085: font-family: initial sets font-family differently than font: initial
<https://bugs.webkit.org/show_bug.cgi?id=19085>
<rdar://problem/5939391>
Reviewed by David Hyatt.
* fast/css/font-family-initial-expected.txt: Added.
* fast/css/font-family-initial.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 15 May 2008 21:00:25 +0000 (21:00 +0000)]
2008-05-15 David Hyatt <hyatt@apple.com>
Move RenderStyle into a new subdirectory, rendering/style/, in preparation for breaking it up into
a bunch of smaller files.
Reviewed by Dan Bernstein
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* rendering/RenderStyle.cpp: Removed.
* rendering/RenderStyle.h: Removed.
* rendering/style: Added.
* rendering/style/RenderStyle.cpp: Copied from rendering/RenderStyle.cpp.
* rendering/style/RenderStyle.h: Copied from rendering/RenderStyle.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Thu, 15 May 2008 20:42:11 +0000 (20:42 +0000)]
Fix leaks when stopping a page from loading
Patch suggested by Antti. Reviewed by Antti.
* loader/DocLoader.cpp:
(WebCore::DocLoader::clearPreloads): If a resource is in m_preloads but
never made it to the cache, delete it to prevent it from leaking.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Thu, 15 May 2008 19:58:52 +0000 (19:58 +0000)]
Fixes the bug where the Web Inspector would flash white while resizing.
This was cause by deferring the window creation.
<rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979)
Reviewed by Darin Adler.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController window]): Don't defer the window creation.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Thu, 15 May 2008 19:49:42 +0000 (19:49 +0000)]
WebCore:
2008-05-15 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=13942
ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/
In HTML, when an attribute was null (for example when we parse '="somevalue"'
(attribute forgotten or there is a space between the attribute and the '=')),
the fallback was to assign the value to the attribute. However if the value was
a url or did contain a '/', we would trigger the assertion.
To avoid that, we check the value before assigning it now and do not assign it
if it means adding a '/'.
Test: fast/parser/assertion-empty-attribute.html
* html/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::parseTag): Add check for '/' in value before
assigning it to an attribute when the attribute is null.
LayoutTests:
2008-05-15 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Darin.
Test case for https://bugs.webkit.org/show_bug.cgi?id=13942
ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/
* fast/parser/assertion-empty-attribute-expected.txt: Added.
* fast/parser/assertion-empty-attribute.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 15 May 2008 17:22:44 +0000 (17:22 +0000)]
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=10707
DumpRenderTree should not be able to access non-local resources
* DumpRenderTree/mac/ResourceLoadDelegate.mm:
(-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
Block them, and complain.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 15 May 2008 17:02:40 +0000 (17:02 +0000)]
Tiger build fix.
* Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Thu, 15 May 2008 16:18:07 +0000 (16:18 +0000)]
wx build fix. Update the version of libpng to download and instsall.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Thu, 15 May 2008 15:52:41 +0000 (15:52 +0000)]
wx build fix for recent breakages. Add EventLoopWx.cpp, update the Bakefiles, and add stubs for new Plugins functions. Also move plugin functions outside of TemporaryLinkStubs.cpp so that they are more noticeable.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 15 May 2008 14:51:57 +0000 (14:51 +0000)]
2008-05-15 Adam Treat <treat@kde.org>
Reviewed by Simon.
Don't try to setCompositionMode for devices that do not support PorterDuff
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Thu, 15 May 2008 13:45:24 +0000 (13:45 +0000)]
2008-05-15 Adele Peterson <adele@apple.com>
Reviewed and landed by Alexey.
Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 15 May 2008 13:25:16 +0000 (13:25 +0000)]
Simon Hausmann <shausman@trolltech.com>
Fix compilation when compiling with MSVC and wchar_t support.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Thu, 15 May 2008 07:26:00 +0000 (07:26 +0000)]
2008-05-15 Simon Hausmann <hausmann@webkit.org>
Fix the Qt build by adding NetworkStateNotifier.cpp to the build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 15 May 2008 05:52:31 +0000 (05:52 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 15 May 2008 05:49:05 +0000 (05:49 +0000)]
WebCore:
Reviewed by Mark Rowe.
- fix <rdar://problem/5907633> Memory corruption after closing a document that uses box-reflect
Test: fast/reflections/teardown-crash.html
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::~RenderLayer): Changed to not call removeLayers()
on the reflection if the document is being destroyed, because in that
case the layer tree is not being maintained.
LayoutTests:
Reviewed by Mark Rowe.
- test for <rdar://problem/5907633> Memory corruption after closing a document that uses box-reflect
* fast/reflections/teardown-crash-expected.txt: Added.
* fast/reflections/teardown-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 15 May 2008 02:36:12 +0000 (02:36 +0000)]
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
- Turn on the profiler.
* kjs/config.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 15 May 2008 02:06:27 +0000 (02:06 +0000)]
JavaScriptCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
- Expose the new profiler functions to the WebInspector.
* JavaScriptCore.exp:
WebCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
<rdar://problem/5770054> JavaScript profiler (10928)
- Expose the new Profiler functions to the WebInspector.
* page/JavaScriptProfileNode.cpp:
(WebCore::getTotalPercent):
(WebCore::getSelfPercent):
(WebCore::ProfileNodeClass):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Thu, 15 May 2008 01:59:19 +0000 (01:59 +0000)]
Fixes a crash in JavaScriptDebugServer::returnEvent when debugging
code that contains an eval. This change makes stepping into eval
code work as expected.
http://bugs.webkit.org/show_bug.cgi?id=19038
Reviewed by Kevin McCullough.
Tested with: manual-tests/inspector/returnEvent-crash.html
* manual-tests/inspector/returnEvent-crash.html: Added.
* page/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::sourceParsed): Adds #ifdefed
debugging code to prevent the sourceID and URL.
(WebCore::updateCurrentCallFrame): Added. A helper function that
is called from all 4 of the debugger hooks below. This function will
update and/or create JavaScriptCallFrames to match the exec state,
sourceID and lineNumber passed into it. Contains #ifdefed debugging
code that was helpful while fixing this bug.
(WebCore::JavaScriptDebugServer::callEvent): Call updateCurrentCallFrame
before pauseIfNeeded.
(WebCore::JavaScriptDebugServer::atStatement): Ditto.
(WebCore::JavaScriptDebugServer::returnEvent): Ditto.
(WebCore::JavaScriptDebugServer::exception): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Thu, 15 May 2008 01:31:57 +0000 (01:31 +0000)]
2008-05-14 Alp Toker <alp@nuanti.com>
GTK+ build fix for r33457. Add NetworkStateNotifier.cpp to the build.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 15 May 2008 01:10:13 +0000 (01:10 +0000)]
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Giving credit where credit is due.
* ChangeLog:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 15 May 2008 01:09:28 +0000 (01:09 +0000)]
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff and Sam.
<rdar://problem/5770054> JavaScript profiler (10928)
Add the ability to get percentages of total and self time for displaying
in the WebInspector.
* profiler/Profile.h:
(KJS::Profile::totalProfileTime):
* profiler/ProfileNode.cpp:
(KJS::ProfileNode::totalPercent):
(KJS::ProfileNode::selfPercent):
* profiler/ProfileNode.h:
* profiler/Profiler.h:
(KJS::Profiler::currentProfile):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 15 May 2008 01:06:26 +0000 (01:06 +0000)]
2008-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Mitz.
Make our Sticky notes example an offline web app.
* misc/DatabaseExample.html:
* misc/DatabaseExample.manifest: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Thu, 15 May 2008 01:02:26 +0000 (01:02 +0000)]
2008-05-14 Alp Toker <alp@nuanti.com>
GTK+ build fix. Include value.h from kjs, not JavaScriptCore.
* page/JavaScriptProfile.cpp:
* page/JavaScriptProfileNode.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 15 May 2008 00:43:09 +0000 (00:43 +0000)]
Windows release build fix
* WebCore.vcproj/WebCore.vcproj: Make sure the warnings we disable on
XPathGrammar.cpp are disabled for all configurations, not just
Debug_Internal.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Thu, 15 May 2008 00:25:48 +0000 (00:25 +0000)]
JavaScriptCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Sam.
<rdar://problem/5770054> JavaScript profiler (10928)
- Rename FunctionCallProfile to ProfileNode.
* GNUmakefile.am:
* JavaScriptCore.exp:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* JavaScriptCoreSources.bkl:
* profiler/FunctionCallProfile.cpp: Removed.
* profiler/FunctionCallProfile.h: Removed.
* profiler/Profile.cpp:
(KJS::Profile::Profile):
(KJS::Profile::willExecute):
* profiler/Profile.h:
(KJS::Profile::callTree):
* profiler/ProfileNode.cpp: Copied from profiler/FunctionCallProfile.cpp.
(KJS::ProfileNode::ProfileNode):
(KJS::ProfileNode::willExecute):
(KJS::ProfileNode::didExecute):
(KJS::ProfileNode::addChild):
(KJS::ProfileNode::findChild):
(KJS::ProfileNode::stopProfiling):
(KJS::ProfileNode::selfTime):
(KJS::ProfileNode::printDataInspectorStyle):
(KJS::ProfileNode::printDataSampleStyle):
(KJS::ProfileNode::endAndRecordCall):
* profiler/ProfileNode.h: Copied from profiler/FunctionCallProfile.h.
(KJS::ProfileNode::create):
(KJS::ProfileNode::children):
* profiler/Profiler.cpp:
WebCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Sam.
<rdar://problem/5770054> JavaScript profiler (10928)
- Rename FunctionCallProfile to ProfileNode
* ForwardingHeaders/profiler/FunctionCallProfile.h: Removed.
* ForwardingHeaders/profiler/ProfileNode.h: Copied from ForwardingHeaders/profiler/FunctionCallProfile.h.
* GNUmakefile.am:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* page/JavaScriptFunctionCallProfile.cpp: Removed.
* page/JavaScriptFunctionCallProfile.h: Removed.
* page/JavaScriptProfile.cpp:
* page/JavaScriptProfileNode.cpp: Copied from page/JavaScriptFunctionCallProfile.cpp.
(WebCore::ProfileNodeCache):
(WebCore::getFunctionName):
(WebCore::getTotalTime):
(WebCore::getSelfTime):
(WebCore::getNumberOfCalls):
(WebCore::getChildren):
(WebCore::finalize):
(WebCore::ProfileNodeClass):
(WebCore::toJS):
* page/JavaScriptProfileNode.h: Copied from page/JavaScriptFunctionCallProfile.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Thu, 15 May 2008 00:02:16 +0000 (00:02 +0000)]
2008-05-13 Beth Dakin <bdakin@apple.com>
Reviewed by Brady.
This patch adds support for the ARIA progressbar role and the
following ARIA states (ie HTML attributes): aria-checked, aria-
level, aria-pressed, aria-valuenow, aria-valuemin, and aria-
valuemax.
* html/HTMLAttributeNames.in:
* page/AccessibilityObject.h:
(WebCore::AccessibilityObject::isProgressIndicator):
(WebCore::AccessibilityObject::valueForRange):
(WebCore::AccessibilityObject::maxValueForRange):
(WebCore::AccessibilityObject::minValueForRange):
* page/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isProgressIndicator):
(WebCore::AccessibilityRenderObject::isPressed): Check the aria-
pressed attribute if this is an ARIA button.
(WebCore::AccessibilityRenderObject::headingLevel): Check the aria-
level attribute if this is an ARIA heading.
(WebCore::AccessibilityRenderObject::intValue): Check the aria-
checked attribute if this is an ARIA radio button or checkbox.
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::maxValueForRange):
(WebCore::AccessibilityRenderObject::minValueForRange):
(WebCore::RoleEntry::):
(WebCore::AccessibilityRenderObject::canSetValueAttribute):
* page/AccessibilityRenderObject.h:
* page/mac/AccessibilityObjectWrapper.mm:
(-[AccessibilityObjectWrapper accessibilityAttributeNames]):
(-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 14 May 2008 23:02:57 +0000 (23:02 +0000)]
JavaScriptCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by John.
<rdar://problem/5770054> JavaScript profiler (10928)
- Have each FunctionCallProfile be able to return it's total and self time.
* JavaScriptCore.exp:
* profiler/FunctionCallProfile.cpp:
(KJS::FunctionCallProfile::selfTime):
* profiler/FunctionCallProfile.h:
(KJS::FunctionCallProfile::totalTime):
WebCore:
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by John.
-<rdar://problem/5770054> JavaScript profiler (10928)
Use the FunctionCallProfile's new total and self time functions.
* page/JavaScriptFunctionCallProfile.cpp:
(WebCore::getTotalTime):
(WebCore::getSelfTime):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 14 May 2008 22:50:29 +0000 (22:50 +0000)]
2008-05-14 Anders Carlsson <andersca@apple.com>
Check in the test result.
* http/tests/appcache/manifest-with-empty-file-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 14 May 2008 22:44:49 +0000 (22:44 +0000)]
WebCore:
2008-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
Don't try to store the resource data if it's empty.
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::store):
LayoutTests:
2008-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Adam.
Add test where a manifest references an empty file.
* http/tests/appcache/manifest-with-empty-file.html: Added.
* http/tests/appcache/resources/empty.txt: Added.
* http/tests/appcache/resources/manifest-with-empty-file.manifest: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 22:35:52 +0000 (22:35 +0000)]
Windows build fix
* platform/network/NetworkStateNotifier.cpp: Added a missing #include.
* platform/network/NetworkStateNotifier.h:
(WebCore::NetworkStateNotifier::NetworkStateNotifier): Removed 'void'
return type from the constructor, and fixed the spelling of a member
variable.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullough@apple.com [Wed, 14 May 2008 22:26:09 +0000 (22:26 +0000)]
2008-05-14 Kevin McCullough <kmccullough@apple.com>
Reviewed by Adam.
<rdar://problem/5770054> JavaScript profiler (10928)
- Add support for interacting with the JavaScriptCore profiler.
* ForwardingHeaders/profiler/FunctionCallProfile.h: Added.
* ForwardingHeaders/profiler/Profile.h: Added.
* GNUmakefile.am: Add the new files to all the projects.
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
* page/InspectorController.cpp: Add the ability to retrieve all of the
profiles in JavaScript from the InspectorController.
(WebCore::allProfiles):
(WebCore::InspectorController::windowScriptObjectAvailable):
* page/JavaScriptFunctionCallProfile.cpp: Added. Wrapper around the JSC
FunctionCallProfile.
(WebCore::functionCallProfileCache): This cache makes sure we don't
needlessly create duplicate wrappers around the same
FunctionCallProfile*.
(WebCore::getFunctionName): Callback to return the name of the function.
(WebCore::getTotalTime): Callback to return the total time spent in the
function.
(WebCore::getSelfTime): Callback to return the time spent in self (total
- time in children) in the function.
(WebCore::getNumberOfCalls): Callback to return the number of times this
function was called.
(WebCore::getChildren): Callback to return the children of this function
where the children are the functions this function called.
(WebCore::finalize): Cleanup.
(WebCore::functionCallProfileClass): Define the JSClassRef for this
object.
(WebCore::toJS): Create a conversion function to make a usable JSValue
to wrap the FunctionCallProfile in JSC.
* page/JavaScriptFunctionCallProfile.h: Added.
* page/JavaScriptProfile.cpp: Added. Wrapper around the JSC Profile.
(WebCore::profileCache): This cache makes sure we don't needlessly
create duplicate wrappers aroudn the same Profile*.
(WebCore::getHeadCallback): Callback to return the head of the graph of
the functions profiled durring this profile's run.
(WebCore::finalize):
(WebCore::profileClass): Define the JSClassRef for this object.
(WebCore::toJS): Create a conversion function to make a usable JSValue
to wrap the Profile from JSC.
* page/JavaScriptProfile.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 22:20:02 +0000 (22:20 +0000)]
Fix Bug 18767: Inspector is currently pretty much useless on Windows
<https://bugs.webkit.org/show_bug.cgi?id=18767>
Reviewed by Tim Hatcher.
* WebCoreSupport/WebInspectorClient.cpp:
(WebInspectorClient::highlight): Only move the highlight behind the
Inspector window when first creating the highlight, not every time we
update it.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Wed, 14 May 2008 22:07:56 +0000 (22:07 +0000)]
2008-05-14 David Hyatt <hyatt@apple.com>
Fix for bug https://bugs.webkit.org/show_bug.cgi?id=16130.
Opacity, transforms, reflections and masks should not honor z-index unless the element is also
positioned. Always reset to auto if the element is not positioned (and then the following code will
adjust auto to 0 as needed).
Reviewed by Dan Bernstein
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::adjustRenderStyle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 14 May 2008 21:30:46 +0000 (21:30 +0000)]
2008-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Brady.
<rdar://problem/5931742> Support navigator.onLine from HTML5
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Add NetworkStateNotifier files.
* dom/EventNames.h:
Add offline and online events.
* page/Navigator.cpp:
(WebCore::Navigator::onLine):
* page/Navigator.h:
* page/Navigator.idl:
Add navigator.onLine.
* page/Page.cpp:
(WebCore::networkStateChanged):
Dispatch offline/online events to all frames.
(WebCore::Page::Page):
Set state change callback.
* platform/network/NetworkStateNotifier.cpp: Added.
* platform/network/NetworkStateNotifier.h: Added.
* platform/network/mac/NetworkStateNotifierMac.cpp: Added.
Mac network state notifier.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Wed, 14 May 2008 21:26:13 +0000 (21:26 +0000)]
Reviewed by Oliver.
Add missing NULL check to match rest of file, this was found by the editing fuzzer.
* WebView/WebResource.mm:
(-[WebResource data]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 21:17:08 +0000 (21:17 +0000)]
Add some Bugzilla URLs
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 21:14:34 +0000 (21:14 +0000)]
Fix Bug 18888: REGRESSION (r32731): console.log always prints "undefined"
Reviewed by Tim Hatcher.
Tested by pre-existing
manual-tests/inspector/console-log-formatting.html.
* page/inspector/Console.js:
(WebInspector.ConsoleMessage.prototype._format): Changed to explicitly
wrap Console._format instead of using bind to do it. Using bind was
causing us to pass plainText in as the first parameter instead of as
the second.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33454
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 14 May 2008 20:59:44 +0000 (20:59 +0000)]
Fixes the bug where stepping out of a function would show the wrong
call stack (would look like it stepped out twice.)
Reviewed by Adam Roben.
* page/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::returnEvent):
Call pauseIfNeeded before setting m_currentCallFrame to the caller.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Wed, 14 May 2008 20:40:57 +0000 (20:40 +0000)]
2008-05-14 Stephanie Lewis <slewis@apple.com>
Fix 64bit build
* plugins/PluginView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 14 May 2008 20:36:10 +0000 (20:36 +0000)]
WebCore:
REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)
<https://bugs.webkit.org/show_bug.cgi?id=18976>
<rdar://problem/5924793>
Reviewed by Darin.
Tests: fast/dom/dom-parse-serialize-expected.txt:
fast/xsl/xslt-processor-expected.txt:
fast/xsl/xslt-text-expected.txt:
Commit r26474 removed escaping of '>' characters to '>' in serialized
HTML content, which broke one jQuery test. This change restores that
serialization behavior to both attributes and content for consistency.
* editing/markup.cpp:
(WebCore::appendAttributeValue): Escape '>' as '>'.
(WebCore::escapeContentText): Ditto.
(WebCore::appendEscapedContent): Ditto. This is the bug fix for the jQuery test.
LayoutTests:
REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)
<https://bugs.webkit.org/show_bug.cgi?id=18976>
<rdar://problem/5924793>
Reviewed by Darin.
Updated test results now that '>' is escaped to '>' in both
attributes and content.
* fast/xsl/xslt-processor-expected.txt:
* fast/xsl/xslt-text-expected.txt:
* platform/mac/fast/dom/dom-parse-serialize-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 20:04:44 +0000 (20:04 +0000)]
Fix Bug 19051: REGRESSION (r33447): Assertion in JSDebugServer::removeListener closing tab with Inspector open
m_inspectedPage is now cleared when the Page is destroyed, which never
used to happen. Some of InspectorController's code was not prepared
for this.
Reviewed by Dave Hyatt.
* page/InspectorController.cpp:
(WebCore::InspectorController::~InspectorController): Removed a call
to stopDebugging and added an assertion. Debugging should have already
been stopped by this point.
(WebCore::InspectorController::inspectedPageDestroyed): Moved here
from the header file. Added a call to stopDebugging.
(WebCore::InspectorController::enabled): Return false if our inspected
Page has already been destroyed, since we can't really do much at this
point anyway.
(WebCore::InspectorController::didCommitLoad):
(WebCore::InspectorController::didLoadResourceFromMemoryCache):
(WebCore::InspectorController::identifierForInitialRequest):
(WebCore::InspectorController::startDebuggingAndReloadInspectedPage):
(WebCore::InspectorController::stopDebugging):
(WebCore::InspectorController::drawNodeHighlight):
Assert that m_inspectedPage hasn't been cleared.
* page/InspectorController.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justin.garcia@apple.com [Wed, 14 May 2008 19:30:44 +0000 (19:30 +0000)]
WebCore:
2008-05-14 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition
* editing/Editor.cpp:
(WebCore::Editor::confirmComposition): Remove the previous composition
when we insert the new one, not with a separate, slower, delete operation.
(WebCore::Editor::setComposition): Ditto.
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::performTrivialReplace): Remove the selected
text with a low level operation that doesn't perform a layout and insert
the new text in a way that won't trigger a layout from the removal.
(WebCore::InsertTextCommand::input): Call the optimized replace.
* editing/InsertTextCommand.h:
* editing/htmlediting.cpp:
(WebCore::isTabSpanNode): Check to see if the node is a span, to avoid
the expense of getAttribute in the common case.
* page/Frame.cpp:
(WebCore::Frame::selectionLayoutChanged): Selection::start() and end()
will already be at VisiblePosition deepEquivalents. Selection::validate()
ensures this.
LayoutTests:
2008-05-14 Justin Garcia <justin.garcia@apple.com>
Reviewed by Darin.
<rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition
Replacing all the text in a node is now much less likely to remove it
and cause selection changes.
* platform/mac/editing/input/text-input-controller-expected.txt:
* platform/mac/editing/inserting/4959067-expected.txt:
* platform/mac/editing/style/style-3681552-fix-001-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Wed, 14 May 2008 19:01:30 +0000 (19:01 +0000)]
Reviewed by Dan Bernstein.
NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.
* Plugins/nptextinput.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Wed, 14 May 2008 18:33:04 +0000 (18:33 +0000)]
Make the Inspector able to handle being reloaded
When Reload was selected from the context menu in the Inspector, the
Inspector window would close and never be openable again. Now it
closes, then reopens when the page finishes loading.
Reviewed by Tim Hatcher.
* page/InspectorController.cpp:
(WebCore::InspectorController::close): Removed code that cleared out
m_page. This is now handled by pageDestroyed.
* page/InspectorController.h:
(WebCore::InspectorController::inspectedPageDestroyed): Added.
* page/Page.cpp:
(WebCore::Page::~Page): Fixed a bug and added a call to the new
inspectedPageDestroyed. If we have a parent InspectorController, that
means that we are the Page in the Inspector's window (i.e., we are the
Inspector's UI), so when we are destroyed we should call
InspectorController::pageDestroyed. We also need to call
inspectedPageDestroyed on our own InspectorController so that it won't
try to call into us.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Wed, 14 May 2008 18:21:24 +0000 (18:21 +0000)]
2008-05-14 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
- isDarwin() and isCygwin() returned an empty string if the platform equality check fails.
We now force the return value to be numeric.
- Removed platform checks as it was a work around the previous issue.
- Replaced isDarwin() by isOSX() as they have now the same behaviour.
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 14 May 2008 17:55:33 +0000 (17:55 +0000)]
Add pause on exception support to the Inspector debugger
with a toggle buttons to enable or disable it.
Reviewed by Adam Roben.
* page/InspectorController.cpp:
(WebCore::pauseOnExceptions): Call the InspectorController.
(WebCore::setPauseOnExceptions): Ditto.
(WebCore::InspectorController::windowScriptObjectAvailable): Add the new
setPauseOnExceptions and pauseOnExceptions functions to the JS class.
(WebCore::InspectorController::pauseOnExceptions): Call JavaScriptDebugServer.
(WebCore::InspectorController::setPauseOnExceptions): Ditto.
* page/InspectorController.h:
* page/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::setPauseOnExceptions): Set m_pauseOnExceptions.
(WebCore::JavaScriptDebugServer::exception): Check m_pauseOnExceptions
and set m_pauseOnNextStatement to true before calling pauseIfNeeded.
* page/JavaScriptDebugServer.h:
* page/inspector/Images/pauseOnExceptionButtons.png: Added.
* page/inspector/ScriptsPanel.js: Adds a status bar button that calls
the new InspectorController functions.
* page/inspector/inspector.css: New styles.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 14 May 2008 17:55:22 +0000 (17:55 +0000)]
Rename the Scope Chain pane to Scope Variables. Name the global
object Global. Name objects before the locals "With Block".
Name colsure scopes "Closure". Name any element or document
after Local, "Event Target" and "Event Document", respectfully.
Reviewed by Adam Roben.
* English.lproj/localizedStrings.js: Add new strings.
* page/inspector/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection): Add a new argument that is used
for the empty placeholder text.
(WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use the
empty placeholder text.
* page/inspector/ScopeChainSidebarPane.js:
(WebInspector.ScopeChainSidebarPane): Rename Scope Chain to Scope Variables.
(WebInspector.ScopeChainSidebarPane.prototype.update): Use the object name as
the subtitle. Use "Global" for the global object title. Use "With Block" for
the title of objects before the locals. Use "No Variables" for the empty
placeholder text for locals.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33444
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Wed, 14 May 2008 16:34:17 +0000 (16:34 +0000)]
Reviewed by Darin.
<rdar://problem/5934376> REGRESSION: A script fails because of a straw BOM character in it.
<https://bugs.webkit.org/show_bug.cgi?id=4931>
Unicode format characters (Cf) should be removed from JavaScript source
Of all Cf characters, we are only removing BOM, because this is what Firefox trunk has
settled upon, after extensive discussion and investigation.
Based on Darin's work on this bug.
Test: fast/js/removing-Cf-characters.html
* kjs/lexer.cpp:
(KJS::Lexer::setCode): Tweak formatting. Use a call to shift(4) to read in the
first characters, instead of having special case code here.
(KJS::Lexer::shift): Add a loop when reading a character to skip BOM characters.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33443
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@webkit.org [Wed, 14 May 2008 16:18:59 +0000 (16:18 +0000)]
2008-05-14 Michael A. Puls II <shadow2531@gmail.com>
Reviewed by Alexey.
Fix for https://bugs.webkit.org/show_bug.cgi?id=16923
Attr nodes with a value of "" should not have any childNodes
In Opera, Firefox and IE, when an attribute node has a value
of "", the attribute node doesn't have any childNodes. This
is true in WebKit also, but not when you assign "" to the
Attr's value when the existing value is non-empty.
Test: fast/dom/attribute-empty-value-no-children.html
* dom/Attr.cpp: (WebCore::Attr::setValue): Use createTextChild(), which only appends
a child text node if the value being assigned is not empty.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33442
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jchaffraix@webkit.org [Wed, 14 May 2008 15:50:31 +0000 (15:50 +0000)]
2008-05-14 Julien Chaffraix <jchaffraix@webkit.org>
Reviewed by Eric.
GCC 4.3 build fix.
Removes some compiler warnings.
* dom/Document.h:
(WebCore::FormElementKey::hashTableDeletedValue): GCC complained about the const keyword
so remove it as it is only used inside FormElementKey.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Correct coding style (removes
a warning too).
* loader/appcache/ApplicationCacheResource.cpp: Include stdio.h for gcc4.3 build.
* plugins/PluginPackage.cpp:
(WebCore::PluginPackage::PluginPackage): Changed initialization order in the constructor.
* plugins/PluginView.cpp:
(WebCore::PluginView::PluginView): Ditto.
* plugins/PluginView.h:
* xml/AccessControlList.cpp: Include stdio.h
* xml/AccessItem.cpp: Ditto.
* xml/AccessItemRule.cpp: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33441
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 14 May 2008 14:31:29 +0000 (14:31 +0000)]
2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Qt build fix. Add JSJavaScriptCallFrameCustom.cpp to the build
and implemented EventLoopQt.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33440
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 14 May 2008 12:53:27 +0000 (12:53 +0000)]
2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon.
Qt build fix. Add JavaScriptCallFrame.{idl,cpp} to the build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33439
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 14 May 2008 05:06:58 +0000 (05:06 +0000)]
WebCore:
Reviewed by John Sullivan.
- Windows part of <rdar://problem/5725912> improve render quality of transformed text
* platform/graphics/win/FontCGWin.cpp:
(WebCore::Font::drawGlyphs): Added call to
wkSetCGContextFontRenderingStyle().
WebKitLibraries:
Reviewed by John Sullivan.
- WebKitSystemInterface support for <rdar://problem/5725912> improve render quality of transformed text
* libWebKitSystemInterfaceLeopard.a: Improved glyph positioning in
transformed graphics contexts.
* win/include/WebKitSystemInterface/WebKitSystemInterface.h: Added
wkSetCGContextFontRenderingStyle().
* win/lib/WebKitSystemInterface.lib: Updated.
* win/lib/WebKitSystemInterface_debug.lib: Updated.
LayoutTests:
Reviewed by John Sullivan.
- updated pixel results for <rdar://problem/5725912> improve render quality of transformed text
* platform/mac-leopard/fast/backgrounds: Added.
* platform/mac-leopard/fast/backgrounds/repeat: Added.
* platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Added.
* platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
* platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
* platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.checksum:
* platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
* platform/mac-leopard/svg/batik/text/textAnchor-expected.checksum:
* platform/mac-leopard/svg/batik/text/textAnchor-expected.png:
* platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum:
* platform/mac-leopard/svg/batik/text/textEffect3-expected.png:
* platform/mac-leopard/svg/batik/text/textFeatures-expected.checksum:
* platform/mac-leopard/svg/batik/text/textFeatures-expected.png:
* platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.checksum:
* platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
* platform/mac-leopard/svg/batik/text/textLayout-expected.checksum:
* platform/mac-leopard/svg/batik/text/textLayout-expected.png:
* platform/mac-leopard/svg/batik/text/textLength-expected.checksum:
* platform/mac-leopard/svg/batik/text/textLength-expected.png:
* platform/mac-leopard/svg/batik/text/textOnPath-expected.checksum:
* platform/mac-leopard/svg/batik/text/textOnPath-expected.png:
* platform/mac-leopard/svg/batik/text/textOnPath2-expected.checksum:
* platform/mac-leopard/svg/batik/text/textOnPath2-expected.png:
* platform/mac-leopard/svg/batik/text/textOnPath3-expected.checksum:
* platform/mac-leopard/svg/batik/text/textOnPath3-expected.png:
* platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.checksum:
* platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.png:
* platform/mac-leopard/svg/batik/text/textProperties2-expected.checksum:
* platform/mac-leopard/svg/batik/text/textProperties2-expected.png:
* platform/mac-leopard/svg/batik/text/verticalText-expected.checksum:
* platform/mac-leopard/svg/batik/text/verticalText-expected.png:
* platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.checksum:
* platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.png:
* platform/mac-leopard/svg/carto.net/button-expected.checksum:
* platform/mac-leopard/svg/carto.net/button-expected.png:
* platform/mac-leopard/svg/carto.net/colourpicker-expected.checksum:
* platform/mac-leopard/svg/carto.net/colourpicker-expected.png:
* platform/mac-leopard/svg/carto.net/combobox-expected.checksum:
* platform/mac-leopard/svg/carto.net/combobox-expected.png:
* platform/mac-leopard/svg/carto.net/scrollbar-expected.checksum:
* platform/mac-leopard/svg/carto.net/scrollbar-expected.png:
* platform/mac-leopard/svg/carto.net/selectionlist-expected.checksum:
* platform/mac-leopard/svg/carto.net/selectionlist-expected.png:
* platform/mac-leopard/svg/carto.net/slider-expected.checksum:
* platform/mac-leopard/svg/carto.net/slider-expected.png:
* platform/mac-leopard/svg/carto.net/textbox-expected.checksum:
* platform/mac-leopard/svg/carto.net/textbox-expected.png:
* platform/mac-leopard/svg/carto.net/window-expected.checksum:
* platform/mac-leopard/svg/carto.net/window-expected.png:
* platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.checksum:
* platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.png:
* platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.checksum:
* platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png:
* platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.checksum:
* platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png:
* platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.checksum:
* platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png:
* platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.checksum:
* platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.png:
* platform/mac-leopard/svg/custom/focus-ring-expected.checksum:
* platform/mac-leopard/svg/custom/focus-ring-expected.png:
* platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.checksum:
* platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.png:
* platform/mac-leopard/svg/custom/foreign-object-skew-expected.checksum:
* platform/mac-leopard/svg/custom/foreign-object-skew-expected.png:
* platform/mac-leopard/svg/custom/getTransformToElement-expected.checksum:
* platform/mac-leopard/svg/custom/getTransformToElement-expected.png:
* platform/mac-leopard/svg/custom/invalid-css-expected.checksum:
* platform/mac-leopard/svg/custom/invalid-css-expected.png:
* platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.png:
* platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.png:
* platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.png:
* platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.png:
* platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.png:
* platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.checksum:
* platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.png:
* platform/mac-leopard/svg/custom/marker-default-width-height-expected.checksum:
* platform/mac-leopard/svg/custom/marker-default-width-height-expected.png:
* platform/mac-leopard/svg/custom/multiple-title-elements-expected.checksum:
* platform/mac-leopard/svg/custom/multiple-title-elements-expected.png:
* platform/mac-leopard/svg/custom/path-textPath-simulation-expected.checksum:
* platform/mac-leopard/svg/custom/path-textPath-simulation-expected.png:
* platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum:
* platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.png:
* platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.checksum:
* platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.png:
* platform/mac-leopard/svg/custom/stroked-pattern-expected.checksum:
* platform/mac-leopard/svg/custom/stroked-pattern-expected.png:
* platform/mac-leopard/svg/custom/struct-use-09-b-expected.checksum:
* platform/mac-leopard/svg/custom/struct-use-09-b-expected.png:
* platform/mac-leopard/svg/custom/tref-update-expected.checksum:
* platform/mac-leopard/svg/custom/tref-update-expected.png:
* platform/mac-leopard/svg/custom/use-detach-expected.checksum:
* platform/mac-leopard/svg/custom/use-detach-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.png:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.png:
* platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.checksum:
* platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.png:
* platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.checksum:
* platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.png:
* platform/mac-leopard/svg/custom/viewbox-syntax-expected.checksum:
* platform/mac-leopard/svg/custom/viewbox-syntax-expected.png:
* platform/mac-leopard/svg/hixie/text/003-expected.checksum:
* platform/mac-leopard/svg/hixie/text/003-expected.png:
* platform/mac-leopard/svg/hixie/text/003b-expected.checksum:
* platform/mac-leopard/svg/hixie/text/003b-expected.png:
* platform/mac-leopard/svg/text/text-align-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-01-b-expected.png:
* platform/mac-leopard/svg/text/text-align-02-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-02-b-expected.png:
* platform/mac-leopard/svg/text/text-align-03-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-03-b-expected.png:
* platform/mac-leopard/svg/text/text-align-04-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-04-b-expected.png:
* platform/mac-leopard/svg/text/text-align-05-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-05-b-expected.png:
* platform/mac-leopard/svg/text/text-align-06-b-expected.checksum:
* platform/mac-leopard/svg/text/text-align-06-b-expected.png:
* platform/mac-leopard/svg/text/text-altglyph-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-altglyph-01-b-expected.png:
* platform/mac-leopard/svg/text/text-deco-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-deco-01-b-expected.png:
* platform/mac-leopard/svg/text/text-fonts-01-t-expected.checksum:
* platform/mac-leopard/svg/text/text-fonts-01-t-expected.png:
* platform/mac-leopard/svg/text/text-fonts-02-t-expected.checksum:
* platform/mac-leopard/svg/text/text-fonts-02-t-expected.png:
* platform/mac-leopard/svg/text/text-intro-05-t-expected.checksum:
* platform/mac-leopard/svg/text/text-intro-05-t-expected.png:
* platform/mac-leopard/svg/text/text-path-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-path-01-b-expected.png:
* platform/mac-leopard/svg/text/text-text-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-text-01-b-expected.png:
* platform/mac-leopard/svg/text/text-text-03-b-expected.checksum:
* platform/mac-leopard/svg/text/text-text-03-b-expected.png:
* platform/mac-leopard/svg/text/text-text-04-t-expected.checksum:
* platform/mac-leopard/svg/text/text-text-04-t-expected.png:
* platform/mac-leopard/svg/text/text-text-05-t-expected.checksum:
* platform/mac-leopard/svg/text/text-text-05-t-expected.png:
* platform/mac-leopard/svg/text/text-text-06-t-expected.checksum:
* platform/mac-leopard/svg/text/text-text-06-t-expected.png:
* platform/mac-leopard/svg/text/text-text-07-t-expected.checksum:
* platform/mac-leopard/svg/text/text-text-07-t-expected.png:
* platform/mac-leopard/svg/text/text-text-08-b-expected.checksum:
* platform/mac-leopard/svg/text/text-text-08-b-expected.png:
* platform/mac-leopard/svg/text/text-tref-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-tref-01-b-expected.png:
* platform/mac-leopard/svg/text/text-tselect-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-tselect-01-b-expected.png:
* platform/mac-leopard/svg/text/text-tselect-02-f-expected.checksum:
* platform/mac-leopard/svg/text/text-tselect-02-f-expected.png:
* platform/mac-leopard/svg/text/text-tspan-01-b-expected.checksum:
* platform/mac-leopard/svg/text/text-tspan-01-b-expected.png:
* platform/mac-leopard/svg/text/text-ws-01-t-expected.checksum:
* platform/mac-leopard/svg/text/text-ws-01-t-expected.png:
* platform/mac-leopard/svg/text/text-ws-02-t-expected.checksum:
* platform/mac-leopard/svg/text/text-ws-02-t-expected.png:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33431
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Wed, 14 May 2008 03:38:28 +0000 (03:38 +0000)]
2008-05-13 Alp Toker <alp@nuanti.com>
GTK+ build fix. Implement EventLoopGtk.cpp.
* GNUmakefile.am:
* platform/gtk/EventLoopGtk.cpp: Added.
(WebCore::EventLoop::cycle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Wed, 14 May 2008 03:29:14 +0000 (03:29 +0000)]
2008-05-13 Alp Toker <alp@nuanti.com>
GTK+ build fix. Fix IDL filename typo and add JavaScriptCallFrame.cpp
to the build.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33428
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Wed, 14 May 2008 03:13:28 +0000 (03:13 +0000)]
2008-05-13 Matt Lilek <webkit@mattlilek.com>
Not reviewed, partial Gtk build fix.
* GNUmakefile.am:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 14 May 2008 01:44:59 +0000 (01:44 +0000)]
Fixes a crash when stepping out in the Inspector's debugger.
http://bugs.webkit.org/show_bug.cgi?id=19037
Reviewed by Dan Bernstein.
* page/InspectorController.cpp:
(WebCore::currentCallFrame): Adds a null check of currentCallFrame,
since it can be null. Also returns JSNull to better signify this.
* page/inspector/ScriptsPanel.js: Updates the debugger interface
when stepping so the currentCallFrame isn't accessed when not paused.
Adds a _clearInterface function to remove duplicate code.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pewtermoose@webkit.org [Wed, 14 May 2008 01:29:21 +0000 (01:29 +0000)]
2008-05-13 Matt Lilek <webkit@mattlilek.com>
Not reviewed, build fix.
* kjs/date_object.cpp:
(KJS::DateObjectFuncImp::callAsFunction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33424
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 14 May 2008 00:46:41 +0000 (00:46 +0000)]
2008-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam.
Don't empty the application cache in _setCacheModel, since it will be called during initialization.
Instead, do it in [WebCache empty].
* Misc/WebCache.mm:
(+[WebCache empty]):
* WebView/WebView.mm:
(+[WebView _setCacheModel:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 14 May 2008 00:38:21 +0000 (00:38 +0000)]
2008-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam.
<rdar://problem/5933644> Implement Date.now
Implement Date.now which returns the number of milliseconds since the epoch.
* kjs/CommonIdentifiers.h:
* kjs/date_object.cpp:
(KJS::DateObjectFuncImp::):
(KJS::DateObjectImp::DateObjectImp):
(KJS::DateObjectFuncImp::callAsFunction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 13 May 2008 23:55:41 +0000 (23:55 +0000)]
<rdar://problem/5932677> AX: Submit buttons aren't returning AXTitle
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33420
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 13 May 2008 23:11:08 +0000 (23:11 +0000)]
<rdar://problem/4780592> WebKit application has its window announced as HTML content
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Tue, 13 May 2008 22:58:59 +0000 (22:58 +0000)]
Restore some ChangeLog entries that were deleted in r33395
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:31:45 +0000 (22:31 +0000)]
Adds an overlay window that covers the scripts panel and
informs the user that they need to attach the debugger.
Provides an "Attach Debugger" button below the info text.
Reviewed by Dan Bernstein.
* English.lproj/localizedStrings.js: New strings.
* page/inspector/ScriptsPanel.js:
(WebInspector.ScriptsPanel): Create the overlay elements and
append to the main panel element.
* page/inspector/inspector.css: New styles for the over lay elements.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:31:34 +0000 (22:31 +0000)]
Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean
was referencing a nil WebView under validateUserInterfaceItem.
The validateUserInterfaceItem methods was being called at a time
when the WebHTMLView is being torndown.
<rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
while mousing down on menu bar after Xcode News window is opened
Reviewed by Ada Chan.
* WebView/WebHTMLView.mm:
(-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
return NO when it is nil. Adds a comment.
* WebView/WebPDFView.mm:
(-[WebPDFView validateUserInterfaceItem:]): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:31:22 +0000 (22:31 +0000)]
Fixes the assertion and crash that would happen when inspecting a element from a frame.
This change makes JSInspectedObjectWrapper pass unwrapped objects around for global objects
that share the same page group identifier. Also returns jsUndefined() instead of 0 to prevent
crashing in release builds if the page groups don't match.
Passes all the tests in: manual-tests/inspector-wrappers
Reviewed by Adam Roben.
* bindings/js/JSInspectedObjectWrapper.cpp:
(WebCore::JSInspectedObjectWrapper::prepareIncomingValue): Return jsUndefined() instead of 0.
Call allowsUnwrappedAccessFrom instead of unwrappedExecStateMatches.
* bindings/js/JSQuarantinedObjectWrapper.cpp:
(WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Renamed from unwrappedExecStateMatches.
Return true if the pageGroupIdentifier of both wrappers match.
(WebCore::JSQuarantinedObjectWrapper::callAsFunction): Return jsUndefined() instead of 0.
* bindings/js/JSQuarantinedObjectWrapper.h: Renamed unwrappedExecStateMatches to allowsUnwrappedAccessFrom.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:31:11 +0000 (22:31 +0000)]
Fixes the hang that could happen when option-clicking to expand
a disclosure triangle in the Properties pane. This change limits
the recursion depth when expanding the tree elements.
<rdar://problem/5847681> Safari hangs when option-clicking a
disclosure triangle in the Inspector's Properties pane
Reviewed by John Sullivan.
* page/inspector/treeoutline.js:
(TreeElement.prototype.expandRecursively): Pass an empty info object to
traverseNextTreeElement to get the depthChange value. This is used to
compute a current depth. If the depth exceeds the maxDepth argument, the
item isn't expanded and children wont be populated when traverseNextTreeElement
is called until the depth goes below the maxDepth.
(TreeElement.prototype.traverseNextTreeElement): Added a new info
argument that can be optionally used to return extra info like depth change.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:30:59 +0000 (22:30 +0000)]
Adds info text to panes and sections in the Inspector's sidebars
that would normally be empty. These help the user know why there
is nothing in these sections.
Reviewed by John Sullivan.
* English.lproj/localizedStrings.js: Add strings.
* page/inspector/BreakpointsSidebarPane.js: Adds "No Breakpoints".
* page/inspector/CallStackSidebarPane.js: Adds "Not Paused".
* page/inspector/ObjectPropertiesSection.js: Adds "No Properties".
* page/inspector/ScopeChainSidebarPane.js: Adds "Not Paused".
* page/inspector/inspector.css: Adds style rules for the info elements.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:30:45 +0000 (22:30 +0000)]
Implements the rest of the Scripts panel to get the debugger
mostly working. "Basic debugging seems to work."
Reviewed by Geoff Garen.
* English.lproj/localizedStrings.js: Adds new strings.
* page/inspector/Resource.js:
(WebInspector.Resource.prototype.get scripts): Returns _scripts and
creates it lazily.
(WebInspector.Resource.prototype.addScript): Add the script object to the
front of the _scripts array.
(WebInspector.Resource.prototype.removeAllScripts): Removed all the scripts
and removes the resource back-reference.
(WebInspector.Resource.prototype.removeScript): Removes the script and
breaks the resource back-reference.
* page/inspector/ResourceView.js:
(WebInspector.ResourceView): Adds a reminder comment.
(WebInspector.ResourceView.prototype.get headersVisible): Returns _headersVisible.
(WebInspector.ResourceView.prototype.set headersVisible): Stubs out
a setter that currently just sets _headersVisible. Has a comment that
points out this needs implemented when network headers are added.
* page/inspector/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.show): Sets the headersVisible property of
the visible view to true and shows it again, in case it was being shown in Scripts.
(WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
Copies the headersVisible property from the old view to the new view.
(WebInspector.ResourcesPanel.prototype.showResource): Sets the headersVisible
property to true before showing.
* page/inspector/ScriptView.js:
(WebInspector.ScriptView): Passes in _addBreakpoint for the add breakpoint delegate.
(WebInspector.ScriptView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
for the current Script.sourceID and line.
* page/inspector/ScriptsPanel.js:
(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype.show): Sets the headersVisible property of
the visible view to false and shows it again, in case it was being shown in Resources.
(WebInspector.ScriptsPanel.prototype.addScript): Makes a new Script object and
adds it to a Resource if one is found. Registers any breakpoint that match
the new Script's source URL, and sets the sourceID of the breakpoints.
(WebInspector.ScriptsPanel.prototype.addBreakpoint): Adds the breakpoint to the
BreakpointsSidebarPane. Also adds it to _breakpointsURLMap so it can be found
later in addScript by URL. Finally adds the breakpoint to the SourceFrame that
represents the resources or script.
(WebInspector.ScriptsPanel.prototype.removeBreakpoint): Removes the breakpoint from
the BreakpointsSidebarPane, _breakpointsURLMap and SourceFrame.
(WebInspector.ScriptsPanel.prototype.debuggerPaused): Update the debugger
state variables, the buttons and the CallStackSidebarPane.
(WebInspector.ScriptsPanel.prototype.reset): Clears and resets debugger
and interface state.
(WebInspector.ScriptsPanel.prototype.get visibleView): Returns _visibleView.
(WebInspector.ScriptsPanel.prototype.set visibleView): Sets _visibleView and
calls hide on the old view and show on the new view.
(WebInspector.ScriptsPanel.prototype.showScript): Calls _showScriptOrResource.
(WebInspector.ScriptsPanel.prototype.showResource): Ditto.
(WebInspector.ScriptsPanel.prototype.scriptViewForScript): Lazily creates a
ScriptView for the Script and returns it.
(WebInspector.ScriptsPanel.prototype.sourceFrameForScript): Returns the SourceFrame
for the Script.
(WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): Returns the
SourceFrame based on the type of object passed in.
(WebInspector.ScriptsPanel.prototype._showScriptOrResource): Shows the view based on
the type of object passed in. If the object is a resource and there are breakpoints
defined for that Resource URL, then populate the SourceFrame with the breakpoints.
(WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Adds a script to the
files menu. If the Script is part of a resource, that resource is added.
(WebInspector.ScriptsPanel.prototype._removeScriptFromFilesMenu): Remove a script from
the files menu. If that script is part of a resource and it is the last script of that
resource, then remove the whole resource.
(WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine): Clears the execution
line from the SourceFrame that is showing it.
(WebInspector.ScriptsPanel.prototype._callFrameSelected): Event listener for when the
call frame changes in the CallStackSidebarPane. Triggers updates to the ScopeChainSidebarPane
and the visible view.
(WebInspector.ScriptsPanel.prototype._changeVisibleFile): Event listener for the change state
of the files select element.
(WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Update more of the
buttons to reflect the current debugger state. Updates the status text too.
(WebInspector.ScriptsPanel.prototype._toggleDebugging): Reset the UI and state when
the debugger is attached/detached.
(WebInspector.ScriptsPanel.prototype._togglePause): Call InspectorController.resumeDebugger or
InspectorController.pauseInDebugger depending on the paused state.
(WebInspector.ScriptsPanel.prototype._stepOverClicked): Call InspectorController.stepOverStatementInDebugger.
(WebInspector.ScriptsPanel.prototype._stepIntoClicked): Call InspectorController.stepIntoStatementInDebugger.
(WebInspector.ScriptsPanel.prototype._stepOutClicked): InspectorController.stepOutOfFunctionInDebugger.
* page/inspector/SourceView.js:
(WebInspector.SourceView): Passes in _addBreakpoint for the add breakpoint delegate.
(WebInspector.SourceView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
for the nearest Script's sourceID and passed in line.
* page/inspector/inspector.css: New style rules for the UI changes.
* page/inspector/inspector.js:
(WebInspector.loaded): Add the ScriptsPanel to the panels list.
(WebInspector.parsedScriptSource): Call ScriptsPanel.addScript.
(WebInspector.failedToParseScriptSource): Ditto.
(WebInspector.pausedScript): Call ScriptsPanel.debuggerPaused.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:30:29 +0000 (22:30 +0000)]
Adds implementations of the Scope Chain and Call Stack sidebar panes.
These panes use the JSJavaScriptCallFrame object that will be passed
to the update functions.
Reviewed by Kevin McCullough.
* English.lproj/localizedStrings.js: Adds new strings.
* WebCore.vcproj/WebCore.vcproj: Adds new files.
* page/inspector/CallStackSidebarPane.js:
(WebInspector.CallStackSidebarPane.prototype.update): Walk the
caller chain of the call frame and make placards for each.
(WebInspector.CallStackSidebarPane.prototype.get selectedCallFrame):
Return _selectedCallFrame.
(WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
Set _selectedCallFrame and dispatch the "call frame selected" event.
(WebInspector.CallStackSidebarPane.prototype._placardSelected):
Set the selectedCallFrame based on the clicked placard.
* page/inspector/Placard.js: Added. A user interface object that can
be used to show a title and a subtitle block with a selected state.
* page/inspector/ScopeChainSidebarPane.js: Added.
(WebInspector.ScopeChainSidebarPane): Call the base object and set the title.
(WebInspector.ScopeChainSidebarPane.prototype.update): Iterate over the
call frame's scope chain and make ObjectPropertiesSections for each.
* page/inspector/SidebarPane.js:
(WebInspector.SidebarPane.prototype): Inherit from WebInspector.Object.
* page/inspector/WebKit.qrc: Add new files.
* page/inspector/inspector.css: Add placard styles.
* page/inspector/inspector.html: Add new files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:30:16 +0000 (22:30 +0000)]
Fixes the bug where SourceViews would be blank if shown before
the Resource finished loading.
<rdar://problem/5807420> Safari's Web Inspector won't display the
contents of some CSS and JS files
Reviewed by Kevin McCullough.
* page/inspector/Resource.js:
(WebInspector.Resource.prototype.set finished): Dispatch the finished event
(WebInspector.Resource.prototype): Inherit from WebInspector.Object.prototype.
* page/inspector/SourceView.js:
(WebInspector.SourceView): Register for the finished event on the resource.
When the event fires, setup the source frame and deregister the event.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:30:05 +0000 (22:30 +0000)]
Factored most of SourceView out into SourceFrame so it can be shared
by the new ScriptView. Added the ScriptView class to be used for
scripts that arn't Resources (like eval code.) Added a simple Script
object that hold the data from the debugger parsedSource hooks. A
ScriptView holds a Script object, and uses it for source data.
Added breakpoint and execution line support to the SourceFrame
where they are visually represented in the source.
Reviewed by Kevin McCullough.
* page/inspector/inspector.js:
(WebInspector.performSearch): Change the caller of sourceFrameForResource
to use the SourceFrame result's element property.
* page/inspector/ResourcesPanel.js: Use the new SourceFrame.
* page/inspector/Script.js: Added.
* page/inspector/ScriptView.js: Added.
* page/inspector/SourceFrame.js: Added.
* page/inspector/SourceView.js: Use the new SourceFrame.
* WebCore.vcproj/WebCore.vcproj: Add new files.
* page/inspector/WebKit.qrc: Ditto.
* page/inspector/inspector.html: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:29:53 +0000 (22:29 +0000)]
Adds a Breakpoint object and basic add/remove functions on
BreakpointsSidebarPane that call the InspectorController to
add/remove the breakpoint.
Reviewed by Kevin McCullough.
* page/inspector/Breakpoint.js:
(WebInspector.Breakpoint):
(WebInspector.Breakpoint.prototype.get enabled): Return _enabled.
(WebInspector.Breakpoint.prototype.set enabled): Set _enabled and
dispatch the enabled/disabled event to listeners.
* page/inspector/BreakpointsSidebarPane.js:
(WebInspector.BreakpointsSidebarPane): Add a breakpoints array.
(WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
Adds the breakpoint to the breakpoints array. Registers for the disabled
and enabled event types. Call InspectorController.addBreakpoint if attached.
(WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
Removes the breakpoint from the breakpoints array. Deregisters for the disabled
and enabled event types. Call InspectorController.removeBreakpoint if attached.
(WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
Call InspectorController.addBreakpoint or InspectorController.removeBreakpoint
depending on the enabled state of the breakpoint.
* WebCore.vcproj/WebCore.vcproj: Add new files.
* page/inspector/WebKit.qrc: Ditto.
* page/inspector/inspector.html: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:29:42 +0000 (22:29 +0000)]
Make addSourceToFrame not dependent on InspectorResource so it
can be used to add source of a passed in string and mime-type to
a frame. Added addResourceSourceToFrame for use by SourceView.
Also fixes an assertion because of an incorrect static_cast of identifiers
to unsigned long long, when they can be unsigned.
Reviewed by Geoff Garen.
* page/InspectorController.cpp:
(WebCore::addSourceToFrame): Helper function used by addSourceToFrame
and addResourceSourceToFrame.
(WebCore::addSourceToFrame): Generalized to take a source and mime-type string.
(WebCore::addResourceSourceToFrame): Renamed from addSourceToFrame.
(WebCore::getResourceDocumentNode): Fixes the static_cast to be long long.
(WebCore::InspectorController::windowScriptObjectAvailable): Adds
addResourceSourceToFrame to the JavaScript class.
* page/inspector/SourceView.js: Use the new addResourceSourceToFrame.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:29:31 +0000 (22:29 +0000)]
Add debugger related functions to the InspectorController and
expose them to the JavaScript side of InspectorController.
Reviewed by Geoff Garen.
* page/InspectorController.cpp:
(WebCore::jsStringRef): Added helper to convert a UString to a JSStringRef.
(WebCore::currentCallFrame): Call InspectorController::currentCallFrame.
(WebCore::pauseInDebugger): Call InspectorController::pauseInDebugger.
(WebCore::resumeDebugger): Call InspectorController::resumeDebugger.
(WebCore::stepOverStatementInDebugger): Call InspectorController::stepOverStatementInDebugger.
(WebCore::stepIntoStatementInDebugger): Call InspectorController::stepIntoStatementInDebugger.
(WebCore::stepOutOfFunctionInDebugger): Call InspectorController::stepOutOfFunctionInDebugger.
(WebCore::addBreakpoint): Call InspectorController::addBreakpoint.
(WebCore::removeBreakpoint): Call InspectorController::removeBreakpoint.
(WebCore::InspectorController::windowScriptObjectAvailable): Add the new functions to the
InspectorController JavaScript class.
(WebCore::InspectorController::startDebuggingAndReloadInspectedPage): Clear breakpoints.
(WebCore::InspectorController::currentCallFrame): Return the currentCallFrame from the
JavaScriptDebugServer.
(WebCore::InspectorController::pauseInDebugger): Call JavaScriptDebugServer's pauseOnNextStatement.
(WebCore::InspectorController::resumeDebugger): Call JavaScriptDebugServer's resume.
(WebCore::InspectorController::stepOverStatementInDebugger): Call JavaScriptDebugServer's stepOverStatement.
(WebCore::InspectorController::stepIntoStatementInDebugger): Call JavaScriptDebugServer's stepIntoStatement.
(WebCore::InspectorController::stepOutOfFunctionInDebugger): Call JavaScriptDebugServer's stepOutOfFunction.
(WebCore::InspectorController::addBreakpoint): Call JavaScriptDebugServer's addBreakpoint.
(WebCore::InspectorController::removeBreakpoint): Call JavaScriptDebugServer's removeBreakpoint.
(WebCore::InspectorController::didParseSource): Call into the Inspector's JavaScript.
(WebCore::InspectorController::failedToParseSource): Ditto.
(WebCore::InspectorController::didPause): Ditto.
* page/InspectorController.h: Add new functions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:29:19 +0000 (22:29 +0000)]
Implements more debugger APIs on JavaScriptDebugServer and reduces
the number of callbacks to JavaScriptDebugListeners. These changes
will better facilitate debugger optimizations when SquirrelFish merges.
Reviewed by Kevin McCullough.
* page/InspectorController.cpp:
(WebCore::InspectorController::didParseSource): Removed the ExecState.
(WebCore::InspectorController::failedToParseSource): Ditto.
(WebCore::InspectorController::didPause): Added.
* page/InspectorController.h: Changed the JavaScriptDebugListener functions.
* page/JavaScriptDebugListener.h: Removed some callbacks and added didPause.
* page/JavaScriptDebugServer.cpp:
(WebCore::JavaScriptDebugServer::JavaScriptDebugServer): Initialize new data members.
(WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all values of m_breakpoints.
(WebCore::JavaScriptDebugServer::removeListener): Call resume if the last listener was removed.
(WebCore::JavaScriptDebugServer::hasListenersInterestedInPage): Returns true if there are any
global listeners or a listener for the page.
(WebCore::JavaScriptDebugServer::addBreakpoint): Adds and entry to m_breakpoints.
(WebCore::JavaScriptDebugServer::removeBreakpoint): Removes a entry in m_breakpoints.
(WebCore::JavaScriptDebugServer::hasBreakpoint): Checks if there is a breakpoint for the
sourceID and line.
(WebCore::JavaScriptDebugServer::clearBreakpoints): Removed all breakpoints.
(WebCore::JavaScriptDebugServer::pauseOnNextStatement): Sets m_pauseOnNextStatement to true.
(WebCore::JavaScriptDebugServer::resume): Sets m_paused to false.
(WebCore::JavaScriptDebugServer::stepIntoStatement): Calls resume and sets
m_pauseOnNextStatement to true.
(WebCore::JavaScriptDebugServer::stepOverStatement): Calls resume and sets m_pauseOnExecState to
the current call frame's ExecState.
(WebCore::JavaScriptDebugServer::stepOutOfFunction): Calls resume and sets m_pauseOnExecState to
the current call frame's caller ExecState.
(WebCore::JavaScriptDebugServer::currentCallFrame): Returns m_currentCallFrame if paused.
(WebCore::dispatchDidParseSource): Removed the ExecState argument.
(WebCore::dispatchFailedToParseSource): Ditto.
(WebCore::JavaScriptDebugServer::sourceParsed): Doesn't pass the ExecState to dispatchDidParseSource
or dispatchFailedToParseSource.
(WebCore::dispatchFunctionToListeners):
(WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Removes all the arguments passed
to the callback.
(WebCore::JavaScriptDebugServer::setJavaScriptPaused): Various overloaded functions
to pause parts of WebCore to prevent JavaScript execution while paused.
(WebCore::JavaScriptDebugServer::pauseIfNeeded): Decides if the debugger should pause based
on the passed in ExecState, source ID and line number. This checks for breakpoints, stepping, etc.
Calls didPause on all the listeners and spins a EventLoop until resume is called.
(WebCore::JavaScriptDebugServer::callEvent): Call pauseIfNeeded.
(WebCore::JavaScriptDebugServer::atStatement): Ditto.
(WebCore::JavaScriptDebugServer::returnEvent): Ditto.
(WebCore::JavaScriptDebugServer::exception): Ditto.
* page/JavaScriptDebugServer.h: Added new functions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:29:08 +0000 (22:29 +0000)]
Change View.show to call detach if the parentNode dosen't
match before appending to the passed in parent element.
This also prevents appending to the same parent element
multiple times.
Reviewed by John Sullivan.
* page/inspector/FontView.js:
(WebInspector.FontView.prototype.show): Pass the parent element to View.show.
* page/inspector/ResourceView.js: Optimize the attach method to no append if
there is a parentNode already.
* page/inspector/SourceView.js: Ditto.
* page/inspector/View.js: Call detach before appending if the parentNode
doesn't match the passed in element.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:28:55 +0000 (22:28 +0000)]
Optimize the panel attach method to no append if there is a
parentNode already.
Reviewed by Adam Roben.
* page/inspector/Panel.js:
(WebInspector.Panel.prototype.attach): Don't append to main-panels
if the panel element already has a parentNode.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:28:44 +0000 (22:28 +0000)]
Add Widget::isPluginView so the JavaScriptDebugServer can identify
plugins that need to be paused during debugging. This will be used
in a upcoming commit.
Reviewed by Kevin McCullough.
* platform/Widget.h: Add isPluginView. Return false.
* plugins/PluginView.h: Add isPluginView. Return true.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 13 May 2008 22:28:32 +0000 (22:28 +0000)]
Adds an event loop abstraction to platform. This abstraction will be
used by the JavaScriptDebugServer to implement pausing.
Reviewed by Kevin McCullough.
* platform/EventLoop.h: Added.
(WebCore::EventLoop::EventLoop):
(WebCore::EventLoop::ended): Return m_ended.
* platform/mac/EventLoopMac.mm: Added.
(WebCore::EventLoop::cycle): Call nextEventMatchingMask and then sendEvent.
* platform/win/EventLoopWin.cpp: Added.
(WebCore::EventLoop::cycle): Call GetMessage, TranslateMessage and DispatchMessage.
* WebCore.xcodeproj/project.pbxproj: Add new files.
* WebCore.vcproj/WebCore.vcproj: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc