Windows build fixes
[WebKit-https.git] / WebCore / ChangeLog
1 2008-07-14  Adam Roben  <aroben@apple.com>
2
3         Windows build fixes
4
5         * WebCore.vcproj/WebCore.vcproj: Add include/pthreads to the include
6         path.
7         * bindings/scripts/CodeGeneratorCOM.pm: Touched this to force COM
8         bindings to regenerate.
9         * loader/FTPDirectoryDocument.cpp:
10         * loader/FTPDirectoryParser.cpp:
11         Fixed some duplicate macro definitions now that we're including
12         pthread.h again.
13
14 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
15
16         Reviewed by Kevin McCullough.
17
18         Make JSGlobalData refcounted in preparation to adding a way to create contexts that share
19         global data.
20
21         * bindings/js/JSDOMWindowBase.cpp:
22         (WebCore::JSDOMWindowBase::commonJSGlobalData): Create JSGlobalData with create() method.
23
24 2008-07-14  Simon Hausmann  <hausmann@webkit.org>
25
26         Reviewed by Holger.
27
28         Make listDirectory() in the Qt port work with empty namefilters.
29         Don't include . and .. to avoid scanning the parent directory.
30
31         * platform/qt/FileSystemQt.cpp:
32         (WebCore::listDirectory):
33
34 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
35
36         Reviewed by Geoff Garen.
37
38         Eliminate per-thread JavaScript global data instance support and make arbitrary
39         global data/global object combinations possible.
40
41         * bindings/js/JSDOMWindowBase.h:
42         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData): Added.
43         WebCore uses its own instance of JSGlobalData, as JSC no longer provides a per-thread one.
44
45         * bindings/js/JSDOMWindowShell.cpp:
46         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
47         (WebCore::JSDOMWindowShell::operator new):
48         * bindings/js/ScriptController.cpp:
49         (WebCore::ScriptController::clear):
50         * bindings/scripts/CodeGeneratorJS.pm:
51         Pass commonJSGlobalData() as an allocator.
52
53         * bridge/c/c_utility.cpp:
54         (KJS::Bindings::identifierFromNPIdentifier):
55         * bridge/jni/jni_class.cpp:
56         (JavaClass::JavaClass):
57         * history/CachedPage.cpp:
58         (WebCore::CachedPage::restore):
59         * storage/Database.cpp:
60         (WebCore::Database::Database):
61         * bindings/js/GCController.cpp:
62         (WebCore::collect):
63         (WebCore::GCController::gcTimerFired):
64         (WebCore::GCController::garbageCollectNow):
65         Use JSDOMWindow::commonJSGlobalData().
66
67         * ForwardingHeaders/wtf/ThreadSpecific.h: Added (collector.h now includes this header, so
68         it need to be accesible outside of JSC).
69
70         * WebCore.base.exp: Export JSDOMWindowBase::commonJSGlobalData().
71
72 2008-07-14  Ariya Hidayat  <ariya.hidayat@trolltech.com>
73
74         Reviewed by Simon.
75
76         MinGW build fixes
77
78         * plugins/win/PluginDatabaseWin.cpp:
79         * plugins/win/PluginViewWin.cpp:
80         (WebCore::PluginView::handleKeyboardEvent):
81         (WebCore::PluginView::handleMouseEvent):
82         * svg/SynchronizableTypeWrapper.h:
83         (WebCore::::SynchronizableTypeWrapper):
84
85 2008-07-13  Sam Weinig  <sam@webkit.org>
86
87         Reviewed by Oliver Hunt and Dan Bernstein.
88
89         Fix for <rdar://problem/5888127>
90         https://bugs.webkit.org/show_bug.cgi?id=18699
91
92         - Match Firefox in restricting the size of custom cursor to images to
93           128x128 px.
94         - Restrict custom cursor hotspots to values within the bounds of the
95           cursor image.
96
97         * manual-tests/cursor-max-size.html: Added.
98         * page/EventHandler.cpp:
99         (WebCore::EventHandler::selectCursor):
100
101 2008-07-13  Kevin Ollivier  <kevino@theolliviers.com>
102
103         wx build fix.
104
105         * platform/graphics/wx/AffineTransformWx.cpp:
106         (WebCore::AffineTransform::a):
107         (WebCore::AffineTransform::b):
108         (WebCore::AffineTransform::c):
109         (WebCore::AffineTransform::d):
110         (WebCore::AffineTransform::e):
111         (WebCore::AffineTransform::f):
112
113 2008-07-12  Dan Bernstein  <mitz@apple.com>
114
115         Reviewed by Oliver Hunt.
116
117         - fix https://bugs.webkit.org/show_bug.cgi?id=18088
118           <rdar://problem/6036232> white-space:nowrap; float:left; causing the misalignment issue
119
120         Test: fast/block/basic/min-pref-width-nowrap-floats.html
121
122         * rendering/RenderBlock.cpp:
123         (WebCore::RenderBlock::calcInlinePrefWidths): Fixed a case where a
124         float's width was added to the minimum preferred widths instead of just
125         acting as a lower bound on the minimum preferred width (since the float
126         can always be pushed down to be the only thing on the line).
127
128 2008-07-12  David D. Kilzer  <ddkilzer@webkit.org>
129
130         Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page
131
132         <https://bugs.webkit.org/show_bug.cgi?id=13067>
133
134         Reviewed by Darin.
135
136         Test: WebCore/manual-tests/hash-ref.html
137
138         * loader/FrameLoader.cpp:
139         (WebCore::FrameLoader::load(const KURL& newURL, const String& referrer,
140              FrameLoadType newLoadType, const String& frameName, Event* event,
141              PassRefPtr<FormState> formState)): Extracted logic into
142         shouldScrollToAnchor() for determining when to scroll to an anchor.
143
144         (WebCore::FrameLoader::load(DocumentLoader* loader, FrameLoadType type,
145              PassRefPtr<FormState> formState)): Added check for
146         shouldScrollToAnchor() to catch cases when the user manually added a
147         hash ref to the URL in the address bar.  This is the bug fix.
148
149         (WebCore::FrameLoader::shouldReload): Simplified early return logic.
150         We only need to check if the destinationURL has a hash ref, not the
151         currentURL, per the comment in the method.
152
153         (WebCore::FrameLoader::shouldScrollToAnchor): Added.  Logic extracted
154         from the FrameLoader::load(const KURL& newURL, ...) method.  Fixed order
155         of arguments to shouldReload() since they were backwards, although the
156         previous logic in the method made this irrelevant.
157
158         (WebCore::FrameLoader::loadItem): Removed call to shouldReload().  Since
159         we're navigating to a HistoryItem, it doesn't make sense to ask whether
160         we need to reload the page or not.  Additionally, the logic at the end
161         of shouldReload() is also checked in urlsMatchItem(), so there's no need
162         to call the method.  This fixed the fast/css/target-fragment-match.html
163         test from continuously reloading after the other changes.
164
165         * loader/FrameLoader.h:
166         (WebCore::FrameLoader::shouldScrollToAnchor): Added.
167
168         * manual-tests/hash-ref.html: Added.
169         * manual-tests/resources/hash-ref-test.html: Added.
170
171 2008-07-11  Stephanie Lewis  <slewis@apple.com>
172
173         Reviewed by Darin Adler.
174
175         No Functionality Changed.  Change all the leak counting code to use the new WTF leak counter class.
176
177         * bindings/js/JSCustomSQLTransactionCallback.cpp:
178         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
179         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
180         * bindings/js/JSEventListener.cpp:
181         (WebCore::JSEventListener::JSEventListener):
182         (WebCore::JSEventListener::~JSEventListener):
183         * dom/Node.cpp:
184         (WebCore::Node::Node):
185         (WebCore::Node::~Node):
186         * dom/Range.cpp:
187         (WebCore::Range::Range):
188         (WebCore::Range::~Range):
189         * history/CachedPage.cpp:
190         (WebCore::CachedPage::CachedPage):
191         (WebCore::CachedPage::~CachedPage):
192         * loader/SubresourceLoader.cpp:
193         (WebCore::SubresourceLoader::SubresourceLoader):
194         (WebCore::SubresourceLoader::~SubresourceLoader):
195         * page/Frame.cpp:
196         (WebCore::Frame::Frame):
197         (WebCore::Frame::~Frame):
198         * page/Page.cpp:
199         (WebCore::Page::Page):
200         (WebCore::Page::~Page):
201         * rendering/RenderObject.cpp:
202         (WebCore::RenderObject::RenderObject):
203         (WebCore::RenderObject::~RenderObject):
204         * rendering/bidi.cpp:
205         (WebCore::throw):
206         (WebCore::BidiRun::operator delete):
207
208 2008-07-11  Sam Weinig  <sam@webkit.org>
209
210         Reviewed by Mark Rowe.
211
212         Update getSubStringLength and selectSubString methods exception throwing conditions
213         based on SVG working group errata.
214
215         Test: svg/custom/selectSubString.html
216
217         * svg/SVGTextContentElement.cpp:
218         (WebCore::SVGTextContentElement::getSubStringLength):
219         (WebCore::SVGTextContentElement::selectSubString):
220
221 2008-07-11  Sam Weinig  <sam@webkit.org>
222
223         Reviewed by Mark Rowe.
224
225         We can only use the Id fast path for querySelector and querySelectorAll
226         if the selector is purely an Id selector.
227
228         Test: fast/dom/SelectorAPI/id-fastpath.html
229
230         * dom/Node.cpp:
231         (WebCore::Node::querySelector):
232         * dom/SelectorNodeList.cpp:
233         (WebCore::createSelectorNodeList):
234
235 2008-07-11  David Hyatt  <hyatt@apple.com>
236
237         Implement the DOM level 3 compareDocumentPosition method on Node.
238
239         Reviewed by Darin
240
241         * dom/Node.cpp:
242         (WebCore::Node::compareDocumentPosition):
243         * dom/Node.h:
244         * dom/Node.idl:
245
246 2008-07-11  Brady Eidson  <beidson@apple.com>
247
248         Rubberstamped by Sam
249
250         Removed unneeded export
251
252         * WebCore.base.exp:
253
254 2008-07-11  Kevin McCullough  <kmccullough@apple.com>
255
256         Reviewed by Geoff.
257
258         <rdar://problem/6067178> REGRESSION: Start profile button in profiler
259         now profiles inspector rather than actual page (19833)
260         - The JSQuarantinedObjectWrapper should use the wrapped exec state
261         so that calls to it execute in its quarantined world.
262
263         * bindings/js/JSQuarantinedObjectWrapper.cpp:
264         (WebCore::JSQuarantinedObjectWrapper::construct):
265         (WebCore::JSQuarantinedObjectWrapper::call):
266
267 2008-07-11  Simon Fraser  <simon.fraser@apple.com>
268
269         Reviewed by Dave Hyatt
270
271         StyleRareNonInheritedData needs to initialize and compare
272         m_maskBoxImage.
273         <https://bugs.webkit.org/show_bug.cgi?id=20005>
274
275         * rendering/style/RenderStyle.cpp:
276         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
277         (WebCore::StyleRareNonInheritedData::operator==):
278
279 2008-07-11  Simon Fraser  <simon.fraser@apple.com>
280
281         Reviewed by Dave Hyatt
282
283         Bug 18885: RenderLayer::enclosingPositionedAncestor() should
284         look for transforms, since transforms create containing
285         blocks.
286         <https://bugs.webkit.org/show_bug.cgi?id=18885>
287
288         Test: fast/transforms/transform-positioned-ancestor.html
289
290         * rendering/RenderLayer.cpp:
291         (WebCore::RenderLayer::stackingContext):
292         (WebCore::RenderLayer::enclosingPositionedAncestor):
293         (WebCore::RenderLayer::enclosingTransformedAncestor):
294
295 2008-07-11  Jacob Refstrup  <jacob.refstrup@hp.com>
296
297         Reviewed by Darin Adler
298
299         http://bugs.webkit.org/show_bug.cgi?id=19978
300         GTK port always ends up with # at the end of resource URLs (and hence can't load files)
301
302         - Optimized KURL::removeRef() and used it rather than setRef("")
303           which after r35040 does the wrong thing.
304
305         * platform/KURL.cpp:
306         (WebCore::KURL::removeRef):
307         * platform/network/curl/ResourceHandleManager.cpp:
308         (WebCore::ResourceHandleManager::initializeHandle):
309
310 2008-07-11  Simon Hausmann  <hausmann@webkit.org>
311
312         Fix the Qt/Windows build, include windows.h for HWND directly
313         instead of implicit inclusion through Timer.h.
314
315         * plugins/win/PluginMessageThrottlerWin.h:
316
317 2008-07-11  Dan Bernstein  <mitz@apple.com>
318
319         Reviewed by Darin Adler.
320
321         - fix popularity tracking for cached resources, which regressed in r23923
322
323         * loader/Cache.cpp:
324         (WebCore::Cache::requestResource): Changed to increase the access count
325         whenever this function returns a CachedResource and the cache is
326         enabled, instead of only when creating a new CachedResources. The
327         incorrect behavior resulted in all resources in the cache having an
328         access count of exactly 1 at all times.
329         (WebCore::Cache::requestUserCSSStyleSheet): Ditto.
330
331 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
332
333         Reviewed by Simon.
334
335         Enable Netscape plugins for the Qt/Windows build.
336
337         This required various smaller fixes across a wider set of
338         files described below.
339
340         * WebCore.pro: Add various windows specific files to the build.
341         * page/Page.h: Extend the #ifdeffery for windows types to include the
342         Qt/Windows build.
343         * platform/graphics/GraphicsContext.h: Added inTransparencyLayer() for
344         the Qt port, as PluginViewWin.cpp uses it.
345         * platform/graphics/qt/GraphicsContextQt.cpp:
346         (WebCore::GraphicsContext::inTransparencyLayer): Implemented function.
347         * platform/qt/TemporaryLinkStubs.cpp: Mask out some stubs as they
348         are now implemented through *Win.cpp files.
349         * plugins/PluginDatabase.cpp: Change PLATFORM(WIN) to WIN_OS.
350         * plugins/PluginView.cpp: Change PLATFORM(WIN) to WIN_OS.
351         (WebCore::PluginView::setFrameGeometry): Ditto.
352         (WebCore::PluginView::PluginView): Ditto.
353         * plugins/PluginView.h: Introduce the PlatformPluginWidget typedef,
354         which expands to HWND directly for the Qt/Windows build and
355         PlatformWidget for the remaining platforms. That is because
356         PlatformWidget is QWidget* for the Qt build but for the plugin
357         window we need a native window, aka HWND.
358         * plugins/win/PluginPackageWin.cpp: Fix compilation, include shlwapi.h
359         after config.h.
360         * plugins/win/PluginViewWin.cpp:
361         (windowHandleForPlatformWidget): Added a little helper function to
362         determine the HWND from a PlatformWidget.
363         (WebCore::registerPluginView): For the Qt port we need to set the
364         global application instance handle here in the library, as the
365         browser doesn't do it.
366         (WebCore::PluginView::handleMouseEvent): Mask out
367         ignoreNextSetCursor/lastSetCursor for the Qt port, it's not used.
368         (WebCore::PluginView::invalidateRect): Convert from IntRect to RECT
369         manually just here to avoid compiling in IntRectWin.cpp.
370         (WebCore::PluginView::invalidateRegion): Ditto.
371         (WebCore::PluginView::forceRedraw): Call windowHandleForPlatformWidget
372         on containingWindow() to get the correct HWND for the Qt port.
373         (WebCore::PluginView::init): Determine the parent HWND for m_window
374         using windowHandleForPlatformWidget.
375
376 2008-07-11  Simon Hausmann  <hausmann@webkit.org>
377
378         Rubber-stamped by Holger.
379
380         Enable Database and Icondatabase functionality for the Qt/Windows
381         build when building inside Qt, as we can use the builtin copy of
382         sqlite then.
383
384         * WebCore.pro:
385
386 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
387
388         Reviewed by Adam Roben.
389
390         Fix compile with MinGW since it does not like friend static function.
391
392         * plugins/PluginView.h:
393         * plugins/win/PluginViewWin.cpp:
394
395 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
396
397         Reviewed by Simon.
398
399         Fix Qt/Win32 build.
400
401         * platform/graphics/qt/GraphicsContextQt.cpp:
402
403 2008-07-10  Sam Weinig  <sam@webkit.org>
404
405         Reviewed by Oliver Hunt.
406
407         Add support for NSResolver to resolve namespaces for querySelector 
408         and querySelectorAll.
409
410         - Namespace resolution is done after parsing by iterating over all the
411           parts of the CSSSelector.
412
413         Tests: fast/dom/SelectorAPI/NSResolver-basic.xhtml
414                fast/dom/SelectorAPI/NSResolver-exceptions.xhtml
415
416         * GNUmakefile.am: Updated with new files.
417         * WebCore.pro: Ditto.
418         * WebCore.vcproj/WebCore.vcproj: Ditto.
419         * WebCore.xcodeproj/project.pbxproj: Ditto.
420         * WebCoreSources.bkl: Ditto.
421
422         * bindings/js/JSDOMBinding.cpp:
423         (WebCore::execStateFromNode):
424         * bindings/js/JSDOMBinding.h:
425         Move execStateFromNode here from NodeFilter.
426
427         * bindings/js/JSDocumentCustom.cpp:
428         (WebCore::JSDocument::querySelector): Don't throw a NOT_SUPPORTED_ERR for NSResolver
429         and instead create one if the argument is not undefined or null.
430         (WebCore::JSDocument::querySelectorAll): Ditto.
431         * bindings/js/JSDocumentFragmentCustom.cpp:
432         (WebCore::JSDocumentFragment::querySelector): Ditto.
433         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
434         * bindings/js/JSElementCustom.cpp:
435         (WebCore::JSElement::querySelector): Ditto.
436         (WebCore::JSElement::querySelectorAll): Ditto.
437
438         * bindings/js/JSNSResolver.cpp: Added.
439         (WebCore::JSNSResolver::JSNSResolver):
440         (WebCore::JSNSResolver::mark):
441         (WebCore::JSNSResolver::lookupNamespaceURI): Try and get the function
442         from the passed in argument, either the value itself, or the result of
443         getting the lookupNamespaceURI property, and call it.
444         (WebCore::toNSResolver):
445         * bindings/js/JSNSResolver.h: Added.
446         (WebCore::JSNSResolver::create):
447
448         * dom/Document.idl: Update with NSResolver parameter.
449         * dom/DocumentFragment.idl: Ditto.
450         * dom/Element.idl: Ditto.
451
452         * dom/NSResolver.h: Added.
453         (WebCore::NSResolver::~NSResolver):
454         (WebCore::NSResolver::mark):
455         Abstract base class.
456
457         * dom/NSResolver.idl: Added.
458
459         * dom/Node.cpp:
460         (WebCore::forEachTagSelector):
461         (WebCore::forEachSelector):
462         Functions to iterate over all parts of the selector.
463
464         (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
465         Functor to be passed to forEachSelector to determine if a selector
466         needs namespace resolution, for the case when no NSResolver is passed
467         and we need to determine whether to throw a NAMESPACE_ERR.
468
469         (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
470         (WebCore::ResolveNamespaceFunctor::operator()):
471         Functor to resolve namespaces for the selector.
472
473         (WebCore::selectorNeedsNamespaceResolution):
474         (WebCore::resolveNamespacesForSelector):
475         (WebCore::Node::querySelector): Resolve namepspaces, including the defaultNamespace
476         if a NSResolver is passed in.
477         (WebCore::Node::querySelectorAll): Ditto.
478         * dom/Node.h:
479
480         * dom/NodeFilter.cpp:
481         * dom/NodeFilter.h:
482         * dom/NodeIterator.h:
483         (WebCore::NodeIterator::nextNode):
484         (WebCore::NodeIterator::previousNode):
485         * dom/TreeWalker.h:
486         (WebCore::TreeWalker::parentNode):
487         (WebCore::TreeWalker::firstChild):
488         (WebCore::TreeWalker::lastChild):
489         (WebCore::TreeWalker::previousSibling):
490         (WebCore::TreeWalker::nextSibling):
491         (WebCore::TreeWalker::previousNode):
492         (WebCore::TreeWalker::nextNode):
493         Use the version of execStateFromNode in JSDOMBinding.
494
495 2008-07-10  Mark Rowe  <mrowe@apple.com>
496
497         Reviewed by Sam Weinig.
498
499         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
500
501         * Configurations/WebCore.xcconfig:
502
503 2008-07-10  Dean Jackson  <dino@apple.com>
504
505         Reviewed by hyatt.
506
507         Calculate computed style for -webkit-transform property
508         https://bugs.webkit.org/show_bug.cgi?id=19864
509
510         Test: css3/transform-computed-style-001.html
511
512         * css/CSSComputedStyleDeclaration.cpp:
513         (WebCore::computedTransform):
514         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
515             handles -webkit-transform property now
516         * manual-tests/computed-transform-value.html: Added.
517
518 2008-07-10  Dan Bernstein  <mitz@apple.com>
519
520         Reviewed by Adam Roben.
521
522         - fix a parse error in inspector.js
523
524         * page/inspector/inspector.js: Added missing brace.
525
526 2008-07-10  Adam Roben  <aroben@apple.com>
527
528         Build fix
529
530         * WebCore.vcproj/QTMovieWin.vcproj: Add
531         OSXCompatibilityHeaders[/GNUCompatibility] to the include path.
532
533 2008-07-10  Chris Fleizach  <cfleizach@apple.com>
534
535         Reviewed by Dan Bernstein
536
537         <rdar://problem/6067408> AX: internal anchors broken
538
539         * page/AccessibilityRenderObject.cpp:
540         (WebCore::AccessibilityRenderObject::internalLinkElement):
541         * platform/KURL.cpp:
542         (WebCore::KURL::removeRef):
543         * platform/KURL.h:
544
545 2008-07-10  Mark Rowe  <mrowe@apple.com>
546
547         Build fix.
548
549         * bridge/npapi.h: Remove extra comma.
550
551 2008-07-10  Sam Weinig  <sam@webkit.org>
552
553         Reviewed by Mark Rowe.
554
555         Remove no-op debug method.
556
557         * css/CSSSelector.cpp:
558         * css/CSSSelector.h:
559
560 2008-07-10  Sam Weinig  <sam@webkit.org>
561
562         Reviewed by Dave Hyatt and Darin Adler.
563
564         Add support for calling querySelector and querySelectorAll on DocumentFragments
565
566         - Fixes bug where nodes not in the document tree would not match based on ID due
567           to over optimization.
568
569         Test: fast/dom/SelectorAPI/detached-element.html
570
571         * GNUmakefile.am:
572         * WebCore.pro:
573         * WebCore.vcproj/WebCore.vcproj:
574         * WebCore.xcodeproj/project.pbxproj:
575         * WebCoreSources.bkl:
576         * bindings/js/JSDocumentFragmentCustom.cpp: Added.
577         (WebCore::JSDocumentFragment::querySelector): Add custom code matching JSElement
578         and JSDocument that checks for a 2nd arguments and throws an exception indicating
579         we do not currently support the optional NSResolver part of the Selectors API spec.
580         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
581         * dom/DocumentFragment.idl: Add querySelector and querySelectorAll declarations.
582
583         * dom/Node.cpp:
584         (WebCore::Node::querySelector): Make the CSS parser parse the selector
585         according to the strictness of the document so that mixed case ID selectors
586         match in quirks mode.  Also, don't use the fast ID path if the root is not
587         in the DOM tree, as it won't work.
588         (WebCore::Node::querySelectorAll): Ditto.
589         * dom/SelectorNodeList.cpp:
590         (WebCore::createSelectorNodeList): Don't use the fast ID path if the root is not
591         in the DOM tree, as it won't work.
592
593 2008-07-10  Anthony Ricaud  <rik24d@gmail.com>
594
595         Bug 19389: querySelectorAll exception while searching invalid CSS selector
596         <https://bugs.webkit.org/show_bug.cgi?id=19389>
597
598         Reviewed by Tim Hatcher.
599
600         * page/inspector/inspector.js: Added a try/catch block.
601
602 2008-07-10  Brent Fulgham  <bfulgham@gmail.com>
603
604         Correct a build regression due to an uninitialized variable.
605
606         <https://bugs.webkit.org/show_bug.cgi?id=19976>
607
608         Reviewed by Darin.
609
610         * platform/graphics/cairo/FontCairo.cpp:
611         (WebCore::Font::drawGlyphs):
612
613 2008-07-10  Adam Roben  <aroben@apple.com>
614
615         Fix Bug 19580: REGRESSION (r34432): PGO-only crash in
616         HTMLCollection::resetCollectionInfo (codegen issue?)
617
618         <https://bugs.webkit.org/show_bug.cgi?id=19580>
619         <rdar://6029794>
620
621         Reviewed by Cameron Zwarich.
622
623         * WebCore.vcproj/WebCore.vcproj: Disable LTCG for HTMLFormElement.cpp,
624         which was causing some bad codegen in HTMLFormElement::elements.
625         * html/HTMLFormElement.cpp: Touched this file to force it to rebuild.
626
627 2008-07-10  Anders Carlsson  <andersca@apple.com>
628
629         Reviewed by Jon.
630
631         <rdar://problem/6067135>
632         WebKit should respond true to a query for NPNVSupportsWindowless.
633         
634         Handle NPNVSupportsWindowless and return true.
635         
636         * bridge/npapi.h:
637         * plugins/win/PluginViewWin.cpp:
638         (WebCore::PluginView::getValue):
639
640 2008-07-10  Kevin McCullough  <kmccullough@apple.com>
641
642         Reviewed by Darin.
643
644         -Minor cleanup. Renamed callTree() to head() and no longer use m_head
645         directly but instead keep it private and access via a method().
646
647         * page/JavaScriptProfile.cpp:
648         (WebCore::getHeadCallback):
649
650 2008-07-10  Simon Fraser  <simon.fraser@apple.com>
651
652         When a mask image changes, ensure that elements
653         that use that mask image are repainted correctly.
654         
655         <https://bugs.webkit.org/show_bug.cgi?id=19954>
656         
657         Reviewed by Dave Hyatt
658
659         * manual-tests/canvas-mask-redraw.html
660           Manual testcase
661         * rendering/RenderBox.cpp:
662         (WebCore::RenderBox::imageChanged):
663         (WebCore::RenderBox::repaintLayerRectsForImage):
664         * rendering/RenderBox.h:
665         Loop through background layers and mask layers, and
666         if this image is used in a layer, compute a repaint
667         rect and repaint.
668         * rendering/RenderImage.cpp:
669         (WebCore::RenderImage::imageChanged):
670         If this image has a mask, call the base class method.
671         * rendering/RenderObject.cpp:
672         Remove a bogus 'return'.
673
674 2008-07-10  Simon Fraser  <simon.fraser@apple.com>
675
676         Transforms create a containing block, so
677         RenderLayer::shouldBeOverflowOnly() needs to look for transforms.
678         <https://bugs.webkit.org/show_bug.cgi?id=18886>
679         
680         Reviewed by Dave Hyatt
681
682         Test: fast/transforms/transform-overflow.html
683
684         * rendering/RenderLayer.cpp:
685         (WebCore::RenderLayer::shouldBeOverflowOnly):
686
687 2008-07-09  Alex Mathews  <possessedpenguinbob@gmail.com>
688
689         Reviewed by Oliver Hunt.
690
691         bug 19835: WebKit needs cross-platform filter system
692         <https://bugs.webkit.org/show_bug.cgi?id=19835>
693
694         More class refactoring in preparation for cross-platform filter 
695         implementation.
696
697         * WebCore.xcodeproj/project.pbxproj:
698         * rendering/SVGRenderTreeAsText.h:
699         (WebCore::operator<<):
700         * svg/FilterEffect.cpp:
701         (WebCore::FilterEffect::externalRepresentation):
702         * svg/FilterEffect.h:
703         * svg/SVGFEBlendElement.cpp:
704         (WebCore::SVGFEBlendElement::build):
705         * svg/SVGFEBlendElement.h:
706         * svg/SVGFEColorMatrixElement.cpp:
707         (WebCore::SVGFEColorMatrixElement::build):
708         * svg/SVGFEColorMatrixElement.h:
709         * svg/SVGFEComponentTransferElement.cpp:
710         (WebCore::SVGFEComponentTransferElement::build):
711         * svg/SVGFEComponentTransferElement.h:
712         * svg/SVGFECompositeElement.cpp:
713         (WebCore::SVGFECompositeElement::build):
714         * svg/SVGFECompositeElement.h:
715         * svg/SVGFEDiffuseLightingElement.cpp:
716         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
717         (WebCore::SVGFEDiffuseLightingElement::build):
718         (WebCore::SVGFEDiffuseLightingElement::findLights):
719         * svg/SVGFEDiffuseLightingElement.h:
720         * svg/SVGFEDisplacementMapElement.cpp:
721         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
722         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
723         (WebCore::SVGFEDisplacementMapElement::filterEffect):
724         (WebCore::SVGFEDisplacementMapElement::build):
725         * svg/SVGFEDisplacementMapElement.h:
726         * svg/SVGFEFloodElement.cpp:
727         (WebCore::SVGFEFloodElement::filterEffect):
728         (WebCore::SVGFEFloodElement::build):
729         * svg/SVGFEFloodElement.h:
730         (WebCore::SVGFEFloodElement::contextElement):
731         * svg/SVGFEGaussianBlurElement.cpp:
732         (WebCore::SVGFEGaussianBlurElement::filterEffect):
733         (WebCore::SVGFEGaussianBlurElement::build):
734         * svg/SVGFEGaussianBlurElement.h:
735         * svg/SVGFEImageElement.cpp:
736         (WebCore::SVGFEImageElement::filterEffect):
737         (WebCore::SVGFEImageElement::build):
738         * svg/SVGFEImageElement.h:
739         * svg/SVGFEMergeElement.cpp:
740         (WebCore::SVGFEMergeElement::filterEffect):
741         (WebCore::SVGFEMergeElement::build):
742         * svg/SVGFEMergeElement.h:
743         (WebCore::SVGFEMergeElement::contextElement):
744         * svg/SVGFEOffsetElement.cpp:
745         (WebCore::SVGFEOffsetElement::filterEffect):
746         (WebCore::SVGFEOffsetElement::build):
747         * svg/SVGFEOffsetElement.h:
748         * svg/SVGFESpecularLightingElement.cpp:
749         (WebCore::SVGFESpecularLightingElement::filterEffect):
750         (WebCore::SVGFESpecularLightingElement::findLights):
751         (WebCore::SVGFESpecularLightingElement::build):
752         * svg/SVGFESpecularLightingElement.h:
753         * svg/SVGFETileElement.cpp:
754         (WebCore::SVGFETileElement::filterEffect):
755         (WebCore::SVGFETileElement::build):
756         * svg/SVGFETileElement.h:
757         * svg/SVGFETurbulenceElement.cpp:
758         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
759         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
760         (WebCore::SVGFETurbulenceElement::filterEffect):
761         (WebCore::SVGFETurbulenceElement::build):
762         * svg/SVGFETurbulenceElement.h:
763         * svg/SVGFilterPrimitiveStandardAttributes.h:
764         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
765         (WebCore::FEConvolveMatrix::FEConvolveMatrix):
766         (WebCore::FEConvolveMatrix::create):
767         (WebCore::FEConvolveMatrix::kernelSize):
768         (WebCore::FEConvolveMatrix::setKernelSize):
769         (WebCore::FEConvolveMatrix::kernel):
770         (WebCore::FEConvolveMatrix::setKernel):
771         (WebCore::FEConvolveMatrix::divisor):
772         (WebCore::FEConvolveMatrix::setDivisor):
773         (WebCore::FEConvolveMatrix::bias):
774         (WebCore::FEConvolveMatrix::setBias):
775         (WebCore::FEConvolveMatrix::targetOffset):
776         (WebCore::FEConvolveMatrix::setTargetOffset):
777         (WebCore::FEConvolveMatrix::edgeMode):
778         (WebCore::FEConvolveMatrix::setEdgeMode):
779         (WebCore::FEConvolveMatrix::kernelUnitLength):
780         (WebCore::FEConvolveMatrix::setKernelUnitLength):
781         (WebCore::FEConvolveMatrix::preserveAlpha):
782         (WebCore::FEConvolveMatrix::setPreserveAlpha):
783         (WebCore::FEConvolveMatrix::apply):
784         (WebCore::FEConvolveMatrix::dump):
785         (WebCore::operator<<):
786         (WebCore::FEConvolveMatrix::externalRepresentation):
787         * svg/graphics/filters/SVGFEConvolveMatrix.h:
788         (WebCore::):
789         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
790         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
791         (WebCore::FEDiffuseLighting::create):
792         (WebCore::FEDiffuseLighting::~FEDiffuseLighting):
793         (WebCore::FEDiffuseLighting::lightingColor):
794         (WebCore::FEDiffuseLighting::setLightingColor):
795         (WebCore::FEDiffuseLighting::surfaceScale):
796         (WebCore::FEDiffuseLighting::setSurfaceScale):
797         (WebCore::FEDiffuseLighting::diffuseConstant):
798         (WebCore::FEDiffuseLighting::setDiffuseConstant):
799         (WebCore::FEDiffuseLighting::kernelUnitLengthX):
800         (WebCore::FEDiffuseLighting::setKernelUnitLengthX):
801         (WebCore::FEDiffuseLighting::kernelUnitLengthY):
802         (WebCore::FEDiffuseLighting::setKernelUnitLengthY):
803         (WebCore::FEDiffuseLighting::lightSource):
804         (WebCore::FEDiffuseLighting::setLightSource):
805         (WebCore::FEDiffuseLighting::apply):
806         (WebCore::FEDiffuseLighting::dump):
807         (WebCore::FEDiffuseLighting::externalRepresentation):
808         * svg/graphics/filters/SVGFEDiffuseLighting.h:
809         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
810         (WebCore::FEDisplacementMap::FEDisplacementMap):
811         (WebCore::FEDisplacementMap::create):
812         (WebCore::FEDisplacementMap::xChannelSelector):
813         (WebCore::FEDisplacementMap::setXChannelSelector):
814         (WebCore::FEDisplacementMap::yChannelSelector):
815         (WebCore::FEDisplacementMap::setYChannelSelector):
816         (WebCore::FEDisplacementMap::scale):
817         (WebCore::FEDisplacementMap::setScale):
818         (WebCore::FEDisplacementMap::apply):
819         (WebCore::FEDisplacementMap::dump):
820         (WebCore::operator<<):
821         (WebCore::FEDisplacementMap::externalRepresentation):
822         * svg/graphics/filters/SVGFEDisplacementMap.h:
823         (WebCore::):
824         * svg/graphics/filters/SVGFEFlood.cpp:
825         (WebCore::FEFlood::FEFlood):
826         (WebCore::FEFlood::create):
827         (WebCore::FEFlood::floodColor):
828         (WebCore::FEFlood::setFloodColor):
829         (WebCore::FEFlood::floodOpacity):
830         (WebCore::FEFlood::setFloodOpacity):
831         (WebCore::FEFlood::apply):
832         (WebCore::FEFlood::dump):
833         (WebCore::FEFlood::externalRepresentation):
834         * svg/graphics/filters/SVGFEFlood.h:
835         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
836         (WebCore::FEGaussianBlur::FEGaussianBlur):
837         (WebCore::FEGaussianBlur::create):
838         (WebCore::FEGaussianBlur::stdDeviationX):
839         (WebCore::FEGaussianBlur::setStdDeviationX):
840         (WebCore::FEGaussianBlur::stdDeviationY):
841         (WebCore::FEGaussianBlur::setStdDeviationY):
842         (WebCore::FEGaussianBlur::apply):
843         (WebCore::FEGaussianBlur::dump):
844         (WebCore::FEGaussianBlur::externalRepresentation):
845         * svg/graphics/filters/SVGFEGaussianBlur.h:
846         * svg/graphics/filters/SVGFEImage.cpp:
847         (WebCore::FEImage::FEImage):
848         (WebCore::FEImage::create):
849         (WebCore::FEImage::~FEImage):
850         (WebCore::FEImage::cachedImage):
851         (WebCore::FEImage::apply):
852         (WebCore::FEImage::dump):
853         (WebCore::FEImage::externalRepresentation):
854         * svg/graphics/filters/SVGFEImage.h:
855         * svg/graphics/filters/SVGFEMerge.cpp:
856         (WebCore::FEMerge::FEMerge):
857         (WebCore::FEMerge::create):
858         (WebCore::FEMerge::mergeInputs):
859         (WebCore::FEMerge::setMergeInputs):
860         (WebCore::FEMerge::apply):
861         (WebCore::FEMerge::dump):
862         (WebCore::FEMerge::externalRepresentation):
863         * svg/graphics/filters/SVGFEMerge.h:
864         * svg/graphics/filters/SVGFEMorphology.cpp:
865         (WebCore::FEMorphology::FEMorphology):
866         (WebCore::FEMorphology::create):
867         (WebCore::FEMorphology::morphologyOperator):
868         (WebCore::FEMorphology::setMorphologyOperator):
869         (WebCore::FEMorphology::radiusX):
870         (WebCore::FEMorphology::setRadiusX):
871         (WebCore::FEMorphology::radiusY):
872         (WebCore::FEMorphology::setRadiusY):
873         (WebCore::FEMorphology::apply):
874         (WebCore::FEMorphology::dump):
875         (WebCore::operator<<):
876         (WebCore::FEMorphology::externalRepresentation):
877         * svg/graphics/filters/SVGFEMorphology.h:
878         (WebCore::):
879         * svg/graphics/filters/SVGFEOffset.cpp:
880         (WebCore::FEOffset::FEOffset):
881         (WebCore::FEOffset::create):
882         (WebCore::FEOffset::dx):
883         (WebCore::FEOffset::setDx):
884         (WebCore::FEOffset::dy):
885         (WebCore::FEOffset::setDy):
886         (WebCore::FEOffset::apply):
887         (WebCore::FEOffset::dump):
888         (WebCore::FEOffset::externalRepresentation):
889         * svg/graphics/filters/SVGFEOffset.h:
890         * svg/graphics/filters/SVGFESpecularLighting.cpp:
891         (WebCore::FESpecularLighting::FESpecularLighting):
892         (WebCore::FESpecularLighting::create):
893         (WebCore::FESpecularLighting::~FESpecularLighting):
894         (WebCore::FESpecularLighting::lightingColor):
895         (WebCore::FESpecularLighting::setLightingColor):
896         (WebCore::FESpecularLighting::surfaceScale):
897         (WebCore::FESpecularLighting::setSurfaceScale):
898         (WebCore::FESpecularLighting::specularConstant):
899         (WebCore::FESpecularLighting::setSpecularConstant):
900         (WebCore::FESpecularLighting::specularExponent):
901         (WebCore::FESpecularLighting::setSpecularExponent):
902         (WebCore::FESpecularLighting::kernelUnitLengthX):
903         (WebCore::FESpecularLighting::setKernelUnitLengthX):
904         (WebCore::FESpecularLighting::kernelUnitLengthY):
905         (WebCore::FESpecularLighting::setKernelUnitLengthY):
906         (WebCore::FESpecularLighting::lightSource):
907         (WebCore::FESpecularLighting::setLightSource):
908         (WebCore::FESpecularLighting::apply):
909         (WebCore::FESpecularLighting::dump):
910         (WebCore::FESpecularLighting::externalRepresentation):
911         * svg/graphics/filters/SVGFESpecularLighting.h:
912         * svg/graphics/filters/SVGFETile.cpp:
913         (WebCore::FETile::FETile):
914         (WebCore::FETile::create):
915         (WebCore::FETile::apply):
916         (WebCore::FETile::dump):
917         (WebCore::FETile::externalRepresentation):
918         * svg/graphics/filters/SVGFETile.h:
919         * svg/graphics/filters/SVGFETurbulence.cpp:
920         (WebCore::FETurbulence::FETurbulence):
921         (WebCore::FETurbulence::create):
922         (WebCore::FETurbulence::type):
923         (WebCore::FETurbulence::setType):
924         (WebCore::FETurbulence::baseFrequencyY):
925         (WebCore::FETurbulence::setBaseFrequencyY):
926         (WebCore::FETurbulence::baseFrequencyX):
927         (WebCore::FETurbulence::setBaseFrequencyX):
928         (WebCore::FETurbulence::seed):
929         (WebCore::FETurbulence::setSeed):
930         (WebCore::FETurbulence::numOctaves):
931         (WebCore::FETurbulence::setNumOctaves):
932         (WebCore::FETurbulence::stitchTiles):
933         (WebCore::FETurbulence::setStitchTiles):
934         (WebCore::FETurbulence::apply):
935         (WebCore::FETurbulence::dump):
936         (WebCore::operator<<):
937         (WebCore::FETurbulence::externalRepresentation):
938         * svg/graphics/filters/SVGFETurbulence.h:
939         (WebCore::):
940         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
941         * svg/graphics/filters/cg/SVGFEDisplacementMapCg.mm:
942         * svg/graphics/filters/cg/SVGFEFloodCg.mm:
943         * svg/graphics/filters/cg/SVGFEGaussianBlurCg.mm:
944         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
945         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
946         (WebCore::getVectorForChannel):
947         * svg/graphics/filters/cg/SVGFEImageCg.mm:
948         * svg/graphics/filters/cg/SVGFEMergeCg.mm:
949         * svg/graphics/filters/cg/SVGFEOffsetCg.mm:
950         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
951         * svg/graphics/filters/cg/SVGFETileCg.mm:
952
953 2008-07-09  Mark Rowe  <mrowe@apple.com>
954
955         Reviewed by Geoff Garen.
956
957         Don't warn about deprecated functions in production builds.
958
959         * Configurations/Base.xcconfig:
960         * Configurations/DebugRelease.xcconfig:
961
962 2008-07-09  Brady Eidson  <beidson@apple.com>
963
964         Reviewed by Darin
965
966         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
967         has been installed in a frame tree.
968
969         The root of this problem was that calling init() on a new frame could end up calling arbitrary
970         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
971         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
972         destroying the frame.
973
974         Test: fast/loader/frame-creation-removal.html
975
976         * loader/FrameLoader.cpp:
977         (WebCore::FrameLoader::endIfNotLoadingMainResource):  If the frame doesn't have a page, don't close up
978           the document and parser because they don't exist, and this frame is on its way out.
979         (WebCore::FrameLoader::finishedParsing):  We can't rely on the refCount check to discover "am I being deleted?"
980           because we no longer store refCounts of 0.  The new check is "do I have a FrameView?" while will always be
981           false if the Frame is being destroyed.
982
983 2008-07-09  Dean Jackson  <dino@apple.com>
984
985         Changed to use the correct license in header comment (via Darin)
986
987         * css/WebKitCSSTransformValue.idl:
988
989 2008-07-09  Dean Jackson  <dino@apple.com>
990
991         Add DOM interface for WebKitCSSTransformValue.
992         https://bugs.webkit.org/show_bug.cgi?id=19863
993
994         Reviewed by Hyatt.
995
996         * bindings/objc/DOMInternal.h:
997         * css/WebKitCSSTransformValue.idl: Added.
998
999         * bindings/scripts/CodeGeneratorObjC.pm:
1000             make sure new class inherits from CSSValue not Node
1001
1002         * DerivedSources.make:
1003         * GNUmakefile.am:
1004         * WebCore.pro:
1005         * WebCore.vcproj/WebCore.vcproj:
1006         * WebCore.xcodeproj/project.pbxproj:
1007         * WebCoreSources.bkl:
1008             Adding new generated files
1009
1010 2008-07-09  Maxime Britto  <britto@apple.com>
1011
1012         Reviewed by Adele.
1013
1014         http://bugs.webkit.org/show_bug.cgi?id=14227
1015         Add the middle click panning feature to the windows release.
1016         Details on almost each method below.
1017         Manual test is included in the patch.
1018
1019         * ChangeLog:
1020         * WebCore.vcproj/WebCore.vcproj:
1021         * manual-tests/panScroll.html: Added.
1022         * manual-tests/resources/big-page.html: Added.
1023         * page/EventHandler.cpp: Added the panScroll start/stop handlers and adapted the autoscroll for both to share some functions.
1024         (WebCore::EventHandler::EventHandler): Initialize the new class members for the panScroll
1025         (WebCore::EventHandler::handleMouseDraggedEvent): Prevent the autoscroll to trigger if the panScroll is in progress
1026         (WebCore::EventHandler::handleMouseReleaseEvent): Prevent the autoscroll to stop the panScroll on mouse release
1027         (WebCore::EventHandler::handleAutoscroll): Added the specific calls for the panScroll (save mouse position, draw the panScroll icon) to the shared code
1028         (WebCore::EventHandler::autoscrollTimerFired): Specify the calls to perform for each function (autoscroll and panScroll)
1029         (WebCore::EventHandler::stopAutoscrollTimer): Specify the calls to perform for each function (autoscroll and panScroll)
1030         (WebCore::EventHandler::handleMousePressEvent): Trigger for the panScroll. Test is the button is the middle button and try to find a renderer where the panScroll is possible. If it finds one, it calls the handleAutoscroll method.
1031         * page/EventHandler.h:
1032         (WebCore::EventHandler::panScrollInProgress): Getter used by the sub frames's EventHandler to notice the main frame EventHandler
1033         (WebCore::EventHandler::setPanScrollInProgress): Setter used by the sub frames's EventHandler to notice the main frame EventHandler
1034         * platform/ScrollView.h: Added a method used by the RenderObject to test if the view can be scrolled. Added the print/remove panScroll icon methods between the windows platform flags
1035         * platform/gtk/ScrollViewGtk.cpp:
1036         (WebCore::ScrollView::isScrollable): Not implemented : returns true
1037         * platform/mac/ScrollViewMac.mm: Implemented because it was useful for the autoscroll feature.
1038         (WebCore::ScrollView::isScrollable):
1039         * platform/qt/ScrollViewQt.cpp:
1040         (WebCore::ScrollView::isScrollable): Not implemented : returns true
1041         * platform/win/ScrollViewWin.cpp:
1042         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added a boolean and an IntPoint to draw the icon.
1043         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): If the icon must be drawn, define the rect to invalidate to erase the previous icon and to display the new one.
1044         (WebCore::ScrollView::updateContents): I split this method to be able to invalidate a rect with window coordinates instead of contents coordinates. This function now converts the contents coord in window coord and calls the new updateWindowRect() method  
1045         (WebCore::ScrollView::updateWindowRect): New method which performs the work that was doing the end of the old updateContents : invalidate a rect with window coordinates
1046         (WebCore::ScrollView::isScrollable): checks is the view has scrollbars
1047         (WebCore::ScrollView::printPanScrollIcon): sets the boolean and the IntPoint for the icon. Invalidate his rect and ask for repaint.
1048         (WebCore::ScrollView::removePanScrollIcon): sets the boolean to false. Invalidate his rect and ask for repaint.
1049         (WebCore::ScrollView::paint): Modified to draw the icon if needed.
1050         * platform/wx/ScrollViewWx.cpp:
1051         (WebCore::ScrollView::isScrollable): Not implemented : returns true
1052         * rendering/RenderLayer.cpp:
1053         (WebCore::RenderLayer::panScrollFromPoint): Receives the Middle click location and retrieves the currentMouse position from the EventHandler. With these informations it computes the direction to scroll to and the speed then calls for the final scroll.
1054         * rendering/RenderLayer.h:
1055         * rendering/RenderListBox.cpp: Adapt the panScroll to the ListBox object to scroll by lines instead of pixels
1056         (WebCore::RenderListBox::panScroll):
1057         (WebCore::RenderListBox::scrollToward):
1058         (WebCore::RenderListBox::autoscroll):
1059         * rendering/RenderListBox.h:
1060         (WebCore::RenderListBox::shouldPanScroll):
1061         * rendering/RenderObject.cpp: 
1062         (WebCore::RenderObject::shouldAutoscroll): Improved the verification to avoid triggering the autoscroll/panScroll when the root object can't scroll
1063         (WebCore::RenderObject::panScroll): Calls the RenderLayer's panScrollFromPoint() method
1064         * rendering/RenderObject.h:
1065         (WebCore::RenderObject::stopPanScroll): 
1066
1067 2008-07-09  Dean Jackson  <dino@apple.com>
1068
1069         Rename CSSTransformValue to WebKitCSSTransformValue as it is non-standard for
1070         the moment. Also, WebKitCSSTransformValue is a CSSValueList (comma sep)
1071         https://bugs.webkit.org/show_bug.cgi?id=19861
1072
1073         Reviewed by Hyatt
1074
1075         * css/CSSParser.cpp:
1076         * css/CSSStyleSelector.cpp:
1077         * css/CSSTransformValue.cpp: Removed.
1078         * css/CSSTransformValue.h: Removed.
1079         * css/CSSValueList.h:
1080         * css/WebKitCSSTransformValue.cpp: Added.
1081         * css/WebKitCSSTransformValue.h: Added.
1082
1083         * GNUmakefile.am:
1084         * WebCore.order:
1085         * WebCore.pro:
1086         * WebCore.vcproj/WebCore.vcproj:
1087         * WebCore.xcodeproj/project.pbxproj:
1088         * WebCoreSources.bkl:
1089             updated for new file names
1090         
1091
1092 2008-07-09  David Hyatt  <hyatt@apple.com>
1093
1094         Switch transitions back to a "destination" model as far as choosing which transitions should apply on a style
1095         change.  Preserve the behavior of allowing stale transitions (in the absence of property changes) to run to
1096         completion.
1097
1098         Reviewed by Dean
1099
1100         * manual-tests/transitions.html:
1101         * manual-tests/transitions2.html:
1102         * page/AnimationController.cpp:
1103         (WebCore::ImplicitAnimation::reset):
1104         (WebCore::CompositeImplicitAnimation::animate):
1105         (WebCore::AnimationControllerPrivate::get):
1106         (WebCore::AnimationController::updateImplicitAnimations):
1107
1108 2008-07-09  Michelangelo De Simone  <m.des@mac.com>
1109
1110         Reviewed by Adele.
1111
1112         Added the virtual function Node::isTextControl() in order to simplify text field and textarea checks.
1113
1114         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1115         Clean up in PseudoReadOnly and PseudoReadWrite cases removing unnecessary checks and casts in favor of the sole isTextControl() check.
1116         * dom/Node.h: Added base isTextControl().
1117         * html/HTMLInputElement.h: Added isTextControl() which wraps HTMLInputElement::isTextField().
1118         * html/HTMLTextAreaElement.h: Added isTextControl().
1119
1120 2008-07-09  Rob Buis  <buis@kde.org>
1121
1122         Reviewed by Eric.
1123
1124         https://bugs.webkit.org/show_bug.cgi?id=15431
1125         SVGRenderStyle should store pre-modified resource URIs
1126
1127         Store pre-modified resource URIs to decrease string
1128         operations during layout/rendering.
1129
1130         * css/SVGCSSStyleSelector.cpp:
1131         (WebCore::CSSStyleSelector::applySVGProperty):
1132         * rendering/RenderPath.cpp:
1133         (WebCore::RenderPath::absoluteClippedOverflowRect):
1134         (WebCore::RenderPath::drawMarkersIfNeeded):
1135         * rendering/RenderSVGContainer.cpp:
1136         (WebCore::RenderSVGContainer::selfWillPaint):
1137         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
1138         * rendering/RenderSVGImage.cpp:
1139         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
1140         * rendering/RenderSVGRoot.cpp:
1141         (WebCore::RenderSVGRoot::paint):
1142         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
1143         * rendering/RenderSVGText.cpp:
1144         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
1145         * rendering/SVGRenderSupport.cpp:
1146         (WebCore::prepareToRenderSVGContent):
1147
1148 2008-07-09  Anders Carlsson  <andersca@apple.com>
1149
1150         Reviewed by Mitz.
1151
1152         Remove an unused instance variable.
1153
1154         * loader/DocumentLoader.h:
1155
1156 2008-07-09  Dan Bernstein  <mitz@apple.com>
1157
1158         Reviewed by Anders Carlsson.
1159
1160         - remove unused #includes
1161
1162         * dom/XMLTokenizer.cpp:
1163         * html/PreloadScanner.cpp:
1164         * loader/CachedCSSStyleSheet.cpp:
1165         * loader/CachedScript.cpp:
1166         * loader/CachedXBLDocument.cpp:
1167         * loader/CachedXSLStyleSheet.cpp:
1168         * page/mac/FrameMac.mm:
1169         * xml/XSLTProcessor.cpp:
1170
1171 2008-07-08  Geoffrey Garen  <ggaren@apple.com>
1172
1173         Reviewed by Oliver Hunt.
1174         
1175         Only artificially mark JS DOM wrappers if they have custom properties.
1176         
1177         21X speedup on http://nerget.com/jstests/dom-mandelbrot.html.
1178         
1179         No, that is not a typo.
1180
1181         * bindings/js/JSDOMBinding.cpp:
1182         (WebCore::ScriptInterpreter::markDOMNodesForDocument):
1183
1184 2008-07-08  Kevin Watters  <kevinwatters@gmail.com>
1185
1186         Reviewed by Kevin Ollivier.
1187
1188         Fix to previous patch for handling mouse up events.
1189         
1190         https://bugs.webkit.org/show_bug.cgi?id=18464
1191
1192         * platform/wx/MouseEventWx.cpp:
1193         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1194
1195 2008-07-08  Dan Bernstein  <mitz@apple.com>
1196
1197         Reviewed by Brady Eidson.
1198
1199         - initialize the Archives log channel's state
1200
1201         * platform/mac/LoggingMac.mm:
1202         (WebCore::InitializeLoggingChannelsIfNecessary):
1203
1204 2008-07-08  Kevin McCullough  <kmccullough@apple.com>
1205
1206         Added manual test for the new heavy view.
1207
1208         * manual-tests/inspector/profiler-test-heavy-view.html: Added.
1209
1210 2008-07-08  Darin Adler  <darin@apple.com>
1211
1212         Reviewed by Mitz.
1213
1214         - fix <rdar://problem/6043731> REGRESSION (3-4): RedEnvelope.com
1215           looks wrong due to OpenCube QuickMenu appVersion check
1216
1217         * page/Navigator.cpp:
1218         (WebCore::shouldHideFourDot): Add dqm_loader.js as another filename.
1219
1220 2008-07-08  Dan Bernstein  <mitz@apple.com>
1221
1222         Reviewed by John Sullivan.
1223
1224         - WebCore part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
1225
1226         Added a setting, updatesWhenOffscreen(), which controls whether an
1227         offscreen web view gets marked as needing update when its contents
1228         change (the existing behavior) or not (a new behavior), in which case it
1229         will be marked as needing update just before it goes on screen. The
1230         existing behavior (updating while offscreen) remains the default.
1231
1232         * WebCore.base.exp: Added Settings::setUpdatesWhenOffscreen().
1233         * page/FrameView.cpp:
1234         (WebCore::FrameView::shouldUpdateWhenOffscreen): Added. Returns the
1235         value from settings.
1236         * page/FrameView.h:
1237         * page/Settings.cpp:
1238         (WebCore::Settings::setUpdatesWhenOffscreen): Added.
1239         * page/Settings.h:
1240         (WebCore::Settings::updatesWhenOffscreen): Added.
1241         * platform/ScrollView.h:
1242         * platform/mac/ScrollViewMac.mm:
1243         (WebCore::ScrollView::updateContents): Added code to return early and
1244         not call -setNeedsDisplayInRect: if the view is not in a visible window
1245         and the setting is not to update when offscreen.
1246
1247 2008-07-08  Simon Hausmann  <hausmann@webkit.org>
1248
1249         Fix the build with enabled SVG filters.
1250
1251         * svg/SVGFESpecularLightingElement.cpp: The last argument to
1252         ANIMATED_PROPERTY_DEFINITIONS has to be full class name, including
1253         the attr suffix.
1254
1255 2008-07-07  Sam Weinig  <sam@webkit.org>
1256
1257         Reviewed by Anders Carlsson.
1258
1259         Remove extraneous null check.
1260
1261         * dom/Node.cpp:
1262         (WebCore::Node::querySelector):
1263         (WebCore::Node::querySelectorAll):
1264
1265 2008-07-07  Sam Weinig  <sam@webkit.org>
1266
1267         Reviewed by Anders Carlsson.
1268
1269         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
1270         Use of CSS3 Namespaces syntax in Selectors API should throw an exception
1271
1272         - Throw an NAMESPACE_ERR exception if a non-null or "*" namespace is
1273           used in a selector passed to querySelector or querySelectorAll.
1274
1275         Test: fast/dom/SelectorAPI/not-supported-namespace-in-selector.html
1276
1277         * dom/Node.cpp:
1278         (WebCore::selectorNeedsNamespaceResolution):
1279         (WebCore::Node::querySelector):
1280         (WebCore::Node::querySelectorAll):
1281
1282 2008-07-07  Simon Fraser  <simon.fraser@apple.com>
1283
1284         Reviewed by Darin.
1285
1286         Fix for https://bugs.webkit.org/show_bug.cgi?id=19933
1287         nodeIterator with filter fails on documents not in a frame
1288
1289         Tests: traversal/node-iterator-009.html
1290                traversal/tree-walker-006.html
1291
1292         * bindings/js/JSNodeFilterCondition.cpp:
1293         * bindings/js/JSNodeFilterCondition.h:
1294         * bindings/js/JSNodeFilterCustom.cpp:
1295         * bindings/js/JSNodeIteratorCustom.cpp:
1296         * bindings/js/JSTreeWalkerCustom.cpp:
1297         * bindings/objc/DOM.mm:
1298         * dom/NodeFilter.cpp:
1299         * dom/NodeFilter.h:
1300         * dom/NodeFilterCondition.cpp:
1301         * dom/NodeFilterCondition.h:
1302         * dom/NodeIterator.cpp:
1303         * dom/NodeIterator.h:
1304         * dom/Traversal.cpp:
1305         * dom/Traversal.h:
1306         * dom/TreeWalker.cpp:
1307         * dom/TreeWalker.h:
1308
1309 2008-07-07  Adele Peterson  <adele@apple.com>
1310
1311         Reviewed by Dan Bernstein.
1312
1313         Fix for https://bugs.webkit.org/show_bug.cgi?id=19924
1314         <rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.
1315
1316         * page/DragController.cpp: (WebCore::DragController::concludeDrag):
1317         Check that the file control is enabled before taking dropped files.
1318
1319 2008-07-07  Adele Peterson  <adele@apple.com>
1320
1321         Reviewed by Beth.
1322
1323         Fix for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime
1324
1325         Change default volume setting to 1.0.
1326
1327         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement):
1328         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer):
1329
1330 2008-07-07  Darin Adler  <darin@apple.com>
1331
1332         Reviewed by Mark Rowe.
1333
1334         - fix <rdar://problem/6020441> REGRESSION: Layers on NWA.com render ugly
1335
1336         The old version of the OpenCube QuickMenu library used on this site still has code
1337         that detects Netscape 4 by checking appVersion to see if it has the substring "4."
1338         in it. We decided to special-case the filename of the script and tweak the appVersion
1339         for files with that name.
1340
1341         * bindings/js/ScriptController.cpp:
1342         (WebCore::ScriptController::ScriptController): Replace m_processingInlineCode with
1343         m_sourceURL. Use false instead of 0 to initialize a boolean.
1344         (WebCore::ScriptController::evaluate): Call argument sourceURL, not filename.
1345         Store current sourceURL in m_sourceURL. This fixes a mistake in the code that
1346         maintained the value of m_processingInlineCode, since the old code set it to
1347         false rather than restoring it. Renamed a local variable named sourceURL to
1348         exceptionSourceURL for clarity.
1349         (WebCore::ScriptController::processingUserGesture): Code that formerly used
1350         m_processingInlineCode to detect that it was evaluating code with no URL now
1351         uses m_sourceURL to do the same check.
1352
1353         * bindings/js/ScriptController.h: Renamed filename argument to sourceURL; it has always
1354         been a URL, not a file path. Added a public sourceURL function and m_sourceURL and
1355         removed m_processingInlineCode.
1356
1357         * page/Navigator.cpp:
1358         (WebCore::shouldHideFourDot): Added. Returns true if the currently running script has
1359         a source URL ending in "/dqm_script.js" and if the settings say we should do
1360         site-specific quirks (really JavaScript-library-specific in this case).
1361         (WebCore::Navigator::appVersion): Replace "4." with "4_" if shouldHideFourDot is true.
1362
1363 2008-07-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1364
1365         Reviewed by Geoff.
1366
1367         Bug 19907: REGRESSION(r34824-r34941): Reproducible crash trying to log in to MediaTemple.net Account Center
1368         <https://bugs.webkit.org/show_bug.cgi?id=19907>
1369
1370         Clear exceptions set on ExecStates before returning from NPAPI
1371         callbacks, in order to avoid causing problems for the next script that
1372         executes.
1373
1374         While fixing this bug, the question was raised of whether we are
1375         correctly propagating exception information back to the caller:
1376
1377         Bug 19936: Correctly propagate exception information from NPAPI callbacks
1378         <https://bugs.webkit.org/show_bug.cgi?id=19936>
1379
1380         * bridge/NP_jsobject.cpp:
1381         (_NPN_InvokeDefault):
1382         (_NPN_Invoke):
1383         (_NPN_Evaluate):
1384         (_NPN_GetProperty):
1385         (_NPN_SetProperty):
1386         (_NPN_RemoveProperty):
1387         (_NPN_HasProperty):
1388         (_NPN_HasMethod):
1389         (_NPN_Enumerate):
1390
1391 2008-07-07  Dan Bernstein  <mitz@apple.com>
1392
1393         Reviewed by Darin Adler.
1394
1395         - fix <rdar://problem/6057650> REGRESSION (r35025): Crash beneath FontCache::invalidate() when activating Safari with no windows open
1396
1397         * css/CSSFontFaceSource.cpp:
1398         (WebCore::CSSFontFaceSource::getFontData): Added a null check because
1399         docLoader() can return 0 now.
1400         * css/CSSFontSelector.cpp:
1401         (WebCore::CSSFontSelector::docLoader): Added a null check of m_document.
1402         (WebCore::CSSFontSelector::addFontFaceRule): Ditto.
1403         (WebCore::CSSFontSelector::fontLoaded): Ditto.
1404         (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto.
1405         (WebCore::fontDataForGenericFamily): Added a null check of document.
1406         * css/CSSFontSelector.h:
1407         (WebCore::CSSFontSelector::clearDocument): Added.
1408         * css/CSSStyleSelector.cpp:
1409         (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a call to
1410         CSSFontSelector::clearDocument(). When the style selector is destroyed,
1411         there is no guarantee that the document will continue to exist.
1412
1413 2008-07-07  Julien Chaffraix  <jchaffraix@webkit.org>
1414
1415         Not reviewed.
1416
1417         No svg build fix.
1418
1419         * DerivedSources.make: Add JSSVGElementWrapperFactory.cpp target.
1420         * svg/animation/SMILTimeContainer.cpp: Add ENABLE(SVG) guard.
1421
1422 2008-07-07  Michelangelo De Simone  <m.des@mac.com>
1423
1424         Reviewed by Adele.
1425
1426         Support for CSS3 :read-only and :read-write pseudoclasses for readonly text controls.
1427
1428         URL: http://www.w3.org/TR/web-forms-2/#relation
1429
1430         Tests: fast/css/readonly-pseudoclass-opera-001.html
1431                fast/css/readonly-pseudoclass-opera-002.html
1432                fast/css/readonly-pseudoclass-opera-003.html
1433                fast/css/readonly-pseudoclass-opera-004.html
1434                fast/css/readonly-pseudoclass-opera-005.html
1435
1436         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
1437         Added "read-only" and "read-write" values for PseudoType extraction.
1438         * css/CSSSelector.h: (WebCore::CSSSelector::):
1439         Added PseudoReadOnly and PseudoReadWrite entries in PseudoType enum.
1440         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1441         Checks to determine whether to match :read-only and :read-write pseudoclasses on
1442         text controls.
1443
1444 2008-07-07  Sam Weinig  <sam@webkit.org>
1445
1446         Reviewed by Geoffrey Garen.
1447
1448         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
1449         querySelectorAll should throw an exception if a NSResolver is passed in.
1450
1451         - Throw an NOT_SUPPORTED_ERR if a non-null or undefined parameter is passed
1452           as the second argument to querySelector or querySelectorAll.
1453
1454         Test: fast/dom/SelectorAPI/not-supported-NSResolver.html
1455
1456         * bindings/js/JSDocumentCustom.cpp:
1457         (WebCore::JSDocument::querySelector):
1458         (WebCore::JSDocument::querySelectorAll):
1459         * bindings/js/JSElementCustom.cpp:
1460         (WebCore::JSElement::querySelector):
1461         (WebCore::JSElement::querySelectorAll):
1462         * dom/Document.idl:
1463         * dom/Element.idl:
1464
1465 2008-07-07  Brady Eidson  <beidson@apple.com>
1466
1467         Reviewed by Mitz and Geoff
1468
1469         Test: fast/loader/empty-ref-versus-no-ref.html
1470
1471         Fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>
1472         "all DOM operations stop working when location.hash set to '#'"
1473
1474         The underlying problem is that KURL didn't really know the difference between "empty ref"
1475         and "no ref at all" when changing the ref.  So changing to the empty ref in JS ended up 
1476         affecting removal of the ref, which ended up causing an infinite load load, also killing
1477         javascript.
1478
1479         * platform/KURL.cpp:
1480         (WebCore::KURL::setRef):  Changed "isEmpty()" to "isNull()", since NULL has the special 
1481           meaning of "no ref at all" while empty means "empty ref"
1482
1483 2008-07-07  Kevin McCullough  <kmccullough@apple.com>
1484
1485         Reviewed by Darin.
1486
1487         Because profiler.h no longer #includes profile.h we need to explicitly
1488         include it in console.cpp.
1489
1490         * page/Console.cpp:
1491
1492 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
1493
1494         Not reviewed. Build fix.
1495
1496         Fix --svg-filters build (affects Qt build, mac/win don't have it on by default)
1497
1498         * svg/SVGFEColorMatrixElement.cpp:
1499         * svg/SVGFEDiffuseLightingElement.cpp:
1500         * svg/SVGFEImageElement.cpp:
1501         * svg/SVGFELightElement.cpp:
1502         * svg/SVGFESpecularLightingElement.cpp:
1503
1504 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
1505
1506         Reviewed by Antti.
1507
1508         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
1509
1510         Revised version of the patch, not using pointer-to-member function callbacks anymore - after discussion with Adam Roben.
1511         Remove unneccessary parameters of all macros.
1512
1513         SVG Errata states: "All SVG DOM objects that directly correspond to an
1514         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
1515         means that any changes made to the attribute are immediately reflected in the
1516         corresponding SVG DOM object." (see linked URL on bug report)
1517
1518         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
1519         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
1520
1521         Add a new synchronization layer to handle SVG DOM -> XML changes.
1522
1523         Added test: svg/custom/svg-xml-dom-sync.html
1524         Fixed test: svg/hixie/dynamic/005-broken.xml (renamed to 005.xml)
1525
1526         * dom/Element.cpp:
1527         (WebCore::Element::Element): Initialize the two new bits.
1528         (WebCore::Element::attributes): Add hooks to call into SVG attribute synchronization code, wrapped in ENABLE(SVG) blocks.
1529         (WebCore::Element::getAttribute): Ditto.
1530         (WebCore::Element::hasAttributes): Ditto.
1531         * dom/Element.h: Add two bits: m_areSVGAttributesValid/m_synchronizingSVGAttributes, to track synchronization status.
1532         (WebCore::Element::updateAnimatedSVGAttribute): New virtual function, handling the synronication, similar to updateStyleAttribute.
1533         * dom/NamedAttrMap.h: Make addAttribute/removeAttribute protected, from use within the ANIMATED_* macros.
1534         * svg/SVGAElement.cpp:
1535         * svg/SVGAElement.h:
1536         * svg/SVGAnimatedTemplate.h:
1537         (WebCore::lookupOrCreateWrapper): Take new AnimatedPropertySynchronizer callback as parameter, and associate it with the wrappers.
1538         * svg/SVGCircleElement.cpp:
1539         (WebCore::SVGCircleElement::SVGCircleElement):
1540         * svg/SVGCircleElement.h:
1541         * svg/SVGClipPathElement.cpp:
1542         * svg/SVGClipPathElement.h:
1543         * svg/SVGComponentTransferFunctionElement.cpp:
1544         * svg/SVGComponentTransferFunctionElement.h:
1545         * svg/SVGCursorElement.cpp:
1546         (WebCore::SVGCursorElement::SVGCursorElement):
1547         * svg/SVGCursorElement.h:
1548         * svg/SVGElement.cpp:
1549         (WebCore::SVGElement::updateAnimatedSVGAttribute): Override virtual function from Element, to handle SVG<->XML DOM synchronization.
1550         (WebCore::SVGElement::setSynchronizedSVGAttributes):
1551         * svg/SVGElement.h:
1552         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
1553         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
1554         (WebCore::SVGElement::addSVGPropertySynchronizer):
1555         * svg/SVGEllipseElement.cpp:
1556         * svg/SVGEllipseElement.h:
1557         * svg/SVGExternalResourcesRequired.cpp:
1558         * svg/SVGExternalResourcesRequired.h:
1559         * svg/SVGFEBlendElement.cpp:
1560         * svg/SVGFEBlendElement.h:
1561         * svg/SVGFEColorMatrixElement.cpp:
1562         * svg/SVGFEColorMatrixElement.h:
1563         * svg/SVGFEComponentTransferElement.cpp:
1564         * svg/SVGFEComponentTransferElement.h:
1565         * svg/SVGFECompositeElement.cpp:
1566         * svg/SVGFECompositeElement.h:
1567         * svg/SVGFEDiffuseLightingElement.cpp:
1568         * svg/SVGFEDiffuseLightingElement.h:
1569         * svg/SVGFEDisplacementMapElement.cpp:
1570         * svg/SVGFEDisplacementMapElement.h:
1571         * svg/SVGFEGaussianBlurElement.cpp:
1572         * svg/SVGFEGaussianBlurElement.h:
1573         * svg/SVGFEImageElement.cpp:
1574         * svg/SVGFEImageElement.h:
1575         * svg/SVGFELightElement.cpp:
1576         * svg/SVGFELightElement.h:
1577         * svg/SVGFEMergeNodeElement.cpp:
1578         * svg/SVGFEMergeNodeElement.h:
1579         * svg/SVGFEOffsetElement.cpp:
1580         * svg/SVGFEOffsetElement.h:
1581         * svg/SVGFESpecularLightingElement.cpp:
1582         * svg/SVGFESpecularLightingElement.h:
1583         * svg/SVGFETileElement.cpp:
1584         * svg/SVGFETileElement.h:
1585         * svg/SVGFETurbulenceElement.cpp:
1586         * svg/SVGFETurbulenceElement.h:
1587         * svg/SVGFilterElement.cpp:
1588         * svg/SVGFilterElement.h:
1589         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1590         * svg/SVGFilterPrimitiveStandardAttributes.h:
1591         * svg/SVGFitToViewBox.cpp:
1592         * svg/SVGFitToViewBox.h:
1593         * svg/SVGForeignObjectElement.cpp:
1594         * svg/SVGForeignObjectElement.h:
1595         * svg/SVGGradientElement.cpp:
1596         * svg/SVGGradientElement.h:
1597         * svg/SVGImageElement.cpp:
1598         * svg/SVGImageElement.h:
1599         * svg/SVGLineElement.cpp:
1600         * svg/SVGLineElement.h:
1601         * svg/SVGLinearGradientElement.cpp:
1602         * svg/SVGLinearGradientElement.h:
1603         * svg/SVGMarkerElement.cpp:
1604         * svg/SVGMarkerElement.h:
1605         * svg/SVGMaskElement.cpp:
1606         * svg/SVGMaskElement.h:
1607         * svg/SVGPathElement.cpp:
1608         * svg/SVGPathElement.h:
1609         * svg/SVGPatternElement.cpp:
1610         * svg/SVGPatternElement.h:
1611         * svg/SVGRadialGradientElement.cpp:
1612         * svg/SVGRadialGradientElement.h:
1613         * svg/SVGRectElement.cpp:
1614         * svg/SVGRectElement.h:
1615         * svg/SVGSVGElement.cpp:
1616         * svg/SVGSVGElement.h:
1617         * svg/SVGScriptElement.h:
1618         * svg/SVGStopElement.cpp:
1619         * svg/SVGStopElement.h:
1620         * svg/SVGStyledElement.cpp:
1621         * svg/SVGStyledElement.h:
1622         * svg/SVGStyledTransformableElement.cpp:
1623         * svg/SVGStyledTransformableElement.h:
1624         * svg/SVGSymbolElement.h:
1625         * svg/SVGTextContentElement.cpp:
1626         * svg/SVGTextContentElement.h:
1627         * svg/SVGTextElement.cpp:
1628         * svg/SVGTextElement.h:
1629         * svg/SVGTextPathElement.cpp:
1630         * svg/SVGTextPathElement.h:
1631         * svg/SVGTextPositioningElement.cpp:
1632         * svg/SVGTextPositioningElement.h:
1633         * svg/SVGURIReference.cpp:
1634         * svg/SVGURIReference.h:
1635         * svg/SVGUseElement.cpp:
1636         * svg/SVGUseElement.h:
1637         * svg/SVGViewElement.h:
1638         * svg/SynchronizableTypeWrapper.h: Added.
1639
1640 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
1641
1642         Reviewed by Oliver.
1643
1644         Working on: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
1645
1646         Splitting up large patch in small chunk: Land valueAsString() implementation on it's own.
1647
1648         Added valueAsString() conversion for all SVG primitive types, needed by the SVG<->XML synchronization layer.
1649         Unify "null value for a SVG animated type" concept, which was implemented in SVGDocumentExtensions before,
1650         in SVGAnimatedTemplate.
1651
1652         * svg/SVGAnimatedTemplate.h:
1653         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
1654         (WebCore::lookupOrCreateWrapper):
1655         (WebCore::SVGAnimatedTypeValue::null):
1656         (WebCore::SVGAnimatedTypeValue::toString):
1657         (WebCore::):
1658         * svg/SVGDocumentExtensions.h:
1659         (WebCore::SVGDocumentExtensions::baseValue):
1660         * svg/SVGLengthList.cpp:
1661         (WebCore::SVGLengthList::valueAsString):
1662         * svg/SVGLengthList.h:
1663         * svg/SVGNumberList.cpp:
1664         (WebCore::SVGNumberList::valueAsString):
1665         * svg/SVGNumberList.h:
1666         * svg/SVGPreserveAspectRatio.cpp:
1667         (WebCore::SVGPreserveAspectRatio::valueAsString):
1668         * svg/SVGPreserveAspectRatio.h:
1669         * svg/SVGTransformList.cpp:
1670         (SVGTransformList::valueAsString):
1671         * svg/SVGTransformList.h:
1672
1673 2008-07-06  Sam Weinig  <sam@webkit.org>
1674
1675         Reviewed by Dan Bernstein.
1676
1677         Rename "Access-Contol-Origin" to "Origin" to match the latest
1678         Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)
1679
1680         * xml/XMLHttpRequest.cpp:
1681         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
1682         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
1683         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
1684
1685 2008-07-06  Dan Bernstein  <mitz@apple.com>
1686
1687         - try to fix the Windows build
1688
1689         * WebCore.vcproj/WebCore.vcproj:
1690
1691 2008-07-06  Dan Bernstein  <mitz@apple.com>
1692
1693         - add missing brace
1694
1695         * platform/graphics/qt/FontCacheQt.cpp:
1696
1697 2008-07-06  Dan Bernstein  <mitz@apple.com>
1698
1699         - try to fix the Qt build
1700
1701         * platform/graphics/qt/FontCacheQt.cpp:
1702         (WebCore::FontCache::addClient):
1703         (WebCore::FontCache::removeClient):
1704
1705 2008-07-06  Sam Weinig  <sam@webkit.org>
1706
1707         Reviewed by Cameron Zwarich.
1708
1709         Add #include for kjs/protect.h.
1710
1711         * xml/XMLHttpRequest.cpp:
1712         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
1713
1714 2008-07-06  David Kilzer  <ddkilzer@apple.com>
1715
1716         Save a few more bits in RenderStyle
1717
1718         Reviewed by Darin.
1719
1720         No test cases added since there is no change in behavior.
1721
1722         This changes WebCore::StyleMarqueeData from using 6 bits to 5 bits,
1723         WebCore::RenderStyle::inherited_flags from using 36 bits to 35 bits,
1724         and WebCore::RenderStyle::noninherited_flags from using 49 bits to
1725         47 bits.
1726
1727         * rendering/style/RenderStyle.h:
1728         (WebCore::StyleMarqueeData::behavior): Reduce from 3 bits to 2 bits
1729         since EMarqueeBehavior has 4 items.
1730         (WebCore::RenderStyle::inherited_flags._text_align): Reduce from
1731         4 bits to 3 bits since ETextAlign has 8 items.
1732         (WebCore::RenderStyle::noninherited_flags._overflowX): Reduce from
1733         4 bits to 3 bits since EOverflow has 6 items.
1734         (WebCore::RenderStyle::noninherited_flags._overflowY): Ditto.
1735
1736 2008-07-06  Dan Bernstein  <mitz@apple.com>
1737
1738         Reviewed by Darin Adler.
1739
1740         - fix <rdar://problem/5735163> WebCore caching makes text look wrong after font changes; need to respond appropriately instead
1741
1742         * css/CSSFontSelector.cpp:
1743         (WebCore::CSSFontSelector::CSSFontSelector): Added a call to
1744         FontCache::addClient().
1745         (WebCore::CSSFontSelector::~CSSFontSelector): Added a call to
1746         FontCache::removeClient().
1747         (WebCore::CSSFontSelector::fontCacheInvalidated): Added. Called by the
1748         font cache when it is invalidated, and ensures that the document is
1749         updated.
1750
1751         * css/CSSFontSelector.h:
1752
1753         * platform/graphics/Font.cpp:
1754         (WebCore::Font::operator==): Added code to compare the font fallback
1755         lists' font cache generations.
1756
1757         * platform/graphics/FontCache.cpp:
1758         (WebCore::FontCache::addClient): Added.
1759         (WebCore::FontCache::removeClient): Added.
1760         (WebCore::FontCache::generation): Added.
1761         (WebCore::FontCache::invalidate): Added. Deletes the platform data
1762         cache, increments the generation counter, and notifies all clients.
1763
1764         * platform/graphics/FontCache.h:
1765
1766         * platform/graphics/FontFallbackList.cpp:
1767         (WebCore::FontFallbackList::FontFallbackList): Added initialization of
1768         m_generation.
1769         (WebCore::FontFallbackList::invalidate): Added code to reset
1770         m_generation.
1771         (WebCore::FontFallbackList::fontDataAt): Added an assertion.
1772         (WebCore::FontFallbackList::fontDataForCharacters): Ditto.
1773         (WebCore::FontFallbackList::setPlatformFont): Ditto.
1774
1775         * platform/graphics/FontFallbackList.h:
1776         (WebCore::FontFallbackList::generation): Added. Returns the font cache
1777         generation used to populate the list.
1778
1779         * platform/graphics/FontSelector.h:
1780         (WebCore::FontSelector::fontCacheInvalidated): Added.
1781
1782         * platform/graphics/mac/FontCacheMac.mm:
1783         (WebCore::fontCacheATSNotificationCallback): Added. Calls
1784         FontCache::invalidate().
1785         (WebCore::FontCache::platformInit): Added code to register for ATS
1786         notifications.
1787
1788         * svg/SVGFontFaceElement.cpp: Removed unneeded #inlcudes.
1789
1790 2008-07-05  Sam Weinig  <sam@webkit.org>
1791
1792         Rubber-stamped by Cameron Zwarich.
1793
1794         Rename list.h/cpp to ArgList.h/cpp.
1795
1796         * ForwardingHeaders/kjs/ArgList.h: Copied from WebCore/ForwardingHeaders/kjs/list.h.
1797         * ForwardingHeaders/kjs/list.h: Removed.
1798         * WebCore.vcproj/WebCore.vcproj:
1799         * bridge/qt/qt_instance.cpp:
1800         * page/Console.cpp:
1801
1802 2008-07-05  Sam Weinig  <sam@webkit.org>
1803
1804         Rubber-stamped by Cameron Zwarich.
1805
1806         Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and 
1807         the functions on the global object out of JSFunction.h/cpp.
1808
1809         * ForwardingHeaders/kjs/PrototypeFunction.h: Added.
1810         * bindings/js/JSDOMBinding.cpp:
1811
1812 2008-07-05  Dan Bernstein  <mitz@apple.com>
1813
1814         Rubber-stamped by Sam Weinig.
1815
1816         - rename BidiIterator and BidiState
1817
1818         Renamed BidiIterator to InlineIterator and BidiState
1819         to InlineBidiResolver. Renamed variables of type InlineBidiResolver{*,&}
1820         to "resolver".
1821
1822         * rendering/RenderBlock.h:
1823         * rendering/RootInlineBox.h:
1824         * rendering/bidi.cpp:
1825         (WebCore::InlineIterator::InlineIterator):
1826         (WebCore::operator==):
1827         (WebCore::operator!=):
1828         (WebCore::bidiNext):
1829         (WebCore::bidiFirst):
1830         (WebCore::InlineIterator::increment):
1831         (WebCore::InlineBidiResolver::increment):
1832         (WebCore::InlineIterator::atEnd):
1833         (WebCore::InlineIterator::current):
1834         (WebCore::InlineIterator::direction):
1835         (WebCore::chopMidpointsAt):
1836         (WebCore::checkMidpoints):
1837         (WebCore::addMidpoint):
1838         (WebCore::appendRunsForObject):
1839         (WebCore::InlineBidiResolver::appendRun):
1840         (WebCore::RenderBlock::bidiReorderLine):
1841         (WebCore::buildCompactRuns):
1842         (WebCore::RenderBlock::layoutInlineChildren):
1843         (WebCore::RenderBlock::determineStartPosition):
1844         (WebCore::RenderBlock::determineEndPosition):
1845         (WebCore::RenderBlock::matchedEndLine):
1846         (WebCore::skipNonBreakingSpace):
1847         (WebCore::requiresLineBox):
1848         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
1849         (WebCore::RenderBlock::skipWhitespace):
1850         (WebCore::shouldSkipWhitespaceAfterStartObject):
1851         (WebCore::RenderBlock::findNextLineBreak):
1852
1853 2008-07-05  Jan Michael Alonzo  <jmalonzo@webkit.org>
1854
1855         Rubber-stamped by Oliver Hunt
1856
1857         Coding style fix
1858
1859         * html/CanvasRenderingContext2D.cpp: Indentation fix
1860
1861 2008-07-04  Oliver Hunt  <oliver@apple.com>
1862
1863         Fix windows build
1864
1865         * WebCore.vcproj/WebCore.vcproj:
1866
1867 2008-07-04  Sam Weinig  <sam@webkit.org>
1868
1869         Fix Qt build.
1870
1871         * bridge/qt/qt_instance.cpp:
1872
1873 2008-07-04  Sam Weinig  <sam@webkit.org>
1874
1875         Rubber-stamped by Dan Bernstein.
1876
1877         Split Error and GetterSetter out of JSObject.h.
1878
1879         * ForwardingHeaders/kjs/Error.h: Added.
1880         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1881         * bindings/js/JSClipboardCustom.cpp:
1882         * bindings/js/JSDOMWindowBase.cpp:
1883         * bindings/js/JSEventTargetBase.cpp:
1884         * bindings/js/JSHTMLDocumentCustom.cpp:
1885         * bindings/js/JSXMLHttpRequestCustom.cpp:
1886         * bindings/scripts/CodeGeneratorJS.pm:
1887         * bridge/NP_jsobject.cpp:
1888         * bridge/jni/jni_instance.cpp:
1889         * bridge/jni/jni_runtime.cpp:
1890         * bridge/objc/objc_instance.mm:
1891         * bridge/objc/objc_runtime.mm:
1892         * bridge/objc/objc_utility.h:
1893         * bridge/runtime_array.cpp:
1894         * bridge/runtime_method.cpp:
1895         * bridge/runtime_object.cpp:
1896
1897 2008-07-04  David D. Kilzer  <ddkilzer@webkit.org>
1898
1899         Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives
1900
1901         <https://bugs.webkit.org/show_bug.cgi?id=15290>
1902         <rdar://problem/5509173>
1903
1904         Reviewed by Dan Bernstein.
1905
1906         Tests: webarchive/archive-empty-frame-dom.html
1907                webarchive/doctype.html
1908
1909         * editing/markup.cpp:
1910         (WebCore::createFullMarkup): If the Node is a Document or a
1911         DocumentType, don't prepend the <!DOCTYPE> tag since that will
1912         cause it to be duplicated.
1913         * loader/archive/cf/LegacyWebArchive.cpp:
1914         (WebCore::LegacyWebArchive::create): Ditto.
1915
1916 2008-07-04  Jan Michael Alonzo  <jmalonzo@webkit.org>
1917
1918         Gtk build fix
1919
1920         * GNUmakefile.am:
1921
1922 2008-07-04  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1923
1924         Reviewed by Eric Seidel.
1925
1926         Bring our implementation of the Netscape plugin API closer to current
1927         code style guidelines.
1928
1929         * bridge/NP_jsobject.cpp:
1930         (getListFromVariantArgs):
1931         (jsAllocate):
1932         (jsDeallocate):
1933         (_NPN_CreateScriptObject):
1934         (_NPN_CreateNoScriptObject):
1935         (_NPN_InvokeDefault):
1936         (_NPN_Invoke):
1937         (_NPN_Evaluate):
1938         (_NPN_GetProperty):
1939         (_NPN_SetProperty):
1940         (_NPN_RemoveProperty):
1941         (_NPN_HasProperty):
1942         (_NPN_HasMethod):
1943         (_NPN_Enumerate):
1944         * bridge/npruntime_impl.h:
1945
1946 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
1947
1948         Fix the Qt/Windows build.
1949
1950         * WebCore.pro: Moved PluginMainThreadScheduler.cpp to the main
1951         sources, so that it is always compiled.
1952         * platform/qt/CursorQt.cpp: #undef CopyCursor, as it's defined by some
1953         Windows header.
1954         * platform/qt/KeyboardCodes.h: Don't re-define some of the keycodes
1955         that are defined by Windows already.
1956         * platform/qt/TemporaryLinkStubs.cpp: Removed the PluginDatabase stubs
1957         that are now platform-independent in plugin/PluginDatabase.cpp.
1958
1959 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
1960
1961         Fix the Mac build for real, don't define listDirectory() twice.
1962
1963         * platform/mac/FileSystemMac.mm:
1964
1965 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
1966
1967         Prospective Mac build fix.
1968
1969         * platform/mac/FileSystemMac.mm: Include NotImplemented.h.
1970         * platform/posix/FileSystemPOSIX.cpp: Ditto.
1971
1972 2008-07-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
1973
1974         Reviewed by Simon.
1975
1976         Move duplicated code from each PluginDatabaseXX-implementation
1977         to PluginDabase.cpp -- ifdefed based on the XP_PLATFORM we are
1978         compiling plugins for.
1979
1980         This make the code cleaner and we can share common patterns.
1981         The only implementation left which is specific is the Win
1982         implementation (also used by QtWebKit/Win), but we might
1983         want to move that too.
1984
1985         * GNUmakefile.am: Removed PluginDatabaseGtk.cpp from the build.
1986         * WebCore.pro: Removed PluginDatabaseQt.cpp from the build.
1987         * plugins/PluginDatabase.cpp:
1988         (WebCore::PluginDatabase::defaultPluginDirectories):
1989         (WebCore::PluginDatabase::isPreferredPluginDirectory):
1990         (WebCore::PluginDatabase::getPluginPathsInDirectories):
1991         * plugins/gtk/PluginDatabaseGtk.cpp: Removed.
1992         * plugins/qt/PluginDatabaseQt.cpp: Removed.
1993         * plugins/wx/PluginDatabaseWx.cpp: Removed.
1994         * webcore-wx.bkl: Removed PluginDatabaseWx.cpp from the build.
1995
1996 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
1997
1998         Fix the Wx build.
1999
2000         * WebCoreSources.bkl: Add plugins/PluginMainThreadScheduler.cpp to the
2001         build.
2002         * page/FocusController.cpp:
2003         (WebCore::FocusController::setActive): Extend MAC #ifdef to WX as
2004         layoutIfNeededRecursive does not exist for the Wx port.
2005
2006 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
2007
2008         Fix the Gtk build, adapt to renamed files.
2009
2010         * GNUmakefile.am:
2011
2012 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
2013
2014         Fix the Qt build, adapt to renamed files.
2015
2016         * WebCore.pro:
2017
2018 2008-07-03  Oliver Hunt  <oliver@apple.com>
2019
2020         Reviewed by Eric Seidel.
2021
2022         Move filter implementations to platform directory.
2023
2024         * WebCore.vcproj/WebCore.vcproj
2025         * WebCore.xcodeproj/project.pbxproj:
2026         * svg/SVGComponentTransferFunctionElement.h:
2027         * svg/SVGFEBlendElement.h:
2028         * svg/SVGFEColorMatrixElement.h:
2029         * svg/SVGFEComponentTransferElement.h:
2030         * svg/SVGFECompositeElement.h:
2031         * platform/graphics/filters/FEBlend.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.cpp.
2032         * platform/graphics/filters/FEBlend.h: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.h.
2033         * platform/graphics/filters/FEColorMatrix.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.cpp.
2034         * platform/graphics/filters/FEColorMatrix.h: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.h.
2035         * platform/graphics/filters/FEComponentTransfer.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.cpp.
2036         * platform/graphics/filters/FEComponentTransfer.h: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.h.
2037         * platform/graphics/filters/FEComposite.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.cpp.
2038         * platform/graphics/filters/FEComposite.h: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.h.
2039
2040 2008-07-03  Alex Mathews  <possessedpenguinbob@gmail.com>
2041
2042         Reviewed by Oliver Hunt.
2043
2044         Bug 19835: WebKit needs cross-platform filter system
2045         <https://bugs.webkit.org/show_bug.cgi?id=19835>
2046
2047         More class refactoring in preparation for cross-platform filter
2048         implementation.
2049
2050         * WebCore.xcodeproj/project.pbxproj:
2051         * svg/FilterEffect.h:
2052         * svg/SVGComponentTransferFunctionElement.cpp:
2053         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2054         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
2055         (WebCore::SVGComponentTransferFunctionElement::transferFunction):
2056         * svg/SVGComponentTransferFunctionElement.h:
2057         * svg/SVGFEColorMatrixElement.cpp:
2058         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2059         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
2060         (WebCore::SVGFEColorMatrixElement::filterEffect):
2061         (WebCore::SVGFEColorMatrixElement::build):
2062         * svg/SVGFEColorMatrixElement.h:
2063         * svg/SVGFEComponentTransferElement.cpp:
2064         (WebCore::SVGFEComponentTransferElement::filterEffect):
2065         (WebCore::SVGFEComponentTransferElement::build):
2066         * svg/SVGFEComponentTransferElement.h:
2067         * svg/SVGFECompositeElement.cpp:
2068         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
2069         (WebCore::SVGFECompositeElement::parseMappedAttribute):
2070         (WebCore::SVGFECompositeElement::filterEffect):
2071         (WebCore::SVGFECompositeElement::build):
2072         * svg/SVGFECompositeElement.h:
2073         * svg/graphics/filters/SVGFEBlend.cpp:
2074         * svg/graphics/filters/SVGFEBlend.h:
2075         * svg/graphics/filters/SVGFEColorMatrix.cpp:
2076         (WebCore::FEColorMatrix::FEColorMatrix):
2077         (WebCore::FEColorMatrix::create):
2078         (WebCore::FEColorMatrix::type):
2079         (WebCore::FEColorMatrix::setType):
2080         (WebCore::FEColorMatrix::values):
2081         (WebCore::FEColorMatrix::setValues):
2082         (WebCore::FEColorMatrix::apply):
2083         (WebCore::FEColorMatrix::dump):
2084         * svg/graphics/filters/SVGFEColorMatrix.h:
2085         (WebCore::):
2086         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
2087         (WebCore::FEComponentTransfer::FEComponentTransfer):
2088         (WebCore::FEComponentTransfer::create):
2089         (WebCore::FEComponentTransfer::redFunction):
2090         (WebCore::FEComponentTransfer::setRedFunction):
2091         (WebCore::FEComponentTransfer::greenFunction):
2092         (WebCore::FEComponentTransfer::setGreenFunction):
2093         (WebCore::FEComponentTransfer::blueFunction):
2094         (WebCore::FEComponentTransfer::setBlueFunction):
2095         (WebCore::FEComponentTransfer::alphaFunction):
2096         (WebCore::FEComponentTransfer::setAlphaFunction):
2097         (WebCore::FEComponentTransfer::apply):
2098         (WebCore::FEComponentTransfer::dump):
2099         * svg/graphics/filters/SVGFEComponentTransfer.h:
2100         (WebCore::):
2101         (WebCore::ComponentTransferFunction::ComponentTransferFunction):
2102         * svg/graphics/filters/SVGFEComposite.cpp:
2103         (WebCore::FEComposite::FEComposite):
2104         (WebCore::FEComposite::create):
2105         (WebCore::FEComposite::operation):
2106         (WebCore::FEComposite::setOperation):
2107         (WebCore::FEComposite::k1):
2108         (WebCore::FEComposite::setK1):
2109         (WebCore::FEComposite::k2):
2110         (WebCore::FEComposite::setK2):
2111         (WebCore::FEComposite::k3):
2112         (WebCore::FEComposite::setK3):
2113         (WebCore::FEComposite::k4):
2114         (WebCore::FEComposite::setK4):
2115         (WebCore::FEComposite::apply):
2116         (WebCore::FEComposite::dump):
2117         * svg/graphics/filters/SVGFEComposite.h:
2118         (WebCore::):
2119         * svg/graphics/filters/cg/SVGFEColorMatrixCg.mm: Removed.
2120         * svg/graphics/filters/cg/SVGFEComponentTransferCg.mm: Removed.
2121         * svg/graphics/filters/cg/SVGFECompositeCg.mm: Removed.
2122
2123 2008-07-03  Dan Bernstein  <mitz@apple.com>
2124
2125         Reviewed by John Sullivan.
2126
2127         - fix <rdar://problem/6020930> Bidi Problem When Resizing Window
2128
2129         Test: fast/text/international/bidi-AN-after-empty-run.html
2130
2131         * platform/text/BidiResolver.h:
2132         (WebCore::::appendRun): Changed to reset the current direction and
2133         "end of run" direction even in the empty run case.
2134         * rendering/bidi.cpp:
2135         (WebCore::BidiState::appendRun): Ditto.
2136
2137 2008-07-02  Jon Honeycutt  <jhoneycutt@apple.com>
2138
2139         <rdar://5983747> Safari crashes trying to load the SilverLight plugin
2140
2141         If a plug-in returned an error code from NPP_NewStream, we would call
2142         NPP_DestroyStream while cleaning up the request. We now only call
2143         NPP_DestroyStream if NPP_NewStream was successful, matching Firefox.
2144
2145         Reviewed by Anders.
2146
2147         * plugins/PluginStream.cpp:
2148         (WebCore::PluginStream::startStream): If NPP_NewStream returns an error,
2149         don't set m_streamState to StreamStarted, and return after calling
2150         cancelAndDestroyStream.
2151         (WebCore::PluginStream::destroyStream): Don't call NPP_DestroyStream if
2152         the stream didn't start successfully.
2153
2154 2008-07-03  David Hyatt  <hyatt@apple.com>
2155
2156         Revise Dan's fix for an assert on Windows, since layoutIfNeededRecursive doesn't exist on the
2157         Mac.  Revert updateControlTints and add the layout call outside of it in the already-existing
2158         !PLATFORM(MAC) ifdef in FocusController's setActive method.
2159
2160         Reviewed by ggaren, weinig
2161
2162         * page/FocusController.cpp:
2163         (WebCore::FocusController::setActive):
2164         * page/FrameView.cpp:
2165         (WebCore::FrameView::updateControlTints):
2166
2167 2008-07-03  Alexey Proskuryakov  <ap@webkit.org>
2168
2169         Reviewed by Darin.
2170
2171         https://bugs.webkit.org/show_bug.cgi?id=19884
2172         Locating a store at www.366.ru doesn't work
2173
2174         Test: fast/forms/submit-with-base.html
2175
2176         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Treat empty action the same
2177         as missing one - ignore base URL.
2178
2179 2008-07-03  Dan Bernstein  <mitz@apple.com>
2180
2181         Reviewed by John Sullivan.
2182
2183         - fix <rdar://problem/6048904> Assert in WebCore::Frame::paint in Windows
2184
2185         * page/FrameView.cpp:
2186         (WebCore::FrameView::updateControlTints): Changed to update layout
2187         recursively and not just for the top-level frame.
2188
2189 2008-07-03  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2190
2191         Reviewed by Geoff.
2192
2193         Bug 19853: REGRESSION (r34838): Crash when visiting http://www.thewebsiteisdown.com/salesguy.html
2194         https://bugs.webkit.org/show_bug.cgi?id=19853
2195
2196         Remove the body of _NPN_SetException(), because it was simply calling
2197         throwError(), which sets an exception on an ExecState but does not
2198         actually handle it. The presence of an exception on the global ExecState
2199         causes assertions that there is no exception set on that ExecState to
2200         fail, as well as causing Machine::execute() to mistakingly return 0 in
2201         some cases, as it assumes the presence of an exception implies that it
2202         has run out of memory.
2203
2204         * bridge/NP_jsobject.cpp:
2205         (_NPN_SetException):
2206
2207 2008-07-03  Maciej Katafiasz  <mathrick@gmail.com>
2208
2209         Gtk build fix with SVG filters enabled
2210
2211         * GNUmakefile.am: Include missing SVG filter sources
2212
2213 2008-07-03  Simon Hausmann  <hausmann@webkit.org>
2214
2215         Fix the Qt build, added FilterEffect to the build.
2216
2217         * WebCore.pro:
2218
2219 2008-07-02  Brady Eidson  <beidson@apple.com>
2220
2221         Reviewed by Mitz Pettel and John Sullivan
2222
2223         Fix for <rdar://problem/5549871> - Crash when calling [WebView stopLoading:] or [WebFrame stopLoading] 
2224         inside of the frame load delegate method -webView:didStartProvisionalLoadForFrame:.
2225
2226         Test: fast/loader/stop-provisional-loads.html
2227
2228         * loader/FrameLoader.cpp:
2229         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Since the provisionalDocumentLoader may have been cleared
2230           by the prepareForLoadStart() call, null check it again.
2231
2232 2008-07-01  Alex Mathews  <possessedpenguinbob@gmail.com>
2233
2234         Reviewed by Oliver Hunt.
2235
2236         Renaming of class SVGFEBlend to FEBlend as well as removing
2237         a little bit of antiquated code. This includes the removal of
2238         SVGFEBlendCg.mm; the feBlend element will now no longer
2239         render. 
2240
2241         * WebCore.xcodeproj/project.pbxproj:
2242         * svg/FilterBuilder.h:
2243         (WebCore::FilterBuilder::add):
2244         (WebCore::FilterBuilder::getEffectById):
2245         * svg/SVGFEBlendElement.cpp:
2246         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
2247         (WebCore::SVGFEBlendElement::parseMappedAttribute):
2248         (WebCore::SVGFEBlendElement::filterEffect):
2249         (WebCore::SVGFEBlendElement::build):
2250         * svg/SVGFEBlendElement.h:
2251         * svg/SVGFilterPrimitiveStandardAttributes.h:
2252         * svg/graphics/filters/SVGFEBlend.cpp:
2253         (WebCore::FEBlend::FEBlend):
2254         (WebCore::FEBlend::create):
2255         (WebCore::FEBlend::in2):
2256         (WebCore::FEBlend::setIn2):
2257         (WebCore::FEBlend::blendMode):
2258         (WebCore::FEBlend::setBlendMode):
2259         (WebCore::FEBlend::apply):
2260         (WebCore::FEBlend::dump):
2261         * svg/graphics/filters/SVGFEBlend.h:
2262         (WebCore::):
2263         * svg/graphics/filters/cg/SVGFEBlendCg.mm: Removed.
2264
2265 2008-07-02  Beth Dakin  <bdakin@apple.com>
2266
2267         Reviewed by Darin.
2268
2269         Fix for <rdar://problem/6015523> Implement ARIA ranges/sliders
2270         and
2271         <rdar://problem/5934355> Need to implement ARIA role="spinbutton"
2272
2273         * page/AccessibilityObject.h:
2274         (WebCore::AccessibilityObject::isSlider):
2275         * page/AccessibilityRenderObject.cpp:
2276         (WebCore::AccessibilityRenderObject::isSlider):
2277         (WebCore::AccessibilityRenderObject::valueForRange):
2278         (WebCore::AccessibilityRenderObject::maxValueForRange):
2279         (WebCore::AccessibilityRenderObject::minValueForRange):
2280         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): We 
2281         were addressing the generic has-an-ARIA-role case too early here.
2282         (WebCore::AccessibilityRenderObject::focusedUIElement): This is a 
2283         bug I ran into while testing role='spinbutton', spinbutton is a 
2284         role that can have an active descendant. But we were always trying 
2285         to forward focus to the active descendant, even if one was not 
2286         specified. 
2287         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant): 
2288         'spinbutton' maps to ProgressIndicatorRole.
2289         (WebCore::RoleEntry::):
2290         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
2291         * page/AccessibilityRenderObject.h:
2292         * page/mac/AccessibilityObjectWrapper.mm:
2293         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2294         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2295
2296 2008-07-02  Dan Bernstein  <mitz@apple.com>
2297
2298         Reviewed by Adam Roben.
2299
2300         - Windows build fix
2301
2302         Renamed the ERROR token in the XPath grammar to XPATH_ERROR, because
2303         the ERROR macro is defined in <wingdi.h>.
2304
2305         * xml/XPathGrammar.y:
2306         * xml/XPathParser.cpp:
2307         (WebCore::XPath::Parser::lexString):
2308         (WebCore::XPath::Parser::nextTokenInternal):
2309
2310 2008-07-02  Alexey Proskuryakov  <ap@webkit.org>
2311
2312         Inspired and reviewed by Mark Rowe.
2313
2314         Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.
2315
2316         * bindings/objc/ExceptionHandlers.h:
2317         * bindings/objc/WebScriptObject.mm:
2318         * dom/Document.cpp:
2319         * dom/Node.cpp:
2320         * page/Frame.cpp:
2321         * page/InspectorController.cpp:
2322         * page/JavaScriptProfileNode.cpp:
2323         * page/mac/FrameMac.mm:
2324         * platform/mac/ThreadCheck.mm:
2325         * xml/XMLHttpRequest.cpp:
2326
2327 2008-07-02  Simon Hausmann  <hausmann@webkit.org>
2328
2329         Fix the Gtk build.
2330
2331         * plugins/gtk/PluginViewGtk.cpp: Adapt to JSLock API changes.
2332         (WebCore::PluginView::paint):
2333         (WebCore::PluginView::handleKeyboardEvent):
2334         (WebCore::PluginView::handleMouseEvent):
2335         (WebCore::PluginView::setNPWindowRect):
2336         (WebCore::PluginView::stop):
2337         (WebCore::PluginView::init):
2338
2339 2008-07-02  Simon Hausmann  <hausmann@webkit.org>
2340
2341         Build fixes.
2342
2343         * WebCore.pro: Added plugins/PluginMainThreadScheduler.cpp to the
2344         build.
2345         * bridge/qt/qt_instance.cpp: Adjust to JSLock API change.
2346         * bridge/qt/qt_runtime.cpp: Ditto.
2347         (KJS::Bindings::convertValueToQVariant):
2348         (KJS::Bindings::convertQVariantToValue):
2349         (KJS::Bindings::QtRuntimeMetaMethod::call):
2350         (KJS::Bindings::QtRuntimeConnectionMethod::call):
2351         (KJS::Bindings::QtConnectionObject::execute):
2352         * page/JavaScriptProfileNode.cpp: Inlude kjs/JSValue.h instead of
2353         JavaScriptCore/JSValue.h.
2354         * plugins/qt/PluginViewQt.cpp: Adjust to JSLock API changes.
2355         (WebCore::PluginView::setNPWindowRect): Ditto.
2356         (WebCore::PluginView::stop): Ditto.
2357         (WebCore::PluginView::init): Ditto.
2358
2359 2008-07-02  Alexey Proskuryakov  <ap@webkit.org>
2360
2361         Build fix.
2362
2363         * plugins/PluginView.cpp:
2364         (WebCore::PluginView::start):
2365         (WebCore::getString):
2366         (WebCore::PluginView::performRequest):
2367         (WebCore::PluginView::bindingInstance):
2368         * plugins/win/PluginViewWin.cpp:
2369         (WebCore::PluginView::dispatchNPEvent):
2370         (WebCore::PluginView::setNPWindowRect):
2371         (WebCore::PluginView::stop):
2372         Pass false to JSLock and JSLock::DropAllLocks constructors.
2373
2374 2008-07-01  Oliver Hunt  <oliver@apple.com>
2375
2376         Reviewed by Geoff Garen.
2377
2378         <rdar://problem/5974306> CanvasRenderingContext2D becomes invalid when source canvas element is collected
2379
2380         In order to fix this we now make the rendering context and the canvas element
2381         share the same reference count, ensuring that references to the rendering
2382         context will force the canvas element to remain live as well.
2383
2384         Test: fast/canvas/canvas-longlived-context.html
2385
2386         * html/CanvasRenderingContext2D.cpp:
2387         (WebCore::CanvasRenderingContext2D::clearPathForDashboardBackwardCompatibilityMode):
2388         (WebCore::CanvasRenderingContext2D::createImageData):
2389         (WebCore::CanvasRenderingContext2D::getImageData):
2390         (WebCore::CanvasRenderingContext2D::putImageData):
2391         * html/CanvasRenderingContext2D.h:
2392         (WebCore::CanvasRenderingContext2D::create):
2393         * html/HTMLCanvasElement.cpp:
2394         (WebCore::HTMLCanvasElement::getContext):
2395         * html/HTMLCanvasElement.h:
2396
2397 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
2398
2399         Reviewed by Darin.
2400
2401         Disable JSLock for per-thread contexts.
2402
2403         * bridge/runtime_root.cpp:
2404         (KJS::Bindings::RootObject::invalidate):
2405         (KJS::Bindings::RootObject::gcProtect):
2406         (KJS::Bindings::RootObject::gcUnprotect):
2407         Don't lock while calling gcProtect/gcUnprotect, which now has its own implicit lock.
2408
2409         * storage/Database.cpp: (WebCore::Database::Database): Call Heap::setGCProtectNeedsLocking
2410         to indicate that protected value list can be concurrently accessed from multiple threads now.
2411
2412         * xml/XMLHttpRequest.cpp:
2413         (WebCore::XMLHttpRequest::loadRequestSynchronously): There is no need to drop the locks here,
2414         as fake locks cannot deadlock, and there is no danger that someone will try to take a real
2415         JSLock on the main thread while we are waiting for response.
2416         (WebCore::XMLHttpRequest::loadRequestAsynchronously): There is no need to explicitly lock
2417         around gcProtect/gcUnprotect now.
2418         (WebCore::XMLHttpRequest::dropProtection): Access heap directly, rather than via
2419         JSGlobalData::threadInstance().
2420
2421         * bindings/js/GCController.cpp:
2422         (WebCore::collect):
2423         (WebCore::GCController::gcTimerFired):
2424         (WebCore::GCController::garbageCollectNow):
2425         (WebCore::GCController::garbageCollectOnAlternateThreadForDebugging):
2426         * bindings/js/JSCustomSQLStatementCallback.cpp:
2427         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2428         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2429         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2430         * bindings/js/JSCustomSQLTransactionCallback.cpp:
2431         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2432         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2433         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2434         * bindings/js/JSCustomVoidCallback.cpp:
2435         (WebCore::JSCustomVoidCallback::handleEvent):
2436         * bindings/js/JSCustomXPathNSResolver.cpp:
2437         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2438         * bindings/js/JSDOMWindowBase.cpp:
2439         (WebCore::DOMWindowTimer::~DOMWindowTimer):
2440         (WebCore::JSDOMWindowBase::clear):
2441         (WebCore::JSDOMWindowBase::timerFired):
2442         * bindings/js/JSEventCustom.cpp:
2443         (WebCore::toJS):
2444         * bindings/js/JSEventListener.cpp:
2445         (WebCore::JSAbstractEventListener::handleEvent):
2446         (WebCore::JSLazyEventListener::parseCode):
2447         * bindings/js/JSNodeFilterCondition.cpp:
2448         (WebCore::JSNodeFilterCondition::acceptNode):
2449         * bindings/js/ScheduledAction.cpp:
2450         (WebCore::ScheduledAction::execute):
2451         * bindings/js/ScriptController.cpp:
2452         (WebCore::ScriptController::evaluate):
2453         (WebCore::ScriptController::clear):
2454         (WebCore::ScriptController::createHTMLEventHandler):
2455         (WebCore::ScriptController::createSVGEventHandler):
2456         (WebCore::ScriptController::initScript):
2457         (WebCore::ScriptController::updateDocument):
2458         * bindings/objc/WebScriptObject.mm:
2459         (-[WebScriptObject callWebScriptMethod:withArguments:]):
2460         (-[WebScriptObject evaluateWebScript:]):
2461         (-[WebScriptObject setValue:forKey:]):
2462         (-[WebScriptObject valueForKey:]):
2463         (-[WebScriptObject removeWebScriptKey:]):
2464         (-[WebScriptObject stringRepresentation]):
2465         (-[WebScriptObject webScriptValueAtIndex:]):
2466         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
2467         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
2468         * bridge/NP_jsobject.cpp:
2469         (_NPN_InvokeDefault):
2470         (_NPN_Invoke):
2471         (_NPN_Evaluate):
2472         (_NPN_GetProperty):
2473         (_NPN_SetProperty):
2474         (_NPN_RemoveProperty):
2475         (_NPN_HasProperty):
2476         (_NPN_HasMethod):
2477         (_NPN_SetException):
2478         (_NPN_Enumerate):
2479         * bridge/c/c_class.cpp:
2480         (KJS::Bindings::CClass::~CClass):
2481         (KJS::Bindings::CClass::methodsNamed):
2482         (KJS::Bindings::CClass::fieldNamed):
2483         * bridge/c/c_instance.cpp:
2484         (KJS::Bindings::CInstance::invokeMethod):
2485         (KJS::Bindings::CInstance::invokeDefaultMethod):
2486         (KJS::Bindings::CInstance::getPropertyNames):
2487         * bridge/c/c_runtime.cpp:
2488         (KJS::Bindings::CField::valueFromInstance):
2489         (KJS::Bindings::CField::setValueToInstance):
2490         * bridge/c/c_utility.cpp:
2491         (KJS::Bindings::convertValueToNPVariant):
2492         (KJS::Bindings::convertNPVariantToValue):
2493         * bridge/jni/jni_class.cpp:
2494         (JavaClass::JavaClass):
2495         (JavaClass::~JavaClass):
2496         * bridge/jni/jni_instance.cpp:
2497         (JavaInstance::stringValue):
2498         * bridge/jni/jni_jsobject.mm:
2499         (JavaJSObject::call):
2500         (JavaJSObject::eval):
2501         (JavaJSObject::getMember):
2502         (JavaJSObject::setMember):
2503         (JavaJSObject::removeMember):
2504         (JavaJSObject::getSlot):
2505         (JavaJSObject::setSlot):
2506         (JavaJSObject::toString):
2507         (JavaJSObject::convertValueToJObject):
2508         (JavaJSObject::convertJObjectToValue):
2509         * bridge/jni/jni_objc.mm:
2510         (KJS::Bindings::dispatchJNICall):
2511         * bridge/jni/jni_runtime.cpp:
2512         (JavaMethod::signature):
2513         * bridge/jni/jni_runtime.h:
2514         (KJS::Bindings::JavaString::JavaString):
2515         (KJS::Bindings::JavaString::_commonInit):
2516         (KJS::Bindings::JavaString::~JavaString):
2517         (KJS::Bindings::JavaString::UTF8String):
2518         * bridge/jni/jni_utility.cpp:
2519         (KJS::Bindings::convertArrayInstanceToJavaArray):
2520         (KJS::Bindings::convertValueToJValue):
2521         * bridge/npruntime.cpp:
2522         (_NPN_GetStringIdentifier):
2523         * bridge/objc/objc_instance.mm:
2524         (ObjcInstance::moveGlobalExceptionToExecState):
2525         (ObjcInstance::invokeMethod):
2526         (ObjcInstance::invokeDefaultMethod):
2527         (ObjcInstance::setValueOfUndefinedField):
2528         (ObjcInstance::getValueOfUndefinedField):
2529         * bridge/objc/objc_runtime.mm:
2530         (ObjcField::valueFromInstance):
2531         (ObjcField::setValueToInstance):
2532         * bridge/objc/objc_utility.mm:
2533         (KJS::Bindings::convertValueToObjcValue):
2534         (KJS::Bindings::convertNSStringToString):
2535         (KJS::Bindings::convertObjcValueToValue):
2536         * bridge/runtime.cpp:
2537         (KJS::Bindings::Instance::createRuntimeObject):
2538         * dom/Document.cpp:
2539         (WebCore::Document::~Document):
2540         * dom/Node.cpp:
2541         (WebCore::Node::setDocument):
2542         * history/CachedPage.cpp:
2543         (WebCore::CachedPage::CachedPage):
2544         (WebCore::CachedPage::restore):
2545         (WebCore::CachedPage::clear):
2546         * html/HTMLPlugInElement.cpp:
2547         (WebCore::HTMLPlugInElement::createNPObject):
2548         * loader/FrameLoader.cpp:
2549         (WebCore::getString):
2550         * page/Frame.cpp:
2551         (WebCore::Frame::bindingRootObject):
2552         (WebCore::Frame::windowScriptNPObject):
2553         (WebCore::Frame::clearScriptObjects):
2554         * page/InspectorController.cpp:
2555         (WebCore::jsStringRef):
2556         (WebCore::ConsoleMessage::ConsoleMessage):
2557         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
2558         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
2559         (WebCore::getResourceDocumentNode):
2560         (WebCore::search):
2561         (WebCore::inspectedWindow):
2562         (WebCore::wrapCallback):
2563         (WebCore::currentCallFrame):
2564         (WebCore::profiles):
2565         (WebCore::InspectorController::focusNode):
2566         (WebCore::InspectorController::addDatabaseScriptResource):
2567         (WebCore::InspectorController::addScriptProfile):
2568         * page/JavaScriptCallFrame.cpp:
2569         (WebCore::JavaScriptCallFrame::evaluate):
2570         * page/JavaScriptProfileNode.cpp:
2571         (WebCore::getTotalTime):
2572         (WebCore::getSelfTime):
2573         (WebCore::getTotalPercent):
2574         (WebCore::getSelfPercent):
2575         (WebCore::getNumberOfCalls):
2576         (WebCore::getChildren):
2577         (WebCore::getVisible):
2578         * page/mac/FrameMac.mm:
2579         (WebCore::Frame::windowScriptObject):
2580         Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebCore
2581         doesn't need locking. In the future, it may be possible to remove some of these if we
2582         establish that this won't make JSC assertions fail (and that we don't want to add such
2583         assertions either).
2584         Added includes that are now needed.
2585
2586 2008-07-01  Dan Bernstein  <mitz@apple.com>
2587
2588         Reviewed by Oliver Hunt.
2589
2590         - fix a CSSParserValueList leak seen on the build bot
2591
2592         * css/CSSParser.cpp:
2593         (WebCore::BorderImageParseContext::commitBorderImage):
2594
2595 2008-07-01  Alex Mathews  <possessedpenguinbob@gmail.com>
2596
2597         Reviewed by Oliver Hunt.
2598
2599         Prep for more Filter class name changes. Added the first few files for
2600         the new Filter architecture to come.
2601
2602         * WebCore.xcodeproj/project.pbxproj:
2603         * svg/Filter.cpp: Added.
2604         (WebCore::Filter::Filter):
2605         (WebCore::Filter::create):
2606         * svg/Filter.h: Added.
2607         * svg/FilterBuilder.h: Added.
2608         (WebCore::FilterBuilder::add):
2609         (WebCore::FilterBuilder::getEffectById):
2610         (WebCore::FilterBuilder::filter):
2611         * svg/FilterEffect.cpp: Added.
2612         (WebCore::FilterEffect::FilterEffect):
2613         (WebCore::FilterEffect::~FilterEffect):
2614         * svg/FilterEffect.h: Added.
2615
2616 2008-07-01  Christian Dywan  <christian@twotoasts.de>
2617
2618         Gtk+ build fix.
2619
2620         * GNUmakefile.am: add WebCore/plugins/PluginMainThreadScheduler.cpp
2621
2622 2008-07-01  Anders Carlsson  <andersca@apple.com>
2623
2624         Reviewed by Darin.
2625
2626         Add PluginMainThreadScheduler.{cpp|h} to build.
2627         
2628         * WebCore.base.exp:
2629         * WebCore.xcodeproj/project.pbxproj:
2630         * plugins/PluginMainThreadScheduler.cpp:
2631
2632 2008-07-01  Dan Bernstein  <mitz@apple.com>
2633
2634         Reviewed by Darin Adler.
2635
2636         - move the method to set the base writing direction from Frame to Editor
2637
2638         * WebCore.base.exp: Updated.
2639         * editing/Editor.cpp:
2640         (WebCore::Editor::setBaseWritingDirection): Changed the parameter to a
2641         WritingDirection enum value and added the special behavior when the
2642         focused node is a text field or a text area.
2643         * editing/Editor.h:
2644         * page/ContextMenuController.cpp:
2645         (WebCore::ContextMenuController::contextMenuItemSelected): Changed back
2646         to call the Editor method.
2647         * page/Frame.cpp: Removed setSelectionBaseWritingDirection().
2648         * page/Frame.h:
2649
2650 2008-07-01  Darin Adler  <darin@apple.com>
2651
2652         Reviewed by Oliver.
2653
2654         - slight tweak of the setHash fix
2655
2656         * bindings/js/JSLocationCustom.cpp:
2657         (WebCore::JSLocation::setHash): Use oldRef instead of recomputing url.ref().
2658
2659 2008-07-01  Dan Bernstein  <mitz@apple.com>
2660
2661         Reviewed by Anders Carlsson.
2662
2663         - Mac release build fix
2664
2665         * page/Console.cpp:
2666
2667 2008-07-01  Dan Bernstein  <mitz@apple.com>
2668
2669         Reviewed by Anders Carlsson.
2670
2671         - fix <rdar://problem/6045896> REGRESSION: Leak in WebCore::StringImpl::create
2672
2673         * css/CSSPrimitiveValue.cpp:
2674         (WebCore::CSSPrimitiveValue::cleanup):
2675
2676 2008-07-01  Anders Carlsson  <andersca@apple.com>
2677
2678         Reviewed by Jon.
2679
2680         Don't add the Mozilla user agent quirk for Flash 10.
2681         
2682         * plugins/win/PluginPackageWin.cpp:
2683         (WebCore::PluginPackage::isPluginBlacklisted):
2684         (WebCore::PluginPackage::determineQuirks):
2685
2686 2008-07-01  David Kilzer  <ddkilzer@apple.com>
2687
2688         Move data: URL parsing code in HTMLObjectElement to KURL
2689
2690         Reviewed by Ada and Darin.
2691
2692         No test cases added since there is no change in behavior.
2693
2694         * html/HTMLObjectElement.cpp:
2695         (WebCore::HTMLObjectElement::isImageType): Extracted data: URL
2696         parsing code into WebCore::mimeTypeFromDataURL() in KURL.cpp.
2697         * platform/KURL.cpp:
2698         (WebCore::mimeTypeFromDataURL): Added.
2699         * platform/KURL.h:
2700         (WebCore::mimeTypeFromDataURL): Added.
2701
2702 2008-07-01  Dan Bernstein  <mitz@apple.com>
2703
2704         Reviewed by Dave Hyatt.
2705
2706         - fix <rdar://problem/6045890> REGRESSION: Leak in WebCore::CSSParser::createFloatingValueList()
2707
2708         * css/CSSParser.cpp:
2709         (WebCore::CSSParser::addUnresolvedProperty):
2710
2711 2008-07-01  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2712
2713         Reviewed by Brady Eidson.
2714
2715         Bug 19822: REGRESSION (r30243): setting location.hash to "#" causes a reload
2716         <https://bugs.webkit.org/show_bug.cgi?id=19822>
2717
2718         Change JSLocation::setHash() to not schedule navigation in the case
2719         where the old fragment is the null String and the new fragment is an
2720         empty String.
2721
2722         * bindings/js/JSLocationCustom.cpp:
2723         (WebCore::JSLocation::setHash):
2724
2725 2008-06-30  Anders Carlsson  <andersca@apple.com>
2726
2727         Reviewed by Adam.
2728
2729         Add PluginMainThreadScheduler, a singleton which is responsible for scheduling plug-in 
2730         callbacks on the main thread. Use this to implement NPN_PluginThreadAsyncCall on Windows.
2731         
2732         * WebCore.vcproj/WebCore.vcproj:
2733         Add PluginMainThreadScheduler.{cpp|h}
2734         
2735         * plugins/PluginMainThreadScheduler.cpp: Added.
2736         * plugins/PluginMainThreadScheduler.h: Added.
2737
2738         * plugins/PluginView.cpp:
2739         (WebCore::PluginView::start):
2740         Register with the thread scheduler.
2741         
2742         * plugins/npapi.cpp:
2743         (NPN_PluginThreadAsyncCall):
2744         Call the thread scheduler.
2745         
2746         * plugins/win/PluginPackageWin.cpp:
2747         (WebCore::PluginPackage::load):
2748         Initialize the NPN_PluginThreadAsyncCall callback.
2749         
2750         * plugins/win/PluginViewWin.cpp:
2751         (WebCore::PluginView::stop):
2752         Unregister with the scheduler. This makes sure that we won't try to deliver callbacks
2753         after the plug-in has been destroyed.
2754
2755 2008-07-01  Adam Roben  <aroben@apple.com>
2756
2757         Roll out r34913, as it broke the Windows build due to bad casting
2758
2759         r34913 introduced code that assigned pointers-to-member from a derived
2760         class into a base class pointer-to-member type (e.g., assigned a void
2761         (SVGUseElement::*)() into a void (SVGElement::*)()). This is bad
2762         because it could allow us to call SVGUseElement member functions on a
2763         different SVGElement-derived class. MSVC rightly flagged this as an
2764         error.
2765
2766         Rubberstamped by Anders Carlsson.
2767
2768 2008-07-01  Darin Adler  <darin@apple.com>
2769
2770         - fix build
2771
2772         * bindings/scripts/CodeGeneratorJS.pm: Fix warnings that indicate this was
2773         not working propertly.
2774
2775 2008-07-01  Dan Bernstein  <mitz@apple.com>
2776
2777         Reviewed by Darin Adler.
2778
2779         - fix <rdar://problem/6045893> REGRESSION: Leak in WebCore::HTMLCanvasElement::createPlatformImage() const
2780
2781         * html/CanvasRenderingContext2D.cpp:
2782         (WebCore::CanvasRenderingContext2D::createPattern):
2783
2784 2008-07-01  Sam Weinig  <sam@webkit.org>
2785
2786         Reviewed by Darin Adler.
2787
2788         Split JSCell and JSNumberCell class declarations out of JSValue.h
2789
2790         * ForwardingHeaders/kjs/JSNumberCell.h: Added.
2791         * bindings/scripts/CodeGeneratorJS.pm:
2792         * bridge/c/c_instance.cpp:
2793
2794 2008-07-01  chris fleizach  <cfleizach@apple.com>
2795
2796         Reviewed by Beth Dakin
2797
2798         <rdar://problem/6041580> REGRESSION: AX: AXSize of radio buttons is 0,0
2799
2800         Test: accessibility/radio-button-checkbox-size.html
2801
2802         * page/AccessibilityRenderObject.cpp:
2803         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
2804
2805 2008-07-01  Dan Bernstein  <mitz@apple.com>
2806
2807         Reviewed by Antti Koivisto.
2808
2809         - fix SVG pointer-events layout test failures
2810
2811         * css/SVGCSSParser.cpp:
2812         (WebCore::CSSParser::parseSVGValue):
2813
2814 2008-07-01  Nikolas Zimmermann  <zimmermann@kde.org>
2815
2816         Reviewed by Antti.
2817
2818         Fixes: https://bugs.webkit.org/show_bug.cgi?id=19841
2819         Fix two small problems in the gradient & pattern code.
2820
2821         Added 12 new layout tests: svg/dynamic-updates/SVGLinearGradientElement*.html
2822
2823         * svg/SVGLinearGradientElement.cpp:
2824         (WebCore::SVGLinearGradientElement::collectGradientProperties): Compare against already computed bounding box information, instead of querying attributes.
2825         * svg/SVGPatternElement.cpp:
2826         (WebCore::SVGPatternElement::collectPatternProperties): Ditto.
2827         * svg/SVGRadialGradientElement.cpp:
2828         (WebCore::SVGRadialGradientElement::collectGradientProperties): Ditto.
2829         (WebCore::SVGRadialGradientElement::svgAttributeChanged): 'fxAttr' updating wasn't handled. Copy'n'paste error.
2830
2831 2008-07-01  Simon Hausmann  <hausmann@webkit.org>
2832
2833         Fix the build, include SVGTransformList.h instead of
2834         SVGTransformlist.h
2835
2836         * svg/SVGGradientElement.h:
2837
2838 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
2839
2840         Reviewed by Antti.
2841
2842         <rdar://problem/6033080> REGRESSION: Some CH characters display as garbage on webpage for
2843         the first time.
2844
2845         Test: fast/encoding/preload-encoding.html
2846
2847         * html/PreloadScanner.cpp:
2848         (WebCore::PreloadScanner::tokenize): Reset charset when entering a tag, not just when
2849         starting a load.
2850
2851 2008-07-01  Nikolas Zimmermann  <zimmermann@kde.org>
2852
2853         Reviewed by Antti & Eric.
2854
2855         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
2856
2857         SVG Errata states: "All SVG DOM objects that directly correspond to an
2858         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
2859         means that any changes made to the attribute are immediately reflected in the
2860         corresponding SVG DOM object." (see linked URL on bug report)
2861
2862         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
2863         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
2864
2865         Add a new synchronization layer to handle SVG DOM -> XML changes.
2866
2867         Global macro change #1: ANIMATED_PROPERTY_FORWARD_DECLARATIONS contains the class name where it's defined as first parameter.
2868         Global macro change #2: Add ANIMATED_PROPERTY_START_DECLARATIONS to all direct base-classes.
2869         Global macro change #3: Rename ANIMATED_PROPERTY_DEFINITIONS to ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED for refcounted types (ie. SVGTransformList*).
2870
2871         Added test: svg/custom/svg-xml-dom-sync.html
2872         Fixed test: svg/hixie/dynamic/005-broken.xml (renamed to 005.xml)
2873
2874         * dom/Element.cpp:
2875         (WebCore::Element::Element): Initialize the two new bits.
2876         (WebCore::Element::attributes): Add hooks to call into SVG attribute synchronization code, wrapped in ENABLE(SVG) blocks.
2877         (WebCore::Element::getAttribute): Ditto.
2878         (WebCore::Element::hasAttributes): Ditto.
2879         * dom/Element.h: Add two bits: m_synchronizedSVGAttributes/m_synchronizingSVGAttribute, to track synchronization status.
2880         (WebCore::Element::updateAnimatedSVGAttribute): New virtual function, handling the synronication, similar to updateStyleAttribute.
2881         * dom/NamedAttrMap.h: Make addAttribute/removeAttribute protected, from use within the ANIMATED_* macros.
2882         * svg/SVGAElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2883         (WebCore::SVGAElement::contextElement): Return non-const value.
2884         * svg/SVGAltGlyphElement.h:
2885         (WebCore::SVGAltGlyphElement::contextElement): Ditto.
2886         * svg/SVGAnimateElement.h:
2887         (WebCore::SVGAnimateElement::contextElement): Ditto.
2888         * svg/SVGAnimateMotionElement.h:
2889         (WebCore::SVGAnimateMotionElement::contextElement): Ditto.
2890         * svg/SVGAnimateTransformElement.h:
2891         (WebCore::SVGAnimateTransformElement::contextElement): Ditto.
2892         * svg/SVGAnimatedTemplate.h: Add toString() conversion to all SVGAnimated* classes
2893         (WebCore::SVGAnimatedTemplate::toString):
2894         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
2895         (WebCore::lookupOrCreateWrapper):
2896         (WebCore::SVGAnimatedAngle::SVGAnimatedAngle): 
2897         (WebCore::SVGAnimatedAngle::toString):
2898         (WebCore::SVGAnimatedBoolean::SVGAnimatedBoolean):
2899         (WebCore::SVGAnimatedBoolean::toString):
2900         (WebCore::SVGAnimatedEnumeration::SVGAnimatedEnumeration):
2901         (WebCore::SVGAnimatedEnumeration::toString):
2902         (WebCore::SVGAnimatedInteger::SVGAnimatedInteger):
2903         (WebCore::SVGAnimatedInteger::toString):
2904         (WebCore::SVGAnimatedLength::SVGAnimatedLength):
2905         (WebCore::SVGAnimatedLength::toString):
2906         (WebCore::SVGAnimatedLengthList::SVGAnimatedLengthList):
2907         (WebCore::SVGAnimatedLengthList::toString):
2908         (WebCore::SVGAnimatedNumber::SVGAnimatedNumber):
2909         (WebCore::SVGAnimatedNumber::toString):
2910         (WebCore::SVGAnimatedNumberList::SVGAnimatedNumberList):
2911         (WebCore::SVGAnimatedNumberList::toString):
2912         (WebCore::SVGAnimatedPreserveAspectRatio::SVGAnimatedPreserveAspectRatio):
2913         (WebCore::SVGAnimatedPreserveAspectRatio::toString):
2914         (WebCore::SVGAnimatedRect::SVGAnimatedRect):
2915         (WebCore::SVGAnimatedRect::toString):
2916         (WebCore::SVGAnimatedString::SVGAnimatedString):
2917         (WebCore::SVGAnimatedString::toString):
2918         (WebCore::SVGAnimatedTransformList::SVGAnimatedTransformList):
2919         (WebCore::SVGAnimatedTransformList::toString):
2920         (WebCore::SVGAnimatedType::SVGAnimatedType):
2921         * svg/SVGAnimationElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2922         * svg/SVGCircleElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2923         (WebCore::SVGCircleElement::contextElement): Return non-const value.
2924         * svg/SVGClipPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2925         (WebCore::SVGClipPathElement::contextElement): Return non-const value.
2926         * svg/SVGComponentTransferFunctionElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
2927         * svg/SVGComponentTransferFunctionElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this class is a base class.
2928         * svg/SVGCursorElement.cpp: Wrap SVGLength objects in SVGLength() statements.
2929         (WebCore::SVGCursorElement::SVGCursorElement):
2930         * svg/SVGCursorElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS. Add ANIMATED_PROPERTY_START_DECLARATIONS.
2931         (WebCore::SVGCursorElement::contextElement): Return non-const value.
2932         * svg/SVGDefsElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2933         (WebCore::SVGDefsElement::contextElement): Return non-const value.
2934         * svg/SVGElement.cpp:
2935         (WebCore::SVGElement::updateAnimatedSVGAttribute): Override virtual function from Element, to handle SVG<->XML DOM synchronization.
2936         (WebCore::SVGElement::setSynchronizedSVGAttributes):
2937         * svg/SVGElement.h: Add helper class "StoredTypeWithDirtyFlag".
2938         (StoredTypeWithDirtyFlag::StoredTypeWithDirtyFlag): Tracks a type and a flag indicating that SVG<->XML DOM synchronization has to be done.
2939         (StoredTypeWithDirtyFlag::operator=):
2940         (StoredTypeWithDirtyFlag::operator==):
2941         (StoredTypeWithDirtyFlag::operator!=):
2942         (StoredTypeWithDirtyFlag::operator StoredType):
2943         (WebCore::SVGElement::invokeSVGPropertySynchronizer): New set of functions taking care of invoking the update handlers.
2944         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers): Ditto.
2945         (WebCore::SVGElement::addSVGPropertySynchronizer): Ditto.
2946         * svg/SVGEllipseElement.cpp: Wrap SVGLength objects in SVGLength() statements.
2947         (WebCore::SVGEllipseElement::SVGEllipseElement):
2948         * svg/SVGEllipseElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2949         (WebCore::SVGEllipseElement::contextElement): Return non-const value.
2950         * svg/SVGExternalResourcesRequired.h: Change contextElement() to return a non-const value.
2951         * svg/SVGFEBlendElement.h:
2952         (WebCore::SVGFEBlendElement::contextElement): Return non-const value.
2953         * svg/SVGFEColorMatrixElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
2954         * svg/SVGFEColorMatrixElement.h:
2955         (WebCore::SVGFEColorMatrixElement::contextElement): Return non-const value.
2956         * svg/SVGFEComponentTransferElement.h:
2957         (WebCore::SVGFEComponentTransferElement::contextElement): Return non-const value.
2958         * svg/SVGFECompositeElement.h:
2959         (WebCore::SVGFECompositeElement::contextElement): Return non-const value.
2960         * svg/SVGFEDiffuseLightingElement.h:
2961         (WebCore::SVGFEDiffuseLightingElement::contextElement): Return non-const value.
2962         * svg/SVGFEDisplacementMapElement.h:
2963         (WebCore::SVGFEDisplacementMapElement::contextElement): Return non-const value.
2964         * svg/SVGFEFloodElement.h:
2965         (WebCore::SVGFEFloodElement::contextElement): Return non-const value.
2966         * svg/SVGFEGaussianBlurElement.h:
2967         (WebCore::SVGFEGaussianBlurElement::contextElement): Return non-const value.
2968         * svg/SVGFEImageElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
2969         * svg/SVGFEImageElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2970         (WebCore::SVGFEImageElement::contextElement): Return non-const value.
2971         * svg/SVGFELightElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
2972         * svg/SVGFEMergeElement.h:
2973         (WebCore::SVGFEMergeElement::contextElement): Return non-const value.
2974         * svg/SVGFEMergeNodeElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
2975         (WebCore::SVGFEMergeNodeElement::contextElement): Return non-const value.
2976         * svg/SVGFEOffsetElement.h:
2977         (WebCore::SVGFEOffsetElement::contextElement): Return non-const value.
2978         * svg/SVGFESpecularLightingElement.h:
2979         (WebCore::SVGFESpecularLightingElement::contextElement): Return non-const value.
2980         * svg/SVGFETileElement.h:
2981         (WebCore::SVGFETileElement::contextElement): Return non-const value.
2982         * svg/SVGFETurbulenceElement.h:
2983         (WebCore::SVGFETurbulenceElement::contextElement): Return non-const value.
2984         * svg/SVGFilterElement.cpp: Wrap SVGLength objects in SVGLength() statements.
2985         (WebCore::SVGFilterElement::SVGFilterElement):
2986         * svg/SVGFilterElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2987         (WebCore::SVGFilterElement::contextElement): Return non-const value.
2988         * svg/SVGFilterPrimitiveStandardAttributes.cpp: Wrap SVGLength objects in SVGLength() statements.
2989         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
2990         * svg/SVGFilterPrimitiveStandardAttributes.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2991         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement): Return non-const value.
2992         * svg/SVGFitToViewBox.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
2993         * svg/SVGFitToViewBox.h: Change contextElement() to return a non-const value.
2994         * svg/SVGFontElement.h:
2995         (WebCore::SVGFontElement::contextElement): Return non-const value.
2996         * svg/SVGForeignObjectElement.cpp: Wrap SVGLength objects in SVGLength() statements.
2997         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
2998         * svg/SVGForeignObjectElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
2999         (WebCore::SVGForeignObjectElement::contextElement): Return non-const value.
3000         * svg/SVGGElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3001         (WebCore::SVGGElement::contextElement): Return non-const value.
3002         * svg/SVGGradientElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
3003         * svg/SVGGradientElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3004         * svg/SVGImageElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
3005         (WebCore::SVGImageElement::SVGImageElement):
3006         * svg/SVGImageElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3007         (WebCore::SVGImageElement::contextElement): Return non-const value.
3008         * svg/SVGLengthList.cpp:
3009         (WebCore::SVGLengthList::valueAsString): Add new function converting SVG values to strings.
3010         * svg/SVGLengthList.h:
3011         * svg/SVGLineElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3012         (WebCore::SVGLineElement::SVGLineElement):
3013         * svg/SVGLineElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3014         (WebCore::SVGLineElement::contextElement): Return non-const value.
3015         * svg/SVGLinearGradientElement.cpp:
3016         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement): Wrap SVGLength objects in SVGLength() statements.
3017         (WebCore::SVGLinearGradientElement::collectGradientProperties):
3018         * svg/SVGLinearGradientElement.h:
3019         (WebCore::SVGLinearGradientElement::contextElement): Return non-const value.
3020         * svg/SVGMPathElement.h:
3021         (WebCore::SVGMPathElement::contextElement): Return non-const value.
3022         * svg/SVGMarkerElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
3023         (WebCore::SVGMarkerElement::SVGMarkerElement):
3024         * svg/SVGMarkerElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3025         (WebCore::SVGMarkerElement::contextElement): Return non-const value.
3026         * svg/SVGMaskElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3027         (WebCore::SVGMaskElement::SVGMaskElement):
3028         * svg/SVGMaskElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3029         (WebCore::SVGMaskElement::contextElement): Return non-const value.
3030         * svg/SVGNumberList.cpp:
3031         (WebCore::SVGNumberList::valueAsString): Add new function converting SVG values to strings.
3032         * svg/SVGNumberList.h:
3033         * svg/SVGPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3034         (WebCore::SVGPathElement::contextElement): Return non-const value.
3035         * svg/SVGPatternElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
3036         (WebCore::SVGPatternElement::SVGPatternElement):
3037         (WebCore::SVGPatternElement::collectPatternProperties):
3038         * svg/SVGPatternElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3039         (WebCore::SVGPatternElement::contextElement): Return non-const value.
3040         * svg/SVGPolyElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3041         (WebCore::SVGPolyElement::contextElement): Return non-const value.
3042         * svg/SVGPreserveAspectRatio.cpp:
3043         (WebCore::SVGPreserveAspectRatio::valueAsString): Add new function converting SVG values to strings.
3044         * svg/SVGPreserveAspectRatio.h:
3045         * svg/SVGRadialGradientElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3046         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
3047         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
3048         (WebCore::SVGRadialGradientElement::collectGradientProperties):
3049         * svg/SVGRadialGradientElement.h:
3050         (WebCore::SVGRadialGradientElement::contextElement): Return non-const value.
3051         * svg/SVGRectElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3052         (WebCore::SVGRectElement::SVGRectElement):
3053         * svg/SVGRectElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3054         (WebCore::SVGRectElement::contextElement): Return non-const value.
3055         * svg/SVGSVGElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3056         (WebCore::SVGSVGElement::SVGSVGElement):
3057         (WebCore::SVGSVGElement::currentView): Pass non-const SVGSVGElement* object to SVGViewSpec.
3058         * svg/SVGSVGElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3059         (WebCore::SVGSVGElement::contextElement): Return non-const value.
3060         * svg/SVGScriptElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3061         (WebCore::SVGScriptElement::contextElement): Return non-const value.
3062         * svg/SVGStyledElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
3063         * svg/SVGStyledTransformableElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
3064         * svg/SVGStyledTransformableElement.h:
3065         * svg/SVGSwitchElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3066         (WebCore::SVGSwitchElement::contextElement): Return non-const value.
3067         * svg/SVGSymbolElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3068         (WebCore::SVGSymbolElement::contextElement): Return non-const value.
3069         * svg/SVGTRefElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3070         (WebCore::SVGTRefElement::contextElement): Return non-const value.
3071         * svg/SVGTSpanElement.h:
3072         (WebCore::SVGTSpanElement::contextElement): Return non-const value.
3073         * svg/SVGTextContentElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3074         (WebCore::SVGTextContentElement::SVGTextContentElement):
3075         * svg/SVGTextContentElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3076         * svg/SVGTextElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
3077         * svg/SVGTextElement.h:
3078         (WebCore::SVGTextElement::contextElement): Return non-const value.
3079         * svg/SVGTextPathElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3080         (WebCore::SVGTextPathElement::SVGTextPathElement):
3081         * svg/SVGTextPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3082         (WebCore::SVGTextPathElement::contextElement): Return non-const value.
3083         * svg/SVGTextPositioningElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
3084         * svg/SVGTextPositioningElement.h:
3085         * svg/SVGTransformList.cpp:
3086         (SVGTransformList::valueAsString): Add new function converting SVG values to strings.
3087         * svg/SVGTransformList.h:
3088         * svg/SVGURIReference.h: Change contextElement() to return a non-const value.
3089         * svg/SVGUseElement.cpp: Wrap SVGLength objects in SVGLength() statements.
3090         (WebCore::SVGUseElement::SVGUseElement):
3091         * svg/SVGUseElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3092         (WebCore::SVGUseElement::contextElement): Return non-const value.
3093         * svg/SVGViewElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
3094         (WebCore::SVGViewElement::contextElement): Return non-const value.
3095         * svg/SVGViewSpec.cpp:
3096         (WebCore::SVGViewSpec::SVGViewSpec): Pass non-const context element in constructor.
3097         (WebCore::SVGViewSpec::contextElement): Return non-const value.
3098         * svg/SVGViewSpec.h:
3099
3100 2008-07-01  Alex Mathews  <possessedpenguinbob@gmail.com>
3101
3102         Reviewed by Nikolas Zimmermann.
3103
3104         Class name changes for SVG Light Effect files. The class names that changed :
3105
3106         SVGLightSource -> LightSource
3107         SVGDistantLightSource -> DistantLightSource
3108         SVGPointLightSource -> PointLightSource
3109         SVGSpotLightSource -> SpotLightSource
3110
3111         Every other file that is changed is just propagating the class name changes to
3112         dependent files.
3113
3114         * svg/SVGFEDiffuseLightingElement.cpp:
3115         (WebCore::SVGFEDiffuseLightingElement::updateLights):
3116         * svg/SVGFEDistantLightElement.cpp:
3117         (WebCore::SVGFEDistantLightElement::lightSource):
3118         * svg/SVGFEDistantLightElement.h:
3119         * svg/SVGFELightElement.h:
3120         * svg/SVGFEPointLightElement.cpp:
3121         (WebCore::SVGFEPointLightElement::lightSource):
3122         * svg/SVGFEPointLightElement.h:
3123         * svg/SVGFESpecularLightingElement.cpp:
3124         (WebCore::SVGFESpecularLightingElement::updateLights):
3125         * svg/SVGFESpotLightElement.cpp:
3126         (WebCore::SVGFESpotLightElement::lightSource):
3127         * svg/SVGFESpotLightElement.h:
3128         * svg/graphics/filters/SVGDistantLightSource.h:
3129         (WebCore::DistantLightSource::DistantLightSource):
3130         (WebCore::DistantLightSource::azimuth):
3131         (WebCore::DistantLightSource::elevation):
3132         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
3133         (WebCore::SVGFEDiffuseLighting::lightSource):
3134         (WebCore::SVGFEDiffuseLighting::setLightSource):
3135         * svg/graphics/filters/SVGFEDiffuseLighting.h:
3136         * svg/graphics/filters/SVGFESpecularLighting.cpp:
3137         (WebCore::SVGFESpecularLighting::lightSource):
3138         (WebCore::SVGFESpecularLighting::setLightSource):
3139         * svg/graphics/filters/SVGFESpecularLighting.h:
3140         * svg/graphics/filters/SVGLightSource.cpp:
3141         (WebCore::PointLightSource::externalRepresentation):
3142         (WebCore::SpotLightSource::externalRepresentation):
3143         (WebCore::DistantLightSource::externalRepresentation):
3144         * svg/graphics/filters/SVGLightSource.h:
3145         (WebCore::):
3146         (WebCore::LightSource::LightSource):
3147         (WebCore::LightSource::~LightSource):
3148         (WebCore::LightSource::type):
3149         * svg/graphics/filters/SVGPointLightSource.h:
3150         (WebCore::PointLightSource::PointLightSource):
3151         (WebCore::PointLightSource::position):
3152         * svg/graphics/filters/SVGSpotLightSource.h:
3153         (WebCore::SpotLightSource::SpotLightSource):
3154         (WebCore::SpotLightSource::position):
3155         (WebCore::SpotLightSource::direction):
3156         (WebCore::SpotLightSource::specularExponent):
3157         (WebCore::SpotLightSource::limitingConeAngle):
3158         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
3159         (WebCore::SVGFEDiffuseLighting::getCIFilter):
3160         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
3161         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
3162         (WebCore::getLightVectors):
3163         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
3164         (WebCore::SVGFESpecularLighting::getCIFilter):
3165
3166 2008-07-01  Alp Toker  <alp@nuanti.com>
3167
3168         Rubber-stamped by Holger.
3169
3170         autotools cleanup: move some GTK+-specific sources from libwebcore to
3171         libwebcoregtk.
3172
3173         * GNUmakefile.am:
3174
3175 2008-07-01  Dan Bernstein  <mitz@apple.com>
3176
3177         Reviewed by Oliver Hunt.
3178
3179         - fix the non-SVG build
3180
3181         * css/CSSValueKeywords.in: Added 'all'.
3182         * css/SVGCSSValueKeywords.in: Removed 'all'.
3183
3184 2008-07-01  Simon Hausmann  <hausmann@webkit.org>
3185
3186         Build fix, include DateInstance.h.
3187
3188         * bridge/qt/qt_runtime.cpp:
3189
3190 2008-06-30  Adele Peterson  <adele@apple.com>
3191
3192         Reviewed by Oliver.
3193
3194         Fix for <rdar://problem/5882050> clicking in hidden close box area of empty searchfield causes mousedown to stop firing
3195
3196         Test: fast/forms/search-hidden-cancel-button.html
3197
3198         * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
3199           Don't start capturing mouse events if the cancel button isn't visible.  This was causing the button to start but never stop capturing mouse events.
3200
3201 2008-06-30  Sam Weinig  <sam@webkit.org>
3202
3203         Rubber-stamped by Darin Adler.
3204
3205         Split InternalFunction into its own header file.
3206
3207         * ForwardingHeaders/kjs/InternalFunction.h: Added.
3208         * bridge/runtime_method.h:
3209
3210 2008-06-30  Adele Peterson  <adele@apple.com>
3211
3212         Reviewed by Anders.
3213
3214         Fix for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas
3215
3216         Test: editing/selection/select-all-textarea.html
3217
3218         * dom/Node.cpp:
3219         (WebCore::Node::shadowAncestorNode): Break out code to find the root of the shadow tree into a new helper function.
3220         (WebCore::Node::shadowTreeRootNode): Added helper function.
3221         * dom/Node.h:
3222         * dom/Range.cpp: (WebCore::Range::shadowTreeRootNode): Added helper function.
3223         * dom/Range.h:
3224         * editing/Selection.cpp: (WebCore::Selection::shadowTreeRootNode): ditto.
3225         * editing/Selection.h:
3226         * editing/SelectionController.h: (WebCore::SelectionController::shadowTreeRootNode): ditto.
3227         * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll):
3228         If the selection is in a shadow tree, only select the contents of that shadow tree, not the whole document.
3229         * page/Frame.cpp:
3230         (WebCore::Frame::findString): Use the new shadowTreeRootNode helper functions.
3231         (WebCore::Frame::markAllMatchesForText): ditto.
3232
3233 2008-06-30  chris fleizach  <cfleizach@apple.com>
3234
3235         Reviewed by Beth Dakin
3236
3237         <rdar://problem/4180780> Add attribute to get all the radio buttons in a set
3238
3239         * page/AccessibilityObject.cpp:
3240         (WebCore::AccessibilityObject::linkedUIElements):
3241         * page/AccessibilityObject.h:
3242         * page/AccessibilityRenderObject.cpp:
3243         (WebCore::AccessibilityRenderObject::internalLinkElement):
3244         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
3245         (WebCore::AccessibilityRenderObject::linkedUIElements):
3246         * page/AccessibilityRenderObject.h:
3247         * page/mac/AccessibilityObjectWrapper.mm:
3248         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3249
3250 2008-06-30  Dan Bernstein  <mitz@apple.com>
3251
3252         Reviewed by Adele Peterson.
3253
3254         - WebCore part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
3255
3256         * WebCore.base.exp: Removed Editor::setBaseWritingDirection() and added
3257         Frame::setSelectionBaseWritingDirection().
3258         * page/ContextMenuController.cpp:
3259         (WebCore::ContextMenuController::contextMenuItemSelected): Changed to
3260         call Frame::setSelectionBaseWritingDirection().
3261         * page/Frame.cpp:
3262         (WebCore::Frame::setSelectionBaseWritingDirection): Added. If the
3263         focused node is a text field or text area, changes its 'dir' attribute.
3264         This is what IE does when the user changes the writing direction in a
3265         text control. Otherwise, calls down to Editor::setBaseWritingDirection().
3266         * page/Frame.h:
3267
3268 2008-06-30  David Kilzer  <ddkilzer@apple.com>
3269
3270         Improve HTMLObjectElement data encapsulation
3271
3272         Reviewed by Dave Hyatt.
3273
3274         HTMLObjectElement has some public member variables that should be
3275         private with accessor methods.
3276
3277         No test cases added since there is no change in behavior.
3278
3279         * html/HTMLObjectElement.cpp:
3280         (WebCore::HTMLObjectElement::HTMLObjectElement): Reorder
3281         initialization of member variables to match defined order in header.
3282         * html/HTMLObjectElement.h:
3283         (WebCore::HTMLObjectElement::classId): Added.
3284         (WebCore::HTMLObjectElement::url): Added.
3285         (WebCore::HTMLObjectElement::serviceType): Added.
3286         * rendering/RenderPartObject.cpp:
3287         (WebCore::RenderPartObject::updateWidget): Use new accessor methods
3288         in HTMLObjectElement now that its member variables are private.
3289
3290 2008-06-30  Dan Bernstein  <mitz@apple.com>
3291
3292         Reviewed by Anders Carlsson.
3293
3294         - remove unused member variable
3295
3296         * page/Page.h: Removed Page::m_focusedNode.
3297
3298 2008-06-30  Anders Carlsson  <andersca@apple.com>
3299
3300         Reviewed by Adam.
3301
3302         <rdar://problem/6014209>
3303         Crash when loading manifest from application cache fails
3304         
3305         There is no need to set any handles to 0 after calling cacheUpdateFailed(), since
3306         that is done inside the function. Furthermore, after calling cacheUpdateFailed() the cache
3307         group could be deleted causing us to access freed memory and then crashing.
3308         
3309         * loader/appcache/ApplicationCacheGroup.cpp:
3310         (WebCore::ApplicationCacheGroup::didReceiveResponse):
3311         (WebCore::ApplicationCacheGroup::didFail):
3312         (WebCore::ApplicationCacheGroup::didFailToLoadManifest):
3313
3314 2008-06-30  Adam Roben  <aroben@apple.com>
3315
3316         Fix <rdar://5954749> Assertion failure due to HashTable's use of
3317         operator&
3318
3319         Reviewed by Ada Chan.
3320
3321         * bindings/js/JSSVGPODTypeWrapper.h:
3322         * dom/Document.h:
3323         * dom/StyledElement.cpp:
3324         * platform/graphics/FontCache.cpp:
3325         * platform/graphics/IntSizeHash.h:
3326         (WTF::):
3327         * platform/text/StringHash.h:
3328         * platform/win/COMPtr.h:
3329         * svg/SVGAnimatedTemplate.h:
3330         Updated all custom HashTraits for HashTable changes.
3331
3332 2008-06-30  Simon Hausmann  <hausmann@webkit.org>
3333
3334         Fix the Qt build.
3335
3336         Added missing includes and changed getItem array calls to use get()
3337         instead.
3338
3339         * bridge/qt/qt_runtime.cpp:
3340         (KJS::Bindings::convertValueToQVariant):
3341
3342 2008-06-29  David Smith  <catfish.man@gmail.com>
3343
3344         Rubberstamped by Sam Weinig.
3345
3346         Change a redundant node->isElement() check to an ASSERT for a 1.3% speedup on getElementsByTagName.
3347
3348         * dom/TagNodeList.cpp:
3349         (WebCore::TagNodeList::nodeMatches):
3350
3351 2008-06-29  Dan Bernstein  <mitz@apple.com>
3352
3353         Reviewed by Darin Adler.
3354
3355         - fix SVG layout test regressions
3356
3357         * css/CSSFontSelector.cpp:
3358         (WebCore::CSSFontSelector::addFontFaceRule): Made this function work
3359         again with primitive values, because the @font-face rules SVG fonts
3360         create still use a single primitive value rather than a value list.
3361
3362 2008-06-29  Dan Bernstein  <mitz@apple.com>
3363
3364         Reviewed by Sam Weinig.
3365
3366         - fix <rdar://problem/5734440> Specifying a font-weight for @font-face not working
3367
3368         Tests: fast/css/font-face-descriptor-multiple-values-parsing.html
3369                fast/css/font-face-descriptor-multiple-values.html
3370
3371         * css/CSSFontSelector.cpp:
3372         (WebCore::CSSFontSelector::addFontFaceRule): Changed to work with value
3373         lists for the descriptor properties.
3374
3375         * css/CSSParser.cpp:
3376         (WebCore::CSSParser::CSSParser): Initialize m_hasFontFaceOnlyValues.
3377         (WebCore::CSSParser::parseValue): Added a call to
3378         deleteFontFaceOnlyValues() if necessary.
3379         (WebCore::CSSParser::parseDeclaration): Ditto.
3380         (WebCore::CSSParser::clearProperties): Added code to reset
3381         m_hasFontFaceOnlyValues to false.
3382         (WebCore::CSSParser::parseFontStyle): Added. If there is a single
3383         valid identifier other than 'all', creates a CSSPrimitiveValue and
3384         assigns it to the property. If 'all' is the only value, or if there are
3385         multiple valid identifiers that are not 'all', creates a CSSValueList
3386         and assigns it to the property, and sets m_hasFontFaceOnlyValues to
3387         true.
3388         (WebCore::CSSParser::parseFontVariant): Ditto.
3389         (WebCore::CSSParser::parseFontWeight): Ditto.
3390         (WebCore::CSSParser::createStyleRule): Added a call to
3391         deleteFontFaceOnlyValues().
3392         (WebCore::CSSParser::createFontFaceRule): Added code to change
3393         font descriptor properties that had only one value, and therefore were
3394         assigned a CSSPrimitiveValue, into CSSValueLists containing that value.
3395         (WebCore::CSSParser::deleteFontFaceOnlyValues): Added. Retroactively
3396         invalidates font descriptor properties that had values that are only
3397         allowed in @font-face. Those are identified by having CSSValueLists
3398         rather than CSSPrimitiveValues as their values.
3399         * css/CSSParser.h: Added m_hasFontFaceOnlyValues, a flag that says that
3400         font descriptor property values that are only valid in @font-face were
3401         encountered. This is used when the style declaration is created (and we
3402         finally know if it is @font-face or not) to delete invalid properties
3403         if needed.
3404
3405 2008-06-28  Darin Adler  <darin@apple.com>
3406
3407         Reviewed by Sam and Cameron.
3408
3409         - fix https://bugs.webkit.org/show_bug.cgi?id=19805
3410           Array.concat turns missing array elements into "undefined"
3411
3412         * bridge/jni/jni_utility.cpp:
3413         (KJS::Bindings::convertArrayInstanceToJavaArray):
3414         Use get instead of getItem, since we always want to consider values from the
3415         prototypes when looking at JavaScript arrays.
3416
3417 2008-06-28  Dan Bernstein  <mitz@apple.com>
3418
3419         Reviewed by Darin Adler.
3420
3421         - allow document markers to touch or overlap if they are not of the same type
3422
3423         Cannot be tested in DumpRenderTree
3424
3425         * dom/Document.cpp:
3426         (WebCore::Document::addMarker):
3427         * rendering/InlineTextBox.cpp:
3428         (WebCore::InlineTextBox::paintDocumentMarkers):
3429
3430 2008-06-28  Sam Weinig  <sam@webkit.org>
3431
3432         Rubber-stamped by Darin Adler.
3433
3434         Update includes after remaming string_object.h to StringObject.h and
3435         splitting out StringObjectThatMasqueradesAsUndefined, StringConstructor
3436         and StringPrototype.
3437
3438         * ForwardingHeaders/kjs/StringObject.h: Copied from WebCore/ForwardingHeaders/kjs/string_object.h.
3439         * ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Added.
3440         * ForwardingHeaders/kjs/StringPrototype.h: Added.
3441         * ForwardingHeaders/kjs/string_object.h: Removed.
3442         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3443
3444 2008-06-28  Sam Weinig  <sam@webkit.org>
3445
3446         Rubber-stamped by Oliver Hunt.
3447
3448         Update includes after remaming object_object.h to ObjectPrototype.h and
3449         splitting FunctionConstructor out of FunctionPrototype.h
3450
3451         * ForwardingHeaders/kjs/FunctionConstructor.h: Added.
3452         * ForwardingHeaders/kjs/ObjectPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/object_object.h.
3453         * ForwardingHeaders/kjs/object_object.h: Removed.
3454         * bindings/js/JSEventListener.cpp:
3455         * bindings/scripts/CodeGeneratorJS.pm:
3456         * bridge/qt/qt_instance.cpp:
3457
3458 2008-06-28  Dan Bernstein  <mitz@apple.com>
3459
3460         Reviewed by Darin Adler.
3461
3462         - fix <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
3463
3464         * html/HTMLImageLoader.cpp:
3465         (WebCore::HTMLImageLoader::updateFromElement): Changed to not load an
3466         image if the 'src' attribute is the empty string and the document's base
3467         URI is a file: URL.
3468
3469 2008-06-27  Sam Weinig  <sam@webkit.org>
3470
3471         Reviewed by Dan Bernstein.
3472
3473         <rdar://problem/6025499> Make Cross-site XHR match the final specification
3474
3475         Update the implemented subset of Access-Control for XMLHttpRequest to the 
3476         latest version. (Editor's Draft 25 May 2008)
3477
3478         - Now differentiates between simple and non-simple cross-site requests, the later
3479           requiring a preflight.
3480         - Now sends request headers cross-site, limited by a blacklist.
3481         - Now allows access to cross-site response headers, limited by a whitelist.
3482         - Now sends request entity body for non-get cross-site requests after preflight.
3483
3484         Tests: http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html
3485                http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html
3486                http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html
3487
3488         * xml/XMLHttpRequest.cpp:
3489         (WebCore::isOnAccessControllRequestHeaderBlackList):
3490         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
3491         (WebCore::isOnAccessControlResponseHeaderWhitelist):
3492         (WebCore::XMLHttpRequest::XMLHttpRequest):
3493         (WebCore::XMLHttpRequest::createRequest):
3494         (WebCore::XMLHttpRequest::makeSameOriginRequest):
3495         (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest):
3496         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
3497         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
3498         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
3499         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
3500         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
3501         (WebCore::XMLHttpRequest::abort):
3502         (WebCore::XMLHttpRequest::clearRequest):
3503         (WebCore::XMLHttpRequest::setRequestHeader):
3504         (WebCore::XMLHttpRequest::setRequestHeaderInternal):
3505         (WebCore::XMLHttpRequest::getAllResponseHeaders):
3506         (WebCore::XMLHttpRequest::getResponseHeader):
3507         (WebCore::XMLHttpRequest::didFinishLoading):
3508         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
3509         (WebCore::XMLHttpRequest::didReceiveResponse):
3510         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
3511         (WebCore::XMLHttpRequest::didReceiveData):
3512         * xml/XMLHttpRequest.h:
3513
3514 2008-06-27  Sam Weinig  <sam@webkit.org>
3515
3516         Rubber-stamped by Mark Rowe.
3517
3518         Clean up sorting in WebCore.xcodeproj.
3519
3520         * WebCore.xcodeproj/project.pbxproj:
3521
3522 2008-06-27  Jan Michael Alonzo  <jmalonzo@webkit.org>
3523
3524         Reviewed by Darin Adler.
3525
3526         Remove unnecessary options to make_names.pl command line
3527         http://bugs.webkit.org/show_bug.cgi?id=19777
3528
3529         * DerivedSources.make:
3530         * GNUmakefile.am:
3531
3532 2008-06-27  Adam Barth  <abarth@webkit.org>
3533
3534         Reviewed by Darin Adler.
3535
3536         https://bugs.webkit.org/show_bug.cgi?id=19784
3537
3538         Properly handle untermianted <!-- comments in <textarea>s.
3539
3540         Tests: fast/parser/open-comment-in-script-tricky.html
3541                fast/parser/open-comment-in-style.html
3542                fast/parser/open-comment-in-textarea.html
3543
3544         * html/HTMLTokenizer.cpp:
3545         (WebCore::HTMLTokenizer::finish):
3546
3547 2008-06-27  Adam Barth  <abarth@webkit.org>
3548
3549         Reviewed by Darin Alder.
3550
3551         Fix <https://bugs.webkit.org/show_bug.cgi?id=19784>:
3552           Text areas in Wikipedia edit pages are empty, following content is missing
3553
3554         Don't treat entities as comment starters in parseSpecial.
3555
3556         Tests: fast/parser/comment-in-iframe.html
3557                fast/parser/entity-comment-in-iframe.html
3558                fast/parser/entity-comment-in-script-tricky.html
3559                fast/parser/entity-comment-in-style.html
3560                fast/parser/entity-comment-in-textarea.html
3561                fast/parser/entity-comment-in-title.html
3562
3563         * html/HTMLTokenizer.cpp:
3564         (WebCore::HTMLTokenizer::parseSpecial):
3565
3566 2008-06-27  Antti Koivisto  <antti@apple.com>
3567
3568         Reviewed