Added TreeOutline.removeChildAtIndex and TreeElement.removeChildAtIndex
[WebKit-https.git] / WebCore / ChangeLog
1 2008-07-21  Timothy Hatcher  <timothy@apple.com>
2
3         Added TreeOutline.removeChildAtIndex and TreeElement.removeChildAtIndex
4         for efficiency of callers that know the index of the child. This
5         will be used in an upcoming change.
6
7         Reviewed by Adam Roben.
8
9         * page/inspector/treeoutline.js:
10         (TreeOutline._removeChildAtIndex): Renamed from _removeChild
11         and modified to take an index.
12         (TreeOutline._removeChild): Call _removeChildAtIndex with the
13         child index found using indexOf.
14         (TreeOutline.prototype.removeChildAtIndex): Added. Calls
15         TreeOutline._removeChildAtIndex.
16         (TreeElement.prototype.removeChildAtIndex): Ditto.
17
18 2008-07-21  Timothy Hatcher  <timothy@apple.com>
19
20         Fixes a regression where TreeOutline.findTreeElement would
21         return the parent TreeElement of the representedObject instead
22         of the TreeElement for the representedObject. Regressed with the
23         fix for bug 19164.
24
25         Reviewed by Adam Roben.
26
27         * page/inspector/treeoutline.js:
28         (TreeOutline.prototype.findTreeElement): When performing a slow search,
29         do a final search for representedObject instead of returning item, which
30         is the parent of representedObject.
31
32 2008-07-23  Adele Peterson  <adele@apple.com>
33
34         Reviewed by Adam.
35
36         WebCore part of fix for <rdar://problem/5698672>  Add drawing callback for a WebKit app to draw its own scrollbars
37
38         * WebCore.base.exp: Added symbols.
39         * page/Chrome.cpp:
40         (WebCore::ChromeClient::paintCustomScrollbar): Added. Calls up to WebKit, which will call a new delegate method.
41         (WebCore::ChromeClient::paintCustomScrollCorner): ditto.
42         * page/ChromeClient.h:
43         * page/Settings.cpp:
44         (WebCore::Settings::Settings): Added the ability to store whether or not the application has decided to draw its own scrollbars.
45         (WebCore::Settings::setShouldPaintCustomScrollbars):
46         * page/Settings.h: (WebCore::Settings::shouldPaintCustomScrollbars):
47         * platform/ScrollBar.h: Moved ScrollbarControlSize enum to ScrollTypes.h
48         * platform/ScrollTypes.h: (WebCore::): Moved some existing types, and added new ones to be used in WebCore in WebKit.
49         * platform/win/PlatformScrollBar.h: Moved ScrollbarPart enum to ScrollTypes.h
50         * platform/win/PlatformScrollBarSafari.cpp:
51         (WebCore::ScrollbarPartToScrollBarPiece): Added helper function.
52         (WebCore::ScrollBarPieceMaskToScrollbarControlPartMask): ditto.
53         (WebCore::ScrollbarControlStateFromThemeState): ditto.
54         (WebCore::PlatformScrollbar::paint): Consolidated painting so the logic for the individual pieces is all in one place.
55          Added new code to paint the custom scrollbars if necessary.
56         * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::paint): Added code to paint the custom scroll corner if necessary.
57
58 2008-07-23  Sam Weinig  <sam@webkit.org>
59
60         Reviewed by Anders Carlsson.
61
62         Cleanup and pack the member variables in Node.
63
64         * bindings/js/JSNodeCustom.cpp:
65         (WebCore::JSNode::mark):
66         * dom/Attr.cpp:
67         (WebCore::Attr::Attr):
68         * dom/Attr.h:
69         (WebCore::Attr::specified):
70         (WebCore::Attr::setSpecified):
71         * dom/ContainerNode.cpp:
72         (WebCore::ContainerNode::setFocus):
73         * dom/Document.cpp:
74         (WebCore::Document::adoptNode):
75         * dom/Element.cpp:
76         (WebCore::Element::~Element):
77         (WebCore::Element::rareData):
78         (WebCore::Element::createRareData):
79         * dom/Element.h:
80         (WebCore::Element::hasRareData):
81         (WebCore::Element::setHasRareData):
82         * dom/Node.h:
83         (WebCore::Node::setIsLink):
84         (WebCore::Node::inSubtreeMark):
85         (WebCore::Node::setInSubtreeMark):
86         (WebCore::Node::attrWasSpecifiedOrElementHasRareData):
87         (WebCore::Node::setAttrWasSpecifiedOrElementHasRareData):
88         * html/HTMLAnchorElement.cpp:
89         (WebCore::HTMLAnchorElement::supportsFocus):
90         (WebCore::HTMLAnchorElement::isFocusable):
91         (WebCore::HTMLAnchorElement::defaultEventHandler):
92         (WebCore::HTMLAnchorElement::parseMappedAttribute):
93         (WebCore::HTMLAnchorElement::isLiveLink):
94         * html/HTMLImageElement.cpp:
95         (WebCore::HTMLImageElement::parseMappedAttribute):
96         * html/HTMLInputElement.cpp:
97         (WebCore::HTMLInputElement::setInputType):
98         * html/HTMLTableElement.cpp:
99         (WebCore::HTMLTableElement::attach):
100         * svg/SVGAElement.cpp:
101         (WebCore::SVGAElement::svgAttributeChanged):
102         (WebCore::SVGAElement::defaultEventHandler):
103
104 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
105
106         Reviewed by Adele.
107
108         Follow-up fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
109
110         Associate MovieControllers with Movies to support all of the media types QuickTime is able to play in standalone media documents.
111
112         * platform/graphics/win/QTMovieWin.cpp:
113         (QTMovieWinPrivate::QTMovieWinPrivate):
114         (QTMovieWinPrivate::~QTMovieWinPrivate):
115         (QTMovieWinPrivate::task):
116         (QTMovieWinPrivate::createMovieController):
117         (QTMovieWinPrivate::createGWorld):
118         (QTMovieWinPrivate::setSize):
119         (QTMovieWinPrivate::deleteGWorld):
120         (QTMovieWin::play):
121         (QTMovieWin::pause):
122         (QTMovieWin::setRate):
123         (QTMovieWin::setCurrentTime):
124         (QTMovieWin::load):
125
126 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
127
128         Reviewed by Adele.
129
130         Added a debug mode for viewing frames per second for videos.  This is controlled by two 
131         independent compiler flags DRAW_FRAME_RATE in MediaPlayerPrivateQTKit.h and MediaPlayerPrivateQuickTimeWin.h.
132         Unless either flags is turned on there is no change to the code for video frame drawing.
133
134         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
135         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
136         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
137         (WebCore::MediaPlayerPrivate::play):
138         (WebCore::MediaPlayerPrivate::pause):
139         (WebCore::MediaPlayerPrivate::didEnd):
140         (WebCore::MediaPlayerPrivate::repaint):
141         (WebCore::MediaPlayerPrivate::paint):
142         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
143         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
144         (WebCore::MediaPlayerPrivate::play):
145         (WebCore::MediaPlayerPrivate::pause):
146         (WebCore::MediaPlayerPrivate::didEnd):
147         (WebCore::MediaPlayerPrivate::paint):
148         (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
149         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
150
151 2008-07-23  Adele Peterson  <adele@apple.com>
152
153         Reviewed by Sam.
154
155         Fix for <rdar://problem/6080634> use lower quality CG interpolation in MediaPlayerPrivateQTKit to improve performance
156
157         * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage):
158         Call setImageInterpolationQuality(InterpolationNone) instead of setUseLowQualityImageInterpolation(true).
159         * platform/graphics/GraphicsContext.h:
160         (WebCore::): Added InterpolationQuality enum.
161         (WebCore::GraphicsContext::setImageInterpolationQuality): Renamed from setUseLowQualityImageInterpolation.
162         The implementation was always setting the quality to "none", and now we want to distinguish between "none" and "low".
163         (WebCore::GraphicsContext::imageInterpolationQuality): Renamed from useLowQualityImageInterpolation.
164         * platform/graphics/cg/GraphicsContextCG.cpp:
165         (WebCore::GraphicsContext::setImageInterpolationQuality): Added.
166         (WebCore::GraphicsContext::imageInterpolationQuality): Added.
167         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::paint):
168         Calls setImageInterpolationQuality(InterpolationLow) which will improve the painting performance without degrading quality too much.
169
170 2008-07-23  Sam Weinig  <sam@webkit.org>
171
172         Reviewed by Anders Carlsson.
173
174         Remove extraneous allocations by using equalIgnoringCase rather than
175         String::lower.
176
177         * dom/StyledElement.cpp:
178         (WebCore::StyledElement::addCSSColor):
179         * html/HTMLCollection.cpp:
180         (WebCore::HTMLCollection::checkForNameMatch):
181         * html/HTMLFormCollection.cpp:
182         (WebCore::HTMLFormCollection::getNamedFormItem):
183         * html/HTMLLinkElement.cpp:
184         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
185         * html/HTMLObjectElement.cpp:
186         (WebCore::HTMLObjectElement::containsJavaApplet):
187         * html/PreloadScanner.cpp:
188         (WebCore::PreloadScanner::emitCSSRule):
189         * loader/FrameLoader.cpp:
190         (WebCore::FrameLoader::createJavaAppletWidget):
191         * page/DOMSelection.cpp:
192         (WebCore::DOMSelection::modify):
193         * rendering/RenderPartObject.cpp:
194         (WebCore::RenderPartObject::updateWidget):
195
196 2008-07-23  Maxime Britto  <britto@apple.com>
197
198         Reviewed by Adam Roben.
199
200         <rdar://6092952> "REGRESSION: Crash beneath EventHandler::stopAutoscrollTimer() when closing Gmail"
201         Add a check for the m_page member value before asking for page()->mainFrame()
202
203         * page/EventHandler.cpp:
204         (WebCore::EventHandler::stopAutoscrollTimer):
205
206 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
207
208        Reviewed by Adele.
209
210        Fix for <rdar://problem/5710065> QT movies should be inactive when opened
211
212        Implemented deferral of set-up of video rendering on Mac until the ready state is Loaded and 
213        until after movie tracks of unsupported types have been disabled, to make sure they never draw.
214
215         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
216         (WebCore::MediaPlayerPrivate::load):
217         (WebCore::MediaPlayerPrivate::updateStates):
218         (WebCore::MediaPlayerPrivate::setVisible):
219
220 2008-07-22  Maxime Britto  <britto@apple.com>
221
222         Reviewed by John Sullivan.
223
224         <rdar://problem/6083116>
225         When pan-scrolling, Back then Forward causes pan-scrolling to start again
226
227         * page/Frame.cpp:
228         (WebCore::Frame::clearTimers): Ask to stop the autoscroll timer when we clear the timers from the frame
229         * loader/FrameLoader.cpp:
230         (WebCore::FrameLoader::scrollToAnchor): When the link is an anchor we Frame::clearTimers() isn't called since we're only scrolling the page so we need to ask to stop the autoscroll timer here too.
231
232 2008-07-22  Geoffrey Garen  <ggaren@apple.com>
233
234         Reviewed by Oliver Hunt and Sam Weinig.
235
236         Next step toward putting doubles in registers: Prepare the Register class
237         and its clients for registers that don't contain JSValue*s.
238         
239 2008-07-22  Sam Weinig  <sam@webkit.org>
240
241         Reviewed by Mark Rowe.
242
243         <rdar://problem/5788451> toDataURL not implemented for Windows (need mapping of MIME type to UTI)
244         Add additional support for JPEG and GIF for toDataURL encoding canvases.
245
246         * platform/MIMETypeRegistry.cpp:
247         (WebCore::initializeSupportedImageMIMETypesForEncoding):
248         * platform/graphics/cg/ImageBufferCG.cpp:
249         (WebCore::utiFromMIMEType):
250
251 2008-07-22  Chris Fleizach  <cfleizach@apple.com>
252
253         Reviewed by Dave Hyatt.
254
255         <rdar://problem/6004877> internal anchors on this page are not showing up in the AXLinkedUIElements
256         Test: accessibility/internal-link-anchors2.html
257
258         * page/AccessibilityRenderObject.cpp:
259         (WebCore::AccessibilityRenderObject::internalLinkElement):
260
261 2008-07-22  Anders Carlsson  <andersca@apple.com>
262
263         Reviewed by Adam.
264
265         Allocate the empty StringImpl from the heap.
266         
267         * platform/text/StringImpl.cpp:
268         (WebCore::StringImpl::empty):
269
270 2008-07-21  Kevin McCullough  <kmccullough@apple.com>
271
272         Reviewed by Tim.
273
274         <rdar://problem/5951532> JSProfiler: Implement heavy (or bottom-up)
275         view (19228)
276         - Implement UI for Heavy (Bottom Up) view.
277
278         * English.lproj/localizedStrings.js:
279         * page/JavaScriptProfile.cpp: Expose the ability to get a heavy/tree
280         profile from a profile to the Web Inspector's JavaScript.
281         (WebCore::getHeavyProfileCallback):
282         (WebCore::getTreeProfileCallback):
283         (WebCore::ProfileClass):
284         * page/inspector/ProfileView.js: Implement the dropdown for changing
285         profile views.
286         * page/inspector/inspector.css:
287
288 2008-07-22  Alexey Proskuryakov  <ap@webkit.org>
289
290         Reviewed by Adam Roben.
291
292         <rdar://problem/5955602> WebKit should support charset name x-windows-949
293
294         Test: fast/encoding/char-decoding.html
295
296         * platform/text/TextCodecICU.cpp:
297         (WebCore::TextCodecICU::registerExtendedEncodingNames): Added support for this name for
298         Firefox compatibility.
299
300 2008-07-22  Gavin Barraclough  <barraclough@apple.com>
301
302         Reviewed by Alexey Proskuryakov.
303
304         New test to check that arrays fail gracefully (throw an out of memory exception)
305         when the vector grows to large.
306
307         * manual-tests/array-out-of-memory.html:         Added.
308
309 2008-07-21  Alexey Proskuryakov  <ap@webkit.org>
310
311         Reviewed by Dan Bernstein.
312
313         https://bugs.webkit.org/show_bug.cgi?id=20117
314         setBaseAndExtent fails to reverse the current selection
315
316         Test: editing/selection/setBaseAndExtent-revert-selection.html
317
318         * editing/Selection.h: (WebCore::operator==): Compare direction, too.
319
320 2008-07-21  Julien Chaffraix  <jchaffraix@webkit.org>
321
322         Reviewed by Sam Weinig.
323
324         Bug 19919: Add selectors' string parsing in CSSParser
325         https://bugs.webkit.org/show_bug.cgi?id=19919
326
327         No functional change.
328
329         * css/CSSGrammar.y: Added entry for parsing only a selector.
330         * css/CSSParser.cpp:
331         (WebCore::CSSParser::CSSParser):
332         (WebCore::CSSParser::parseSelector):
333         * css/CSSParser.h: Added m_floatingSelector to hold the
334         Selector parsed in parseSelector.
335
336         * css/tokenizer.flex: Added "@-webkit-selector" token.
337         * dom/Node.cpp:
338         (WebCore::Node::querySelector):
339         (WebCore::Node::querySelectorAll): Switched to parseSelector
340         method.
341
342 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
343
344         Reviewed by Adele.
345
346         Fix for <rdar://problem/6081160> REGRESSION: Hang loading many pages if QuickTime isn't installed
347
348         * platform/graphics/win/QTMovieWin.cpp:
349         (initializeSupportedTypes): Do a Quicktime version minimum version check.
350         (QTMovieWin::initializeQuickTime): Store the Quicktime version globally so in can be used in initializeSupportedTypes as well.
351
352 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
353
354         Reviewed by Adele.
355
356         Fix for <rdar://problem/5713336> <video> and <audio> elements that use a autoplay attribute fail to start playing when returning back to page
357
358         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::willSaveToCache): Reset the ready state to DATA_UNAVAILABLE when saving to the cache
359         so that everything starts back up normally when the page is retrieved from the cache.
360
361 2008-07-21  Sam Weinig  <sam@webkit.org>
362
363         Reviewed by Mark Rowe.
364
365         Remove unused interface declaration.
366
367         * platform/network/mac/ResourceHandleMac.mm:
368
369 2008-07-21  Mark Rowe  <mrowe@apple.com>
370
371         Reviewed by Sam Weinig.
372
373         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
374
375         * Configurations/Version.xcconfig:
376         * Info.plist:
377
378 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
379
380         Reviewed by Adele.
381
382         Fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
383
384         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::inMediaDocument): Added.
385         * platform/graphics/MediaPlayer.h:
386         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates):
387         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::updateStates):
388
389 2008-07-21  Anders Carlsson  <andersca@apple.com>
390
391         Reviewed by Jon.
392
393         Don't allow requests to be made when the document loader is stopping all loaders.
394
395         * plugins/PluginView.cpp:
396         (WebCore::PluginView::load):
397
398 2008-07-20  Maxime Britto  <britto@apple.com>
399
400         Reviewed by John Sullivan.
401
402         [PFR] <rdar://problem/6080639> New middle click scrolling speed seems much slower than in FF
403         Accelerate and enhance the smoothness of the pan scrollling.
404
405         * page/EventHandler.cpp: Changed the TimerInterval from 0.1 to 0.05. The scrolling is way more fluid like this.
406         * rendering/RenderLayer.cpp: 
407         (WebCore::RenderLayer::panScrollFromPoint): Differentiate the speed within a 200 pixel side square, around the original click location to the speed for farther distances. This way we allow easyier handle when we are close to the center and very fast scrolling when we go far from the original point.
408
409 2008-07-18  David Hyatt  <hyatt@apple.com>
410
411         Change the cached clip rects to not assume they should be infinite when the root layer has been
412         shifted as the result of a transformation.
413
414         Reviewed by Maciej
415
416         Added fast/transforms/overflow-with-transform.html
417
418         * rendering/RenderLayer.cpp:
419         (WebCore::RenderLayer::calculateClipRects):
420
421 2008-07-21  Rob Buis  <buis@kde.org>
422
423         Reviewed by Mitz.
424
425         https://bugs.webkit.org/show_bug.cgi?id=19966
426         CSS variables crash when using hex notation for colors
427
428         Support hex colors as values for the css variables.
429
430         Test: fast/css/variables/color-hex-test.html
431
432         * css/CSSParserValues.cpp:
433         (WebCore::CSSParserValue::createCSSValue):
434         * css/CSSPrimitiveValue.cpp:
435         (WebCore::CSSPrimitiveValue::parserValue):
436         * css/CSSVariablesRule.cpp:
437
438 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
439
440         Reviewed by Holger.
441
442         Fix drawing of windowless plugins on Windows with the Qt port by
443         avoiding the reset of the translation of the HDC to 0, 0.
444
445         * plugins/win/PluginViewWin.cpp:
446         (WebCore::PluginView::paint):
447
448 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
449
450         Reviewed by Holger.
451
452         Fix rendering of transparent windowless netscape plugins by passing
453         the right conversion parameter to QPixmap::fromWinHBITMAP when
454         converting from HBITMAP to QPixmap.
455
456         * platform/graphics/qt/GraphicsContextQt.cpp:
457         (WebCore::GraphicsContext::releaseWindowsContext):
458
459 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
460
461         Reviewed by Holger.
462
463         In the implementation of getValue for NPNVnetscapeWindow treat
464         windowHandleForPlatformWidget on the return value of
465         containingWindow() to receive the correct HWND for the Qt port.
466
467         * plugins/win/PluginViewWin.cpp:
468         (WebCore::PluginView::getValue):
469
470 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
471
472         Reviewed by Holger.
473
474         Fix windowHandleForPlatformWidget to return 0 as HWND if we don't have
475         a QWidget. This can happen on page/view destruction for example.
476
477         * plugins/win/PluginViewWin.cpp:
478         (windowHandleForPlatformWidget):
479
480 2008-07-20  Steve Falkenburg  <sfalken@apple.com>
481
482         Touch file to force rebuild for vsprops change.
483
484         * WebCorePrefix.h:
485
486 2008-07-20  Sam Weinig  <sam@webkit.org>
487
488         Remove extra space Oliver Hunt left in.
489
490         * page/Console.cpp:
491         (WebCore::Console::reportException):
492         (WebCore::Console::reportCurrentException):
493
494 2008-07-20  Oliver Hunt  <oliver@apple.com>
495
496         Reviewed by Dan Bernstein.
497
498         Bug 19757: Crash when an ondragstart handler hides the element
499         <https://bugs.webkit.org/show_bug.cgi?id=19757>
500
501         The solution to this is problem is just to null check the renderer
502         immediately before launching the system drag, and terminate the
503         drag if the renderer is gone.
504
505         * page/EventHandler.cpp:
506         (WebCore::EventHandler::handleDrag):
507
508 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
509
510         Reviewed by Oliver.
511
512         Fixes: https://bugs.webkit.org/show_bug.cgi?id=12171
513
514         Remove manual SVG property <-> XML attribute synchronization in SVGPolyElement.
515         Added svg/custom/poly-points-attribute-changes.svg (testcase from Rob)
516
517         * svg/SVGPointList.cpp:
518         (WebCore::SVGPointList::valueAsString):
519         * svg/SVGPointList.h:
520         (WebCore::SVGPointList::create):
521         * svg/SVGPolyElement.cpp:
522         (WebCore::SVGPolyElement::SVGPolyElement):
523         (WebCore::SVGPolyElement::svgAttributeChanged):
524         (WebCore::SVGPolyElement::updateAnimatedSVGAttribute):
525         * svg/SVGPolyElement.h:
526
527 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
528
529         Reviewed by Oliver.
530
531         Cleanup JSSVGPODTypeWrapper code.
532
533         Rename: JSSVGPODTypeWrapperCreatorReadOnly -> JSSVGStaticPODTypeWrapper
534                 JSSVGPODTypeWrapperReadWrite       -> JSSVGDynamicPODTypeWrapper
535                 JSSVGPODTypeWrapperCache           -> JSSVGDynamicPODTypeWrapperCacheCache
536
537         No functional changes.
538
539         * bindings/js/JSSVGMatrixCustom.cpp:
540         (WebCore::JSSVGMatrix::multiply):
541         (WebCore::JSSVGMatrix::inverse):
542         (WebCore::JSSVGMatrix::translate):
543         (WebCore::JSSVGMatrix::scale):
544         (WebCore::JSSVGMatrix::scaleNonUniform):
545         (WebCore::JSSVGMatrix::rotate):
546         (WebCore::JSSVGMatrix::rotateFromVector):
547         (WebCore::JSSVGMatrix::flipX):
548         (WebCore::JSSVGMatrix::flipY):
549         (WebCore::JSSVGMatrix::skewX):
550         (WebCore::JSSVGMatrix::skewY):
551         * bindings/js/JSSVGPODTypeWrapper.h:
552         (WebCore::JSSVGDynamicPODTypeWrapper::create):
553         (WebCore::JSSVGDynamicPODTypeWrapper::operator PODType):
554         (WebCore::JSSVGDynamicPODTypeWrapper::JSSVGDynamicPODTypeWrapper):
555         (WebCore::JSSVGStaticPODTypeWrapper::create):
556         (WebCore::JSSVGStaticPODTypeWrapper::operator PODType):
557         (WebCore::JSSVGStaticPODTypeWrapper::JSSVGStaticPODTypeWrapper):
558         (WebCore::JSSVGPODTypeWrapperCreatorForList::create):
559         (WebCore::JSSVGPODTypeWrapperCreatorForList::operator PODType):
560         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
561         (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo):
562         (WebCore::PODTypeWrapperCacheInfo::operator==):
563         (WebCore::PODTypeWrapperCacheInfoHash::hash):
564         (WebCore::PODTypeWrapperCacheInfoHash::equal):
565         (WebCore::PODTypeWrapperCacheInfoTraits::emptyValue):
566         (WebCore::PODTypeWrapperCacheInfoTraits::constructDeletedValue):
567         (WebCore::PODTypeWrapperCacheInfoTraits::isDeletedValue):
568         (WebCore::JSSVGDynamicPODTypeWrapperCache::dynamicWrapperHashMap):
569         (WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
570         (WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
571         * bindings/js/JSSVGPointListCustom.cpp:
572         (WebCore::finishGetter):
573         (WebCore::finishSetter):
574         (WebCore::finishSetterReadOnlyResult):
575         (WebCore::JSSVGPointList::initialize):
576         (WebCore::JSSVGPointList::insertItemBefore):
577         (WebCore::JSSVGPointList::replaceItem):
578         (WebCore::JSSVGPointList::appendItem):
579         * bindings/js/JSSVGTransformListCustom.cpp:
580         (WebCore::finishGetter):
581         (WebCore::finishSetter):
582         (WebCore::finishSetterReadOnlyResult):
583         (WebCore::JSSVGTransformList::initialize):
584         (WebCore::JSSVGTransformList::getItem):
585         (WebCore::JSSVGTransformList::insertItemBefore):
586         (WebCore::JSSVGTransformList::replaceItem):
587         (WebCore::JSSVGTransformList::removeItem):
588         (WebCore::JSSVGTransformList::appendItem):
589         * bindings/scripts/CodeGeneratorJS.pm:
590
591 2008-07-19  Oliver Hunt  <oliver@apple.com>
592
593         Reviewed by Mark Rowe.
594
595         Bug 15979: Console logs in a database callback lose line number information
596         <https://bugs.webkit.org/show_bug.cgi?id=15979>
597
598         The problem was that there were multiple versions of the logic to
599         log an exception to the console, many of which were incorrect.  We
600         resolve this by making one single shared reportException method,
601         which handles the exceptions correctly.
602
603         This improves fidelity of callback errors, and ensures that
604         exceptions thrown in timer callbacks correctly report line numbers,
605         etc.
606
607         Test: fast/js/exceptions-thrown-in-callbacks.html
608
609         * bindings/js/JSCustomSQLStatementCallback.cpp:
610         (WebCore::JSCustomSQLStatementCallback::handleEvent):
611         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
612         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
613         * bindings/js/JSCustomSQLTransactionCallback.cpp:
614         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
615         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
616         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
617         * bindings/js/JSCustomVoidCallback.cpp:
618         (WebCore::JSCustomVoidCallback::handleEvent):
619         * bindings/js/JSCustomXPathNSResolver.cpp:
620         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
621         * bindings/js/JSEventListener.cpp:
622         (WebCore::JSAbstractEventListener::handleEvent):
623         * bindings/js/ScheduledAction.cpp:
624         (WebCore::ScheduledAction::execute):
625         * bindings/js/ScriptController.cpp:
626         (WebCore::ScriptController::evaluate):
627         * bindings/objc/WebScriptObject.mm:
628         (WebCore::addExceptionToConsole):
629         * page/Console.cpp:
630         (WebCore::Console::reportException):
631         * page/Console.h:
632
633 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
634
635         Rubber stamped by Oliver.
636
637         Another attempt to fix the win build.
638
639         * svg/SVGAnimatedProperty.h:
640
641 2008-07-20  Alexey Proskuryakov  <ap@webkit.org>
642
643         Reviewed by David Kilzer.
644
645         Fix high CPU usage on testmyiphone.com.
646
647         - Made the logic for determining when to stop looking for meta charset more strainghtforward.
648         Previously, this happened if a tag that's disallowed in HEAD was seen past the first 512
649         bytes. Now, the algorithm bails out at the boundary if we are lo longer in HEAD (i.e, an
650         offending tag was seen at any point before).
651
652         - The above change made one of our regression tests fail, because it had its <meta>
653         declaration past the 512 byte boundary. Fixed it by raising the boundary to 1024 bytes.
654
655         - Made the algorithm bail out quickly if a comment that's not in HEAD crosses the boundary.
656
657         - Moved a check for XML content type out of the loop.
658
659         * loader/TextResourceDecoder.cpp:
660         (WebCore::TextResourceDecoder::checkForHeadCharset): 
661
662 2008-07-20  Oliver Hunt  <oliver@apple.com>
663
664         Reviewed by NOBODY (build fix).
665
666         Attempt to fix windows build
667
668         * svg/SVGAnimatedProperty.h:
669
670 2008-07-19  Nikolas Zimmermann  <zimmermann@kde.org>
671
672         Reviewed by Oliver & parts by Eric.
673
674         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20051
675
676         Rewrite animated property concept without heavy macro usage, replace by a templatified solution.
677         Fewer virtual function calls, no more usage of the tear-off's within internal code (synchronization needed it before.)
678
679         * dom/Element.cpp:
680         (WebCore::Element::attributes):
681         (WebCore::Element::getAttribute):
682         (WebCore::Element::hasAttributes):
683         * dom/Element.h:
684         (WebCore::Element::updateAnimatedSVGAttribute): Take const String&, not StringImpl*.
685         * svg/SVGAElement.cpp:
686         (WebCore::SVGAElement::SVGAElement):
687         * svg/SVGAElement.h:
688         * svg/SVGAltGlyphElement.h:
689         * svg/SVGAnimatedProperty.h: Added.
690         * svg/SVGAnimatedTemplate.h:
691         (WebCore::lookupOrCreateWrapper):
692         * svg/SVGAnimationElement.h:
693         * svg/SVGCircleElement.cpp:
694         (WebCore::SVGCircleElement::SVGCircleElement):
695         * svg/SVGCircleElement.h:
696         * svg/SVGClipPathElement.cpp:
697         (WebCore::SVGClipPathElement::SVGClipPathElement):
698         * svg/SVGClipPathElement.h:
699         * svg/SVGComponentTransferFunctionElement.cpp:
700         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
701         * svg/SVGComponentTransferFunctionElement.h:
702         * svg/SVGCursorElement.cpp:
703         (WebCore::SVGCursorElement::SVGCursorElement):
704         * svg/SVGCursorElement.h:
705         * svg/SVGDefsElement.h:
706         (WebCore::SVGDefsElement::contextElement):
707         * svg/SVGElement.cpp:
708         (WebCore::SVGElement::updateAnimatedSVGAttribute):
709         * svg/SVGElement.h:
710         (WebCore::SVGElement::supplementalTransform):
711         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
712         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
713         (WebCore::SVGElement::addSVGPropertySynchronizer):
714         * svg/SVGEllipseElement.cpp:
715         (WebCore::SVGEllipseElement::SVGEllipseElement):
716         * svg/SVGEllipseElement.h:
717         * svg/SVGExternalResourcesRequired.cpp:
718         (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
719         * svg/SVGExternalResourcesRequired.h:
720         * svg/SVGFEBlendElement.cpp:
721         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
722         * svg/SVGFEBlendElement.h:
723         * svg/SVGFEColorMatrixElement.cpp:
724         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
725         * svg/SVGFEColorMatrixElement.h:
726         * svg/SVGFEComponentTransferElement.cpp:
727         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
728         * svg/SVGFEComponentTransferElement.h:
729         * svg/SVGFECompositeElement.cpp:
730         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
731         * svg/SVGFECompositeElement.h:
732         * svg/SVGFEDiffuseLightingElement.cpp:
733         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
734         * svg/SVGFEDiffuseLightingElement.h:
735         * svg/SVGFEDisplacementMapElement.cpp:
736         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
737         * svg/SVGFEDisplacementMapElement.h:
738         * svg/SVGFEFloodElement.h:
739         * svg/SVGFEGaussianBlurElement.cpp:
740         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
741         * svg/SVGFEGaussianBlurElement.h:
742         * svg/SVGFEImageElement.cpp:
743         (WebCore::SVGFEImageElement::SVGFEImageElement):
744         * svg/SVGFEImageElement.h:
745         * svg/SVGFELightElement.cpp:
746         (WebCore::SVGFELightElement::SVGFELightElement):
747         * svg/SVGFELightElement.h:
748         (WebCore::SVGFELightElement::contextElement):
749         * svg/SVGFEMergeElement.h:
750         * svg/SVGFEMergeNodeElement.cpp:
751         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
752         * svg/SVGFEMergeNodeElement.h:
753         * svg/SVGFEOffsetElement.cpp:
754         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
755         * svg/SVGFEOffsetElement.h:
756         * svg/SVGFESpecularLightingElement.cpp:
757         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
758         * svg/SVGFESpecularLightingElement.h:
759         * svg/SVGFETileElement.cpp:
760         (WebCore::SVGFETileElement::SVGFETileElement):
761         * svg/SVGFETileElement.h:
762         * svg/SVGFETurbulenceElement.cpp:
763         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
764         * svg/SVGFETurbulenceElement.h:
765         * svg/SVGFilterElement.cpp:
766         (WebCore::SVGFilterElement::SVGFilterElement):
767         * svg/SVGFilterElement.h:
768         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
769         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
770         * svg/SVGFilterPrimitiveStandardAttributes.h:
771         * svg/SVGFitToViewBox.cpp:
772         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
773         * svg/SVGFitToViewBox.h:
774         * svg/SVGFontElement.h:
775         (WebCore::SVGFontElement::rendererIsNeeded):
776         (WebCore::SVGFontElement::contextElement):
777         * svg/SVGForeignObjectElement.cpp:
778         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
779         * svg/SVGForeignObjectElement.h:
780         * svg/SVGGElement.h:
781         * svg/SVGGradientElement.cpp:
782         (WebCore::SVGGradientElement::SVGGradientElement):
783         * svg/SVGGradientElement.h:
784         (WebCore::SVGGradientElement::contextElement):
785         * svg/SVGImageElement.cpp:
786         (WebCore::SVGImageElement::SVGImageElement):
787         * svg/SVGImageElement.h:
788         * svg/SVGLineElement.cpp:
789         (WebCore::SVGLineElement::SVGLineElement):
790         * svg/SVGLineElement.h:
791         * svg/SVGLinearGradientElement.cpp:
792         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
793         * svg/SVGLinearGradientElement.h:
794         * svg/SVGMarkerElement.cpp:
795         (WebCore::SVGMarkerElement::SVGMarkerElement):
796         (WebCore::SVGMarkerElement::canvasResource):
797         * svg/SVGMarkerElement.h:
798         * svg/SVGMaskElement.cpp:
799         (WebCore::SVGMaskElement::SVGMaskElement):
800         * svg/SVGMaskElement.h:
801         * svg/SVGPathElement.cpp:
802         (WebCore::SVGPathElement::SVGPathElement):
803         (WebCore::SVGPathElement::parseMappedAttribute):
804         * svg/SVGPathElement.h:
805         * svg/SVGPatternElement.cpp:
806         (WebCore::SVGPatternElement::SVGPatternElement):
807         * svg/SVGPatternElement.h:
808         (WebCore::SVGPatternElement::contextElement):
809         * svg/SVGPolyElement.h:
810         * svg/SVGPreserveAspectRatio.cpp:
811         * svg/SVGRadialGradientElement.cpp:
812         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
813         * svg/SVGRadialGradientElement.h:
814         * svg/SVGRectElement.cpp:
815         (WebCore::SVGRectElement::SVGRectElement):
816         * svg/SVGRectElement.h:
817         * svg/SVGSVGElement.cpp:
818         (WebCore::SVGSVGElement::SVGSVGElement):
819         * svg/SVGSVGElement.h:
820         * svg/SVGScriptElement.cpp:
821         * svg/SVGScriptElement.h:
822         * svg/SVGStopElement.cpp:
823         (WebCore::SVGStopElement::SVGStopElement):
824         * svg/SVGStopElement.h:
825         * svg/SVGStyledElement.cpp:
826         (WebCore::SVGStyledElement::SVGStyledElement):
827         * svg/SVGStyledElement.h:
828         * svg/SVGStyledTransformableElement.cpp:
829         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
830         * svg/SVGStyledTransformableElement.h:
831         * svg/SVGSwitchElement.h:
832         * svg/SVGSymbolElement.h:
833         (WebCore::SVGSymbolElement::contextElement):
834         * svg/SVGTRefElement.h:
835         * svg/SVGTSpanElement.h:
836         * svg/SVGTextContentElement.cpp:
837         (WebCore::SVGTextContentElement::SVGTextContentElement):
838         * svg/SVGTextContentElement.h:
839         (WebCore::SVGTextContentElement::contextElement):
840         * svg/SVGTextElement.cpp:
841         (WebCore::SVGTextElement::SVGTextElement):
842         * svg/SVGTextElement.h:
843         * svg/SVGTextPathElement.cpp:
844         (WebCore::SVGTextPathElement::SVGTextPathElement):
845         * svg/SVGTextPathElement.h:
846         * svg/SVGTextPositioningElement.cpp:
847         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
848         * svg/SVGTextPositioningElement.h:
849         * svg/SVGTransformable.h:
850         * svg/SVGURIReference.cpp:
851         (WebCore::SVGURIReference::SVGURIReference):
852         * svg/SVGURIReference.h:
853         * svg/SVGUseElement.cpp:
854         (WebCore::SVGUseElement::SVGUseElement):
855         * svg/SVGUseElement.h:
856         * svg/SVGViewElement.h:
857         * svg/SVGViewSpec.h:
858
859 2008-07-18  Maxime Britto  <britto@apple.com>
860
861         Reviewed by Adele.
862         
863         Fixed <rdar://problem/6049803>
864         Prevent the autoscroll to trigger in WebClips when starting or hovering on an editable field.
865
866         Test: fast/events/autoscroll-with-non-scrollable-parent.html
867
868         * ChangeLog:
869         * page/EventHandler.cpp: Edited
870         (WebCore::EventHandler::handleMousePressEvent): changed the name of the funtion called to canBeProgramaticallyScrolled()
871         (WebCore::EventHandler::handleMouseDraggedEvent): prevent the autoscroll to keep looking for a renderer when it's already triggered
872         * rendering/RenderLayer.cpp:
873         (WebCore::RenderLayer::scrollRectToVisible): verifies that the top layer can be programmatically scrolled before asking him to make the rect visible
874         * rendering/RenderListBox.h:
875         (WebCore::RenderListBox::canBeProgramaticallyScrolled):
876         * rendering/RenderObject.cpp:
877         (WebCore::RenderObject::canBeProgramaticallyScrolled): Edited : For the 3rd case we want document's renderer to have scrollbar as it's the top layer   
878         (WebCore::RenderObject::hasScrollableView): Verifies that the Object has a view with scrollBars
879         * rendering/RenderObject.h: Renamed shouldAutosroll() for canBeProgramaticallyScrolled()
880         * rendering/RenderTextControl.h:
881         (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
882
883 2008-07-18  Sam Weinig  <sam@webkit.org>
884
885         Reviewed by Anders Carlsson.
886
887         <rdar://problem/6087283> Add support for uploading files via XMLHttpRequest
888
889         - Overload XMLHttpRequests send() method to accept File tokens.
890
891         * bindings/js/JSXMLHttpRequestCustom.cpp:
892         (WebCore::JSXMLHttpRequest::send): 
893         * xml/XMLHttpRequest.cpp:
894         (WebCore::XMLHttpRequest::send):
895         * xml/XMLHttpRequest.h:
896
897 2008-07-18  Geoffrey Garen  <ggaren@apple.com>
898
899         Reviewed by Cameron Zwarich.
900         
901         Three renames:
902         
903         "CallTypeNative" => "CallTypeHost"
904         "code" => "byteCode"
905         "generatedCode" => "generatedByteCode"
906
907 2008-07-18  Adele Peterson  <adele@apple.com>
908
909         Reviewed by Dan Bernstein.
910
911         I recently made a change to avoid fading media controls in and out if a video element actually only contains audio,
912         which broke the code that did the same thing for audio elements that contain video (but don't actually display that video).
913         This change will now check both the media element and the player to decide whether or not to make the controls persistent.
914
915         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControlVisibility):
916
917 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
918
919         Reviewed by mitz
920
921         Remove braces around single-line conditional.
922         
923         * css/CSSComputedStyleDeclaration.cpp:
924         (WebCore::computedTransform):
925
926 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
927
928         Reviewed by Dave Hyatt
929
930         getComputedStyle() for -webkit-transform should return 
931         'none' for elements with no renderer, or those with no
932         transform.
933
934         https://bugs.webkit.org/show_bug.cgi?id=20008
935
936         Testcase: LayoutTests/fast/css/computed-style-without-renderer
937                   LayoutTests/fast/css/computed-style-expected.txt
938
939         * css/CSSComputedStyleDeclaration.cpp:
940         (WebCore::computedTransform):
941
942 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
943
944         Reviewed by Dave Hyatt
945
946         Fix assertion about creating Length values with percentage types
947         when blending transforms.
948         https://bugs.webkit.org/show_bug.cgi?id=20086
949
950         * rendering/style/RenderStyle.cpp:
951         (WebCore::TranslateTransformOperation::blend):
952
953 2008-07-17  Jacob Refstrup  <jacob.refstrup@hp.com>
954
955         Reviewed by rwlbuis@gmail.com
956
957         https://bugs.webkit.org/show_bug.cgi?id=19965
958
959         - Added "@"{ident} rule (below other @-rules) to use flex for longest match
960           (if an earlier rule - e.g. @media - also matches then flex chooses that one
961            however, if a longer match - e.g. @mediaall matches flex will choose that)
962         - Updated grammar to defined ATKEYWORD token and to use that instead of '@'
963           in the error recovery grammar. 
964
965         Test: css2.1/atrule_longest_match.html
966
967         * ChangeLog:
968         * css/CSSGrammar.y:
969         * css/tokenizer.flex:
970
971 2008-07-17  David Hyatt  <hyatt@apple.com>
972
973         Make sure the check to see if a frame/iframe is being rendered inside a transparency layer is
974         recursive (and checks for transparency layers all the way up the ancestor document chain back to
975         the top-level frame).
976
977         Reviewed by Dan
978
979         * rendering/RenderView.cpp:
980         (WebCore::RenderView::paintBoxDecorations):
981
982 2008-07-16  Jon Honeycutt  <jhoneycutt@apple.com>
983
984         REGRESSION: Can't create windowless plug-in with Flash 9
985         https://bugs.webkit.org/show_bug.cgi?id=20070
986
987         Reviewed by Mark Rowe.
988
989         * plugins/win/PluginPackageWin.cpp:
990         (WebCore::PluginPackage::determineQuirks): Reverse argument order;
991         PlatformModuleVersion constructor takes leastSig, mostSig.
992
993 2008-07-16  Eric Seidel  <eric@webkit.org>
994
995         Reviewed by mitz.
996
997         Attempt to make initializeATSUStyle human-readable by
998         splitting it out into better-named static inline functions.
999
1000         No functional changes, thus no tests.
1001
1002         * platform/graphics/mac/FontMac.mm:
1003         (WebCore::fontHasMirroringInfo):
1004         (WebCore::disableLigatures):
1005         (WebCore::initializeATSUStyle):
1006
1007 2008-07-16  Eric Seidel  <eric@webkit.org>
1008
1009         No review, build fix only.
1010
1011         Attempt to fix Mac build
1012
1013         * WebCore.xcodeproj/project.pbxproj: Make TextRun.h a private header.
1014
1015 2008-07-16  Eric Seidel  <eric@webkit.org>
1016
1017         Reviewed by mitz.
1018
1019         Make ATSULayoutParameters a real C++ class
1020         (Give it a destructor to clean up after itself)
1021         (Also use OwnArrayPtr instead of manual member cleanup)
1022
1023         * platform/graphics/mac/FontMac.mm:
1024         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
1025         (WebCore::ATSULayoutParameters::~ATSULayoutParameters):
1026         (WebCore::overrideLayoutOperation):
1027         (WebCore::ATSULayoutParameters::initialize):
1028         (WebCore::Font::selectionRectForComplexText):
1029         (WebCore::Font::drawComplexText):
1030         (WebCore::Font::floatWidthForComplexText):
1031         (WebCore::Font::offsetForPositionForComplexText):
1032
1033 2008-07-16  Eric Seidel  <eric@webkit.org>
1034
1035         Reviewed by mitz.
1036
1037         Make ownership of copied UChar buffer clearer
1038         (and more leak-proof) by using a OwnArrayPtr.
1039
1040         No functional changes, thus no tests.
1041
1042         * platform/graphics/mac/FontMac.mm:
1043         (WebCore::copyRunForDirectionalOverrideIfNecessary):
1044         (WebCore::Font::selectionRectForComplexText):
1045         (WebCore::Font::drawComplexText):
1046         (WebCore::Font::offsetForPositionForComplexText):
1047
1048 2008-07-16  Eric Seidel  <eric@webkit.org>
1049
1050         Reviewed by Sam.
1051
1052         Split out TextRun into its own header file.
1053         Re-order members to place all bools together
1054         (to allow compilers to better pack the struct)
1055
1056         No functional changes, thus no tests.
1057
1058         * WebCore.vcproj/WebCore.vcproj:
1059         * WebCore.xcodeproj/project.pbxproj:
1060         * platform/graphics/Font.h: Moved TextRun into its own file.
1061         * platform/graphics/TextRun.h: Split out from Font.h
1062
1063 2008-07-16  Simon Fraser  <simon.fraser@apple.com>
1064
1065         Reviewed by Dave Hyatt
1066
1067         AnimationController needs to adjust z-index in the blended
1068         style in case opacity or transform were changed by blending.
1069
1070         https://bugs.webkit.org/show_bug.cgi?id=20047
1071         
1072         Test: transitions/opacity-transition-zindex.html
1073
1074         * page/AnimationController.cpp:
1075         (WebCore::AnimationController::updateImplicitAnimations):
1076
1077 2008-07-16  Nikolas Zimmermann  <zimmermann@kde.org>
1078
1079         Reviewed by Sam.
1080
1081         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20052 
1082         Prepare SVGAnimatedProperty introduction.
1083
1084         Export the tag & attribute names as string literals for SVGNames/XLinkNames and one property in HTMLNames. SVGAnimatedProperty
1085         contains two string literal template parameters, and we're using these exported string literals from {SVG,HTML,XLink}Names as input paramters.
1086         See https://bugs.webkit.org/show_bug.cgi?id=20051 for details.
1087
1088         * dom/make_names.pl: Handle new params "exportString" / "exportStrings".
1089         * html/HTMLAttributeNames.in: Expose just the single "class" attribute, as string.
1090         * svg/svgattrs.in: Export all SVG attributes as strings.
1091         * svg/svgtags.in: Export all SVG tags as strings.
1092         * svg/xlinkattrs.in: Expose all XLink attributes as strings.
1093
1094 2008-07-16  Nikolas Zimmermann  <zimmermann@kde.org>
1095
1096         Reviewed by Eric.
1097
1098         Fixes: https://bugs.webkit.org/show_bug.cgi?id=10745 (SVGLength object needs some weight loss)
1099         Don't store a context pointer in SVGLength, saving memory. Let the caller of the value() & convertToSpecifiedUnits() pass it.
1100
1101         Remove some uneeded contextElement() functions, by moving into approriate shared base classes.
1102
1103         * GNUmakefile.am:
1104         * WebCore.pro:
1105         * WebCore.vcproj/WebCore.vcproj:
1106         * WebCore.xcodeproj/project.pbxproj:
1107         * bindings/js/JSSVGLengthCustom.cpp: Added.
1108         (WebCore::JSSVGLength::value):
1109         (WebCore::JSSVGLength::convertToSpecifiedUnits):
1110         * bindings/scripts/CodeGeneratorObjC.pm:
1111         * css/CSSCursorImageValue.cpp:
1112         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
1113         * rendering/RenderForeignObject.cpp:
1114         (WebCore::RenderForeignObject::translationForAttributes):
1115         * rendering/RenderSVGImage.cpp:
1116         (WebCore::RenderSVGImage::layout):
1117         * rendering/RenderSVGRoot.cpp:
1118         (WebCore::RenderSVGRoot::calcViewport):
1119         * rendering/RenderSVGText.cpp:
1120         (WebCore::RenderSVGText::layout):
1121         * rendering/RenderSVGViewportContainer.cpp:
1122         (WebCore::RenderSVGViewportContainer::calcViewport):
1123         * rendering/SVGCharacterLayoutInfo.cpp:
1124         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
1125         (WebCore::SVGCharacterLayoutInfo::addStackContent):
1126         * rendering/SVGCharacterLayoutInfo.h:
1127         * rendering/SVGRootInlineBox.cpp:
1128         (WebCore::SVGRootInlineBox::buildTextChunks):
1129         * svg/SVGAnimateElement.h:
1130         * svg/SVGAnimateMotionElement.h:
1131         * svg/SVGAnimateTransformElement.h:
1132         * svg/SVGAnimationElement.h:
1133         (WebCore::SVGAnimationElement::contextElement):
1134         * svg/SVGCircleElement.cpp:
1135         (WebCore::SVGCircleElement::SVGCircleElement):
1136         (WebCore::SVGCircleElement::parseMappedAttribute):
1137         (WebCore::SVGCircleElement::toPathData):
1138         * svg/SVGCursorElement.cpp:
1139         (WebCore::SVGCursorElement::SVGCursorElement):
1140         (WebCore::SVGCursorElement::parseMappedAttribute):
1141         * svg/SVGEllipseElement.cpp:
1142         (WebCore::SVGEllipseElement::SVGEllipseElement):
1143         (WebCore::SVGEllipseElement::parseMappedAttribute):
1144         (WebCore::SVGEllipseElement::toPathData):
1145         * svg/SVGFilterElement.cpp:
1146         (WebCore::SVGFilterElement::SVGFilterElement):
1147         (WebCore::SVGFilterElement::parseMappedAttribute):
1148         (WebCore::SVGFilterElement::canvasResource):
1149         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1150         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
1151         (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
1152         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
1153         * svg/SVGForeignObjectElement.cpp:
1154         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
1155         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
1156         * svg/SVGImageElement.cpp:
1157         (WebCore::SVGImageElement::SVGImageElement):
1158         (WebCore::SVGImageElement::parseMappedAttribute):
1159         * svg/SVGLength.cpp:
1160         (WebCore::SVGLength::SVGLength):
1161         (WebCore::SVGLength::value):
1162         (WebCore::SVGLength::convertToSpecifiedUnits):
1163         (WebCore::SVGLength::PercentageOfViewport):
1164         * svg/SVGLength.h:
1165         * svg/SVGLength.idl:
1166         * svg/SVGLengthList.cpp:
1167         (WebCore::SVGLengthList::parse):
1168         * svg/SVGLengthList.h:
1169         * svg/SVGLineElement.cpp:
1170         (WebCore::SVGLineElement::SVGLineElement):
1171         (WebCore::SVGLineElement::parseMappedAttribute):
1172         (WebCore::SVGLineElement::toPathData):
1173         * svg/SVGLinearGradientElement.cpp:
1174         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
1175         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
1176         * svg/SVGMarkerElement.cpp:
1177         (WebCore::SVGMarkerElement::SVGMarkerElement):
1178         (WebCore::SVGMarkerElement::parseMappedAttribute):
1179         (WebCore::SVGMarkerElement::canvasResource):
1180         * svg/SVGMaskElement.cpp:
1181         (WebCore::SVGMaskElement::SVGMaskElement):
1182         (WebCore::SVGMaskElement::parseMappedAttribute):
1183         (WebCore::SVGMaskElement::drawMaskerContent):
1184         * svg/SVGPatternElement.cpp:
1185         (WebCore::SVGPatternElement::SVGPatternElement):
1186         (WebCore::SVGPatternElement::parseMappedAttribute):
1187         (WebCore::SVGPatternElement::buildPattern):
1188         * svg/SVGRadialGradientElement.cpp:
1189         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
1190         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
1191         * svg/SVGRectElement.cpp:
1192         (WebCore::SVGRectElement::SVGRectElement):
1193         (WebCore::SVGRectElement::parseMappedAttribute):
1194         (WebCore::SVGRectElement::toPathData):
1195         * svg/SVGSVGElement.cpp:
1196         (WebCore::SVGSVGElement::SVGSVGElement):
1197         (WebCore::SVGSVGElement::viewport):
1198         (WebCore::SVGSVGElement::parseMappedAttribute):
1199         (WebCore::SVGSVGElement::getCTM):
1200         (WebCore::SVGSVGElement::getScreenCTM):
1201         * svg/SVGTextContentElement.cpp:
1202         (WebCore::SVGTextContentElement::SVGTextContentElement):
1203         (WebCore::SVGTextContentElement::parseMappedAttribute):
1204         * svg/SVGTextPathElement.cpp:
1205         (WebCore::SVGTextPathElement::SVGTextPathElement):
1206         (WebCore::SVGTextPathElement::parseMappedAttribute):
1207         * svg/SVGTextPositioningElement.cpp:
1208         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
1209         * svg/SVGUseElement.cpp:
1210         (WebCore::SVGUseElement::SVGUseElement):
1211         (WebCore::SVGUseElement::parseMappedAttribute):
1212         (WebCore::SVGUseElement::buildPendingResource):
1213         (WebCore::SVGUseElement::buildInstanceTree):
1214         (WebCore::SVGUseElement::handleDeepUseReferencing):
1215         (WebCore::SVGUseElement::alterShadowTreeForSVGTag):
1216         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
1217         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
1218         * svg/SVGUseElement.h:
1219         * svg/SynchronizableTypeWrapper.h:
1220         * svg/graphics/SVGImage.cpp:
1221         (WebCore::SVGImage::size):
1222
1223 2008-07-16  Geoffrey Garen  <ggaren@apple.com>
1224
1225         Reviewed by Oliver Hunt.
1226
1227         Support for JavaScriptCore's first step toward putting doubles in
1228         registers: Treat ArgList iterators as Register*'s, not JSValue*'s.
1229
1230         * bindings/js/ScheduledAction.cpp:
1231         (WebCore::ScheduledAction::ScheduledAction):
1232
1233 2008-07-15  Maxime Britto  <britto@apple.com>
1234
1235         Reviewed by Eric.
1236
1237         https://bugs.webkit.org/show_bug.cgi?id=17589
1238         <rdar://problem/5770893>
1239         Retrieve the wheel sensitivity setting from windows system settings for the horizontal and the vertical scrolling.
1240         Allows the page scrolling with the wheel (if activated in windows settings) on both horizontal and vertical ways
1241         For the other platforms, nothing is changed but if someone want to activate this feature 
1242         he/she has to retrieve the settings and fill out the m_lineScrollSensitivity and/or m_charScrollSensitivity in his/her PlatformWheelEvent constructor.
1243
1244         * ChangeLog:
1245         * page/EventHandler.cpp:
1246         (WebCore::scrollAndAcceptEvent): static inline function to avoid copy/paste in the member functions
1247         (WebCore::EventHandler::handleWheelEvent): Call to the above mentionned static inline function with the right parameters 
1248         * platform/PlatformWheelEvent.h:
1249         (WebCore::PlatformWheelEvent::deltaX): Now returns the delta multiplied by the user settings for the number of lines to scroll
1250         (WebCore::PlatformWheelEvent::deltaY): Now returns the delta multiplied by the user settings for the number of chars to scroll
1251         (WebCore::PlatformWheelEvent::isPageXScrollModeEnabled):
1252         (WebCore::PlatformWheelEvent::isPageYScrollModeEnabled):
1253         * platform/gtk/WheelEventGtk.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
1254         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1255         * platform/mac/WheelEventMac.mm: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
1256         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1257         * platform/qt/WheelEventQt.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
1258         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1259         * platform/win/ScrollViewWin.cpp: Added the page scroll (horiz/vertical) and reduced the number of pixels to scroll per line to keep the standard behavior with the factor
1260         (WebCore::adjustDeltaForPageScrollMode): static inline function to avoid copy/paste in the member functions
1261         (WebCore::ScrollView::updateScrollbars):
1262         (WebCore::ScrollView::wheelEvent):
1263         * platform/win/WheelEventWin.cpp: Retrieves the new values by using the win32 API.
1264         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1265         * platform/wx/MouseWheelEventWx.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
1266         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1267
1268 2008-07-15  Kevin Ollivier  <kevino@theolliviers.com>
1269
1270         wx build fix - adding AccessibilityImageMapLink.cpp to the wx build.
1271
1272         * WebCoreSources.bkl:
1273
1274 2008-07-15  Kevin McCullough  <kmccullough@apple.com>
1275
1276         Reviewed by Dan.
1277
1278         <rdar://problem/5620273> REGRESSION: Apparent caching between form
1279         submits twice (on Maconomy) (18401)
1280
1281         Frames did not set the createdByParser flag even when they were.
1282
1283         * html/HTMLElementFactory.cpp:
1284         (WebCore::frameConstructor):
1285         (WebCore::iframeConstructor):
1286
1287 2008-07-15  Dan Bernstein  <mitz@apple.com>
1288
1289         Reviewed by Dave Hyatt.
1290
1291         - fix https://bugs.webkit.org/show_bug.cgi?id=19525
1292           <rdar://problem/5961768> -webkit-box-reflect in hyperlink causes webkit to crash
1293
1294         Test: fast/reflections/inline-crash.html
1295
1296         * rendering/RenderInline.cpp:
1297         (WebCore::RenderInline::setStyle): Added setHasReflection(false).
1298         Inline flows never have reflections.
1299
1300 2008-07-14  David Hyatt  <hyatt@apple.com>
1301
1302         Allow <style> and <link> pretty much anywhere.  They will still be moved to the <head> if
1303         no <body> exists yet though.
1304
1305         Reviewed by Sam
1306
1307         Added fast/css/style-parsed-outside-of-head.html
1308
1309         * html/HTMLElement.cpp:
1310         (WebCore::inlineTagList):
1311
1312 2008-07-15  Kevin McCullough  <kmccullough@apple.com>
1313
1314         Reviewed by Geoff.
1315
1316         Rename pageGroupIdentifier to profileGroup to keep mention of a
1317         pageGroup out of JavaScriptCore.
1318
1319         * bindings/js/JSQuarantinedObjectWrapper.cpp:
1320         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
1321         * bindings/js/ScriptController.cpp:
1322         (WebCore::ScriptController::clear):
1323         (WebCore::ScriptController::initScript):
1324         * history/CachedPage.cpp:
1325         (WebCore::CachedPage::restore):
1326
1327 2008-07-15  Adam Roben  <aroben@apple.com>
1328
1329         WebCore part of adding WebKit[Set]ShouldUseFontSmoothing functions
1330
1331         <rdar://6059127>
1332
1333         Reviewed by John Sullivan.
1334
1335         * platform/graphics/win/FontCGWin.cpp:
1336         (WebCore::Font::drawGlyphs): Pass the result of
1337         WebCoreShouldUseFontSmoothing() into wkSetFontSmoothingStyle.
1338         * platform/win/WebCoreTextRenderer.cpp:
1339         (WebCore::WebCoreSetShouldUseFontSmoothing):
1340         (WebCore::WebCoreShouldUseFontSmoothing):
1341         Added.
1342         * platform/win/WebCoreTextRenderer.h:
1343
1344 2008-07-15  Adam Roben  <aroben@apple.com>
1345
1346         Windows build fix
1347
1348         * WebCore.vcproj/WebCore.vcproj: Add AccessibilityImageMapLink.{cpp,h}
1349         to the project.
1350
1351 2008-07-15  Holger Hans Peter Freyther  <zecke@selfish.org>
1352
1353         Build fix for the Gtk+ and Qt platform.
1354
1355         * GNUmakefile.am: Add AccessibilityImageMapLink.cpp to the build
1356         * WebCore.pro: Add AccessibilityImageMapLink.cpp to the build
1357
1358 2008-07-14  Dan Bernstein  <mitz@apple.com>
1359
1360         - Tiger build fix
1361
1362         * platform/mac/WidgetMac.mm:
1363         (WebCore::Widget::paint):
1364
1365 2008-07-14  Dan Bernstein  <mitz@apple.com>
1366
1367         Reviewed by John Sullivan.
1368
1369         - WebCore part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
1370
1371         * platform/mac/WidgetMac.mm:
1372         (WebCore::Widget::paint): Changed to account for the case of drawing
1373         into a bitmap context that is not a window's backing store. In that
1374         case, -displayRectIgnoringOpacity:inContext: is used to redirect the
1375         drawing to the correct context, after setting up the right transform
1376         on it. For subframes, additional code ensures that the scroll view will
1377         not paint the background behind a transparent frame.
1378
1379 2008-07-14  chris fleizach  <cfleizach@apple.com>
1380
1381         Reviewed by Beth Dakin
1382
1383         <rdar://problem/6038106> AXChildren returned for this web area is null
1384         Accessibility of image maps needed to be updated
1385
1386         Tests: accessibility/image-map1.html
1387                accessibility/image-map2.html
1388
1389         * WebCore.xcodeproj/project.pbxproj:
1390         * page/AXObjectCache.cpp:
1391         (WebCore::AXObjectCache::get):
1392         * page/AccessibilityImageMapLink.cpp: Added.
1393         (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
1394         (WebCore::AccessibilityImageMapLink::~AccessibilityImageMapLink):
1395         (WebCore::AccessibilityImageMapLink::create):
1396         (WebCore::AccessibilityImageMapLink::parentObject):
1397         (WebCore::AccessibilityImageMapLink::anchorElement):
1398         (WebCore::AccessibilityImageMapLink::accessibilityDescription):
1399         (WebCore::AccessibilityImageMapLink::title):
1400         (WebCore::AccessibilityImageMapLink::elementRect):
1401         (WebCore::AccessibilityImageMapLink::size):
1402         * page/AccessibilityImageMapLink.h: Added.
1403         (WebCore::AccessibilityImageMapLink::setHTMLAreaElement):
1404         (WebCore::AccessibilityImageMapLink::setHTMLMapElement):
1405         (WebCore::AccessibilityImageMapLink::roleValue):
1406         (WebCore::AccessibilityImageMapLink::accessibilityIsIgnored):
1407         (WebCore::AccessibilityImageMapLink::isLink):
1408         * page/AccessibilityListBoxOption.h:
1409         * page/AccessibilityObject.cpp:
1410         (WebCore::AccessibilityObject::selectedChildren):
1411         (WebCore::AccessibilityObject::visibleChildren):
1412         * page/AccessibilityObject.h:
1413         (WebCore::):
1414         * page/AccessibilityRenderObject.cpp:
1415         (WebCore::AccessibilityRenderObject::parentObject):
1416         (WebCore::AccessibilityRenderObject::isAnchor):
1417         (WebCore::AccessibilityRenderObject::anchorElement):
1418         (WebCore::AccessibilityRenderObject::helpText):
1419         (WebCore::AccessibilityRenderObject::intValue):
1420         (WebCore::AccessibilityRenderObject::stringValue):
1421         (WebCore::AccessibilityRenderObject::title):
1422         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1423         (WebCore::AccessibilityRenderObject::elementRect):
1424         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1425         (WebCore::AccessibilityRenderObject::roleValue):
1426         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
1427         (WebCore::AccessibilityRenderObject::addChildren):
1428         * page/AccessibilityRenderObject.h:
1429         * page/mac/AccessibilityObjectWrapper.mm:
1430         (convertToNSArray):
1431         (RoleEntry::):
1432
1433 2008-07-14  Sam Weinig  <sam@webkit.org>
1434
1435         Rubber-stamped by David Hyatt.
1436
1437         Remove unused ExceptionCode parameter from compareDocumentPosition.
1438
1439         * dom/Document.cpp:
1440         (WebCore::Document::addStyleSheetCandidateNode):
1441         * dom/Node.cpp:
1442         (WebCore::Node::compareDocumentPosition):
1443         * dom/Node.h:
1444         * dom/Node.idl:
1445
1446 2008-07-14  David Hyatt  <hyatt@apple.com>
1447
1448         Fix for bugzilla bug 5476, link and style elements should be allowed outside the <head>.
1449
1450         Reviewed by Sam
1451
1452         Added fast/css/style-outside-head.html
1453         Added fast/css/link-outside-head.html
1454
1455         * dom/Document.cpp:
1456         (WebCore::Document::addStyleSheetCandidateNode):
1457         (WebCore::Document::removeStyleSheetCandidateNode):
1458         (WebCore::Document::recalcStyleSelector):
1459         * dom/Document.h:
1460         * dom/Node.cpp:
1461         (WebCore::Node::compareDocumentPosition):
1462         * dom/ProcessingInstruction.cpp:
1463         (WebCore::ProcessingInstruction::checkStyleSheet):
1464         (WebCore::ProcessingInstruction::insertedIntoDocument):
1465         (WebCore::ProcessingInstruction::removedFromDocument):
1466         (WebCore::ProcessingInstruction::finishParsingChildren):
1467         * dom/ProcessingInstruction.h:
1468         (WebCore::ProcessingInstruction::setCreatedByParser):
1469         * dom/StyleElement.cpp:
1470         (WebCore::StyleElement::removedFromDocument):
1471         * dom/XMLTokenizer.cpp:
1472         (WebCore::XMLTokenizer::startElementNs):
1473         (WebCore::XMLTokenizer::processingInstruction):
1474         (WebCore::):
1475         * html/HTMLElementFactory.cpp:
1476         (WebCore::linkConstructor):
1477         * html/HTMLLinkElement.cpp:
1478         (WebCore::HTMLLinkElement::HTMLLinkElement):
1479         (WebCore::HTMLLinkElement::insertedIntoDocument):
1480         (WebCore::HTMLLinkElement::removedFromDocument):
1481         (WebCore::HTMLLinkElement::finishParsingChildren):
1482         * html/HTMLLinkElement.h:
1483         (WebCore::HTMLLinkElement::setCreatedByParser):
1484         * html/HTMLStyleElement.cpp:
1485         (WebCore::HTMLStyleElement::insertedIntoDocument):
1486         (WebCore::HTMLStyleElement::removedFromDocument):
1487         * svg/SVGStyleElement.cpp:
1488         (WebCore::SVGStyleElement::insertedIntoDocument):
1489         (WebCore::SVGStyleElement::removedFromDocument):
1490
1491 2008-07-14  Sam Weinig  <sam@webkit.org>
1492
1493         Reviewed by Mark Rowe.
1494
1495         Sort interface extended attributes to appease *the* Mark Rowe.
1496
1497         * page/DOMWindow.idl:
1498
1499 2008-07-14  Anders Carlsson  <andersca@apple.com>
1500
1501         Reviewed by Geoff.
1502
1503         <rdar://problem/6073974>
1504         https://bugs.webkit.org/show_bug.cgi?id=18106
1505         The "onscroll" event bubbles, which is inconsistent with Firefox and IE
1506
1507         Don't bubble the scroll event.
1508         
1509         * rendering/RenderLayer.cpp:
1510         (WebCore::RenderLayer::scrollToOffset):
1511         * rendering/RenderListBox.cpp:
1512         (WebCore::RenderListBox::valueChanged):
1513
1514 2008-07-14  Adele Peterson  <adele@apple.com>
1515
1516         Reviewed by Geoff.
1517
1518         Fix for <rdar://problem/5784890> REGRESSION (Safari 3): Can't edit SpeedStream 4100 DSL modem settings
1519
1520         The web server on this particular piece of hardware doesn't handle "text/xml" in the 
1521         Accept header if the headers are sent in a certain order.  Safari 2 used to send "*/*" in 
1522         the Accept header.  Firefox 2 sent "text/xml" but in an acceptable order for the web 
1523         server.  And Firefox 3 doesn't send "text/xml" at all in the Accept header since it 
1524         is being deprecated in favor of "application/xml".  We decided that the best solution is 
1525         to match Firefox 3 and stop sending "text/xml" in the Accept header.
1526
1527         No test.  There appears to be no way to get the raw headers in the original order in perl/php.
1528
1529         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
1530
1531 2008-07-14  Sam Weinig  <sam@webkit.org>
1532
1533         Reviewed by Adele Peterson.
1534
1535         Fix for <rdar://problem/5769819>
1536
1537         Test: http/tests/security/cross-frame-access-object-prototype.html
1538
1539         * bindings/js/JSDOMWindowCustom.cpp:
1540         (WebCore::JSDOMWindow::getPropertyAttributes): Perform security check.
1541         (WebCore::JSDOMWindow::defineGetter): Ditto.
1542         (WebCore::JSDOMWindow::defineSetter): Ditto.
1543         (WebCore::JSDOMWindow::lookupGetter): Ditto.
1544         (WebCore::JSDOMWindow::lookupSetter): Ditto.
1545         * bindings/scripts/CodeGeneratorJS.pm: Add support for custom versions
1546         of all the core JSObject functionality.
1547         * page/DOMWindow.idl: Override remaining core JSObject functionality,
1548         to inject security checks.
1549
1550 2008-07-14  Adam Roben  <aroben@apple.com>
1551
1552         Windows build fixes
1553
1554         * WebCore.vcproj/WebCore.vcproj: Add include/pthreads to the include
1555         path.
1556         * bindings/scripts/CodeGeneratorCOM.pm: Touched this to force COM
1557         bindings to regenerate.
1558         * loader/FTPDirectoryDocument.cpp:
1559         * loader/FTPDirectoryParser.cpp:
1560         Fixed some duplicate macro definitions now that we're including
1561         pthread.h again.
1562
1563 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
1564
1565         Reviewed by Kevin McCullough.
1566
1567         Make JSGlobalData refcounted in preparation to adding a way to create contexts that share
1568         global data.
1569
1570         * bindings/js/JSDOMWindowBase.cpp:
1571         (WebCore::JSDOMWindowBase::commonJSGlobalData): Create JSGlobalData with create() method.
1572
1573 2008-07-14  Simon Hausmann  <hausmann@webkit.org>
1574
1575         Reviewed by Holger.
1576
1577         Make listDirectory() in the Qt port work with empty namefilters.
1578         Don't include . and .. to avoid scanning the parent directory.
1579
1580         * platform/qt/FileSystemQt.cpp:
1581         (WebCore::listDirectory):
1582
1583 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
1584
1585         Reviewed by Geoff Garen.
1586
1587         Eliminate per-thread JavaScript global data instance support and make arbitrary
1588         global data/global object combinations possible.
1589
1590         * bindings/js/JSDOMWindowBase.h:
1591         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData): Added.
1592         WebCore uses its own instance of JSGlobalData, as JSC no longer provides a per-thread one.
1593
1594         * bindings/js/JSDOMWindowShell.cpp:
1595         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
1596         (WebCore::JSDOMWindowShell::operator new):
1597         * bindings/js/ScriptController.cpp:
1598         (WebCore::ScriptController::clear):
1599         * bindings/scripts/CodeGeneratorJS.pm:
1600         Pass commonJSGlobalData() as an allocator.
1601
1602         * bridge/c/c_utility.cpp:
1603         (KJS::Bindings::identifierFromNPIdentifier):
1604         * bridge/jni/jni_class.cpp:
1605         (JavaClass::JavaClass):
1606         * history/CachedPage.cpp:
1607         (WebCore::CachedPage::restore):
1608         * storage/Database.cpp:
1609         (WebCore::Database::Database):
1610         * bindings/js/GCController.cpp:
1611         (WebCore::collect):
1612         (WebCore::GCController::gcTimerFired):
1613         (WebCore::GCController::garbageCollectNow):
1614         Use JSDOMWindow::commonJSGlobalData().
1615
1616         * ForwardingHeaders/wtf/ThreadSpecific.h: Added (collector.h now includes this header, so
1617         it need to be accesible outside of JSC).
1618
1619         * WebCore.base.exp: Export JSDOMWindowBase::commonJSGlobalData().
1620
1621 2008-07-14  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1622
1623         Reviewed by Simon.
1624
1625         MinGW build fixes
1626
1627         * plugins/win/PluginDatabaseWin.cpp:
1628         * plugins/win/PluginViewWin.cpp:
1629         (WebCore::PluginView::handleKeyboardEvent):
1630         (WebCore::PluginView::handleMouseEvent):
1631         * svg/SynchronizableTypeWrapper.h:
1632         (WebCore::::SynchronizableTypeWrapper):
1633
1634 2008-07-13  Sam Weinig  <sam@webkit.org>
1635
1636         Reviewed by Oliver Hunt and Dan Bernstein.
1637
1638         Fix for <rdar://problem/5888127>
1639         https://bugs.webkit.org/show_bug.cgi?id=18699
1640
1641         - Match Firefox in restricting the size of custom cursor to images to
1642           128x128 px.
1643         - Restrict custom cursor hotspots to values within the bounds of the
1644           cursor image.
1645
1646         * manual-tests/cursor-max-size.html: Added.
1647         * page/EventHandler.cpp:
1648         (WebCore::EventHandler::selectCursor):
1649
1650 2008-07-13  Kevin Ollivier  <kevino@theolliviers.com>
1651
1652         wx build fix.
1653
1654         * platform/graphics/wx/AffineTransformWx.cpp:
1655         (WebCore::AffineTransform::a):
1656         (WebCore::AffineTransform::b):
1657         (WebCore::AffineTransform::c):
1658         (WebCore::AffineTransform::d):
1659         (WebCore::AffineTransform::e):
1660         (WebCore::AffineTransform::f):
1661
1662 2008-07-12  Dan Bernstein  <mitz@apple.com>
1663
1664         Reviewed by Oliver Hunt.
1665
1666         - fix https://bugs.webkit.org/show_bug.cgi?id=18088
1667           <rdar://problem/6036232> white-space:nowrap; float:left; causing the misalignment issue
1668
1669         Test: fast/block/basic/min-pref-width-nowrap-floats.html
1670
1671         * rendering/RenderBlock.cpp:
1672         (WebCore::RenderBlock::calcInlinePrefWidths): Fixed a case where a
1673         float's width was added to the minimum preferred widths instead of just
1674         acting as a lower bound on the minimum preferred width (since the float
1675         can always be pushed down to be the only thing on the line).
1676
1677 2008-07-12  David D. Kilzer  <ddkilzer@webkit.org>
1678
1679         Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page
1680
1681         <https://bugs.webkit.org/show_bug.cgi?id=13067>
1682
1683         Reviewed by Darin.
1684
1685         Test: WebCore/manual-tests/hash-ref.html
1686
1687         * loader/FrameLoader.cpp:
1688         (WebCore::FrameLoader::load(const KURL& newURL, const String& referrer,
1689              FrameLoadType newLoadType, const String& frameName, Event* event,
1690              PassRefPtr<FormState> formState)): Extracted logic into
1691         shouldScrollToAnchor() for determining when to scroll to an anchor.
1692
1693         (WebCore::FrameLoader::load(DocumentLoader* loader, FrameLoadType type,
1694              PassRefPtr<FormState> formState)): Added check for
1695         shouldScrollToAnchor() to catch cases when the user manually added a
1696         hash ref to the URL in the address bar.  This is the bug fix.
1697
1698         (WebCore::FrameLoader::shouldReload): Simplified early return logic.
1699         We only need to check if the destinationURL has a hash ref, not the
1700         currentURL, per the comment in the method.
1701
1702         (WebCore::FrameLoader::shouldScrollToAnchor): Added.  Logic extracted
1703         from the FrameLoader::load(const KURL& newURL, ...) method.  Fixed order
1704         of arguments to shouldReload() since they were backwards, although the
1705         previous logic in the method made this irrelevant.
1706
1707         (WebCore::FrameLoader::loadItem): Removed call to shouldReload().  Since
1708         we're navigating to a HistoryItem, it doesn't make sense to ask whether
1709         we need to reload the page or not.  Additionally, the logic at the end
1710         of shouldReload() is also checked in urlsMatchItem(), so there's no need
1711         to call the method.  This fixed the fast/css/target-fragment-match.html
1712         test from continuously reloading after the other changes.
1713
1714         * loader/FrameLoader.h:
1715         (WebCore::FrameLoader::shouldScrollToAnchor): Added.
1716
1717         * manual-tests/hash-ref.html: Added.
1718         * manual-tests/resources/hash-ref-test.html: Added.
1719
1720 2008-07-11  Stephanie Lewis  <slewis@apple.com>
1721
1722         Reviewed by Darin Adler.
1723
1724         No Functionality Changed.  Change all the leak counting code to use the new WTF leak counter class.
1725
1726         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1727         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
1728         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
1729         * bindings/js/JSEventListener.cpp:
1730         (WebCore::JSEventListener::JSEventListener):
1731         (WebCore::JSEventListener::~JSEventListener):
1732         * dom/Node.cpp:
1733         (WebCore::Node::Node):
1734         (WebCore::Node::~Node):
1735         * dom/Range.cpp:
1736         (WebCore::Range::Range):
1737         (WebCore::Range::~Range):
1738         * history/CachedPage.cpp:
1739         (WebCore::CachedPage::CachedPage):
1740         (WebCore::CachedPage::~CachedPage):
1741         * loader/SubresourceLoader.cpp:
1742         (WebCore::SubresourceLoader::SubresourceLoader):
1743         (WebCore::SubresourceLoader::~SubresourceLoader):
1744         * page/Frame.cpp:
1745         (WebCore::Frame::Frame):
1746         (WebCore::Frame::~Frame):
1747         * page/Page.cpp:
1748         (WebCore::Page::Page):
1749         (WebCore::Page::~Page):
1750         * rendering/RenderObject.cpp:
1751         (WebCore::RenderObject::RenderObject):
1752         (WebCore::RenderObject::~RenderObject):
1753         * rendering/bidi.cpp:
1754         (WebCore::throw):
1755         (WebCore::BidiRun::operator delete):
1756
1757 2008-07-11  Sam Weinig  <sam@webkit.org>
1758
1759         Reviewed by Mark Rowe.
1760
1761         Update getSubStringLength and selectSubString methods exception throwing conditions
1762         based on SVG working group errata.
1763
1764         Test: svg/custom/selectSubString.html
1765
1766         * svg/SVGTextContentElement.cpp:
1767         (WebCore::SVGTextContentElement::getSubStringLength):
1768         (WebCore::SVGTextContentElement::selectSubString):
1769
1770 2008-07-11  Sam Weinig  <sam@webkit.org>
1771
1772         Reviewed by Mark Rowe.
1773
1774         We can only use the Id fast path for querySelector and querySelectorAll
1775         if the selector is purely an Id selector.
1776
1777         Test: fast/dom/SelectorAPI/id-fastpath.html
1778
1779         * dom/Node.cpp:
1780         (WebCore::Node::querySelector):
1781         * dom/SelectorNodeList.cpp:
1782         (WebCore::createSelectorNodeList):
1783
1784 2008-07-11  David Hyatt  <hyatt@apple.com>
1785
1786         Implement the DOM level 3 compareDocumentPosition method on Node.
1787
1788         Reviewed by Darin
1789
1790         * dom/Node.cpp:
1791         (WebCore::Node::compareDocumentPosition):
1792         * dom/Node.h:
1793         * dom/Node.idl:
1794
1795 2008-07-11  Brady Eidson  <beidson@apple.com>
1796
1797         Rubberstamped by Sam
1798
1799         Removed unneeded export
1800
1801         * WebCore.base.exp:
1802
1803 2008-07-11  Kevin McCullough  <kmccullough@apple.com>
1804
1805         Reviewed by Geoff.
1806
1807         <rdar://problem/6067178> REGRESSION: Start profile button in profiler
1808         now profiles inspector rather than actual page (19833)
1809         - The JSQuarantinedObjectWrapper should use the wrapped exec state
1810         so that calls to it execute in its quarantined world.
1811
1812         * bindings/js/JSQuarantinedObjectWrapper.cpp:
1813         (WebCore::JSQuarantinedObjectWrapper::construct):
1814         (WebCore::JSQuarantinedObjectWrapper::call):
1815
1816 2008-07-11  Simon Fraser  <simon.fraser@apple.com>
1817
1818         Reviewed by Dave Hyatt
1819
1820         StyleRareNonInheritedData needs to initialize and compare
1821         m_maskBoxImage.
1822         <https://bugs.webkit.org/show_bug.cgi?id=20005>
1823
1824         * rendering/style/RenderStyle.cpp:
1825         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1826         (WebCore::StyleRareNonInheritedData::operator==):
1827
1828 2008-07-11  Simon Fraser  <simon.fraser@apple.com>
1829
1830         Reviewed by Dave Hyatt
1831
1832         Bug 18885: RenderLayer::enclosingPositionedAncestor() should
1833         look for transforms, since transforms create containing
1834         blocks.
1835         <https://bugs.webkit.org/show_bug.cgi?id=18885>
1836
1837         Test: fast/transforms/transform-positioned-ancestor.html
1838
1839         * rendering/RenderLayer.cpp:
1840         (WebCore::RenderLayer::stackingContext):
1841         (WebCore::RenderLayer::enclosingPositionedAncestor):
1842         (WebCore::RenderLayer::enclosingTransformedAncestor):
1843
1844 2008-07-11  Jacob Refstrup  <jacob.refstrup@hp.com>
1845
1846         Reviewed by Darin Adler
1847
1848         http://bugs.webkit.org/show_bug.cgi?id=19978
1849         GTK port always ends up with # at the end of resource URLs (and hence can't load files)
1850
1851         - Optimized KURL::removeRef() and used it rather than setRef("")
1852           which after r35040 does the wrong thing.
1853
1854         * platform/KURL.cpp:
1855         (WebCore::KURL::removeRef):
1856         * platform/network/curl/ResourceHandleManager.cpp:
1857         (WebCore::ResourceHandleManager::initializeHandle):
1858
1859 2008-07-11  Simon Hausmann  <hausmann@webkit.org>
1860
1861         Fix the Qt/Windows build, include windows.h for HWND directly
1862         instead of implicit inclusion through Timer.h.
1863
1864         * plugins/win/PluginMessageThrottlerWin.h:
1865
1866 2008-07-11  Dan Bernstein  <mitz@apple.com>
1867
1868         Reviewed by Darin Adler.
1869
1870         - fix popularity tracking for cached resources, which regressed in r23923
1871
1872         * loader/Cache.cpp:
1873         (WebCore::Cache::requestResource): Changed to increase the access count
1874         whenever this function returns a CachedResource and the cache is
1875         enabled, instead of only when creating a new CachedResources. The
1876         incorrect behavior resulted in all resources in the cache having an
1877         access count of exactly 1 at all times.
1878         (WebCore::Cache::requestUserCSSStyleSheet): Ditto.
1879
1880 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1881
1882         Reviewed by Simon.
1883
1884         Enable Netscape plugins for the Qt/Windows build.
1885
1886         This required various smaller fixes across a wider set of
1887         files described below.
1888
1889         * WebCore.pro: Add various windows specific files to the build.
1890         * page/Page.h: Extend the #ifdeffery for windows types to include the
1891         Qt/Windows build.
1892         * platform/graphics/GraphicsContext.h: Added inTransparencyLayer() for
1893         the Qt port, as PluginViewWin.cpp uses it.
1894         * platform/graphics/qt/GraphicsContextQt.cpp:
1895         (WebCore::GraphicsContext::inTransparencyLayer): Implemented function.
1896         * platform/qt/TemporaryLinkStubs.cpp: Mask out some stubs as they
1897         are now implemented through *Win.cpp files.
1898         * plugins/PluginDatabase.cpp: Change PLATFORM(WIN) to WIN_OS.
1899         * plugins/PluginView.cpp: Change PLATFORM(WIN) to WIN_OS.
1900         (WebCore::PluginView::setFrameGeometry): Ditto.
1901         (WebCore::PluginView::PluginView): Ditto.
1902         * plugins/PluginView.h: Introduce the PlatformPluginWidget typedef,
1903         which expands to HWND directly for the Qt/Windows build and
1904         PlatformWidget for the remaining platforms. That is because
1905         PlatformWidget is QWidget* for the Qt build but for the plugin
1906         window we need a native window, aka HWND.
1907         * plugins/win/PluginPackageWin.cpp: Fix compilation, include shlwapi.h
1908         after config.h.
1909         * plugins/win/PluginViewWin.cpp:
1910         (windowHandleForPlatformWidget): Added a little helper function to
1911         determine the HWND from a PlatformWidget.
1912         (WebCore::registerPluginView): For the Qt port we need to set the
1913         global application instance handle here in the library, as the
1914         browser doesn't do it.
1915         (WebCore::PluginView::handleMouseEvent): Mask out
1916         ignoreNextSetCursor/lastSetCursor for the Qt port, it's not used.
1917         (WebCore::PluginView::invalidateRect): Convert from IntRect to RECT
1918         manually just here to avoid compiling in IntRectWin.cpp.
1919         (WebCore::PluginView::invalidateRegion): Ditto.
1920         (WebCore::PluginView::forceRedraw): Call windowHandleForPlatformWidget
1921         on containingWindow() to get the correct HWND for the Qt port.
1922         (WebCore::PluginView::init): Determine the parent HWND for m_window
1923         using windowHandleForPlatformWidget.
1924
1925 2008-07-11  Simon Hausmann  <hausmann@webkit.org>
1926
1927         Rubber-stamped by Holger.
1928
1929         Enable Database and Icondatabase functionality for the Qt/Windows
1930         build when building inside Qt, as we can use the builtin copy of
1931         sqlite then.
1932
1933         * WebCore.pro:
1934
1935 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1936
1937         Reviewed by Adam Roben.
1938
1939         Fix compile with MinGW since it does not like friend static function.
1940
1941         * plugins/PluginView.h:
1942         * plugins/win/PluginViewWin.cpp:
1943
1944 2008-07-11  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1945
1946         Reviewed by Simon.
1947
1948         Fix Qt/Win32 build.
1949
1950         * platform/graphics/qt/GraphicsContextQt.cpp:
1951
1952 2008-07-10  Sam Weinig  <sam@webkit.org>
1953
1954         Reviewed by Oliver Hunt.
1955
1956         Add support for NSResolver to resolve namespaces for querySelector 
1957         and querySelectorAll.
1958
1959         - Namespace resolution is done after parsing by iterating over all the
1960           parts of the CSSSelector.
1961
1962         Tests: fast/dom/SelectorAPI/NSResolver-basic.xhtml
1963                fast/dom/SelectorAPI/NSResolver-exceptions.xhtml
1964
1965         * GNUmakefile.am: Updated with new files.
1966         * WebCore.pro: Ditto.
1967         * WebCore.vcproj/WebCore.vcproj: Ditto.
1968         * WebCore.xcodeproj/project.pbxproj: Ditto.
1969         * WebCoreSources.bkl: Ditto.
1970
1971         * bindings/js/JSDOMBinding.cpp:
1972         (WebCore::execStateFromNode):
1973         * bindings/js/JSDOMBinding.h:
1974         Move execStateFromNode here from NodeFilter.
1975
1976         * bindings/js/JSDocumentCustom.cpp:
1977         (WebCore::JSDocument::querySelector): Don't throw a NOT_SUPPORTED_ERR for NSResolver
1978         and instead create one if the argument is not undefined or null.
1979         (WebCore::JSDocument::querySelectorAll): Ditto.
1980         * bindings/js/JSDocumentFragmentCustom.cpp:
1981         (WebCore::JSDocumentFragment::querySelector): Ditto.
1982         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
1983         * bindings/js/JSElementCustom.cpp:
1984         (WebCore::JSElement::querySelector): Ditto.
1985         (WebCore::JSElement::querySelectorAll): Ditto.
1986
1987         * bindings/js/JSNSResolver.cpp: Added.
1988         (WebCore::JSNSResolver::JSNSResolver):
1989         (WebCore::JSNSResolver::mark):
1990         (WebCore::JSNSResolver::lookupNamespaceURI): Try and get the function
1991         from the passed in argument, either the value itself, or the result of
1992         getting the lookupNamespaceURI property, and call it.
1993         (WebCore::toNSResolver):
1994         * bindings/js/JSNSResolver.h: Added.
1995         (WebCore::JSNSResolver::create):
1996
1997         * dom/Document.idl: Update with NSResolver parameter.
1998         * dom/DocumentFragment.idl: Ditto.
1999         * dom/Element.idl: Ditto.
2000
2001         * dom/NSResolver.h: Added.
2002         (WebCore::NSResolver::~NSResolver):
2003         (WebCore::NSResolver::mark):
2004         Abstract base class.
2005
2006         * dom/NSResolver.idl: Added.
2007
2008         * dom/Node.cpp:
2009         (WebCore::forEachTagSelector):
2010         (WebCore::forEachSelector):
2011         Functions to iterate over all parts of the selector.
2012
2013         (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
2014         Functor to be passed to forEachSelector to determine if a selector
2015         needs namespace resolution, for the case when no NSResolver is passed
2016         and we need to determine whether to throw a NAMESPACE_ERR.
2017
2018         (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
2019         (WebCore::ResolveNamespaceFunctor::operator()):
2020         Functor to resolve namespaces for the selector.
2021
2022         (WebCore::selectorNeedsNamespaceResolution):
2023         (WebCore::resolveNamespacesForSelector):
2024         (WebCore::Node::querySelector): Resolve namepspaces, including the defaultNamespace
2025         if a NSResolver is passed in.
2026         (WebCore::Node::querySelectorAll): Ditto.
2027         * dom/Node.h:
2028
2029         * dom/NodeFilter.cpp:
2030         * dom/NodeFilter.h:
2031         * dom/NodeIterator.h:
2032         (WebCore::NodeIterator::nextNode):
2033         (WebCore::NodeIterator::previousNode):
2034         * dom/TreeWalker.h:
2035         (WebCore::TreeWalker::parentNode):
2036         (WebCore::TreeWalker::firstChild):
2037         (WebCore::TreeWalker::lastChild):
2038         (WebCore::TreeWalker::previousSibling):
2039         (WebCore::TreeWalker::nextSibling):
2040         (WebCore::TreeWalker::previousNode):
2041         (WebCore::TreeWalker::nextNode):
2042         Use the version of execStateFromNode in JSDOMBinding.
2043
2044 2008-07-10  Mark Rowe  <mrowe@apple.com>
2045
2046         Reviewed by Sam Weinig.
2047
2048         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
2049
2050         * Configurations/WebCore.xcconfig:
2051
2052 2008-07-10  Dean Jackson  <dino@apple.com>
2053
2054         Reviewed by hyatt.
2055
2056         Calculate computed style for -webkit-transform property
2057         https://bugs.webkit.org/show_bug.cgi?id=19864
2058
2059         Test: css3/transform-computed-style-001.html
2060
2061         * css/CSSComputedStyleDeclaration.cpp:
2062         (WebCore::computedTransform):
2063         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2064             handles -webkit-transform property now
2065         * manual-tests/computed-transform-value.html: Added.
2066
2067 2008-07-10  Dan Bernstein  <mitz@apple.com>
2068
2069         Reviewed by Adam Roben.
2070
2071         - fix a parse error in inspector.js
2072
2073         * page/inspector/inspector.js: Added missing brace.
2074
2075 2008-07-10  Adam Roben  <aroben@apple.com>
2076
2077         Build fix
2078
2079         * WebCore.vcproj/QTMovieWin.vcproj: Add
2080         OSXCompatibilityHeaders[/GNUCompatibility] to the include path.
2081
2082 2008-07-10  Chris Fleizach  <cfleizach@apple.com>
2083
2084         Reviewed by Dan Bernstein
2085
2086         <rdar://problem/6067408> AX: internal anchors broken
2087
2088         * page/AccessibilityRenderObject.cpp:
2089         (WebCore::AccessibilityRenderObject::internalLinkElement):
2090         * platform/KURL.cpp:
2091         (WebCore::KURL::removeRef):
2092         * platform/KURL.h:
2093
2094 2008-07-10  Mark Rowe  <mrowe@apple.com>
2095
2096         Build fix.
2097
2098         * bridge/npapi.h: Remove extra comma.
2099
2100 2008-07-10  Sam Weinig  <sam@webkit.org>
2101
2102         Reviewed by Mark Rowe.
2103
2104         Remove no-op debug method.
2105
2106         * css/CSSSelector.cpp:
2107         * css/CSSSelector.h:
2108
2109 2008-07-10  Sam Weinig  <sam@webkit.org>
2110
2111         Reviewed by Dave Hyatt and Darin Adler.
2112
2113         Add support for calling querySelector and querySelectorAll on DocumentFragments
2114
2115         - Fixes bug where nodes not in the document tree would not match based on ID due
2116           to over optimization.
2117
2118         Test: fast/dom/SelectorAPI/detached-element.html
2119
2120         * GNUmakefile.am:
2121         * WebCore.pro:
2122         * WebCore.vcproj/WebCore.vcproj:
2123         * WebCore.xcodeproj/project.pbxproj:
2124         * WebCoreSources.bkl:
2125         * bindings/js/JSDocumentFragmentCustom.cpp: Added.
2126         (WebCore::JSDocumentFragment::querySelector): Add custom code matching JSElement
2127         and JSDocument that checks for a 2nd arguments and throws an exception indicating
2128         we do not currently support the optional NSResolver part of the Selectors API spec.
2129         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
2130         * dom/DocumentFragment.idl: Add querySelector and querySelectorAll declarations.
2131
2132         * dom/Node.cpp:
2133         (WebCore::Node::querySelector): Make the CSS parser parse the selector
2134         according to the strictness of the document so that mixed case ID selectors
2135         match in quirks mode.  Also, don't use the fast ID path if the root is not
2136         in the DOM tree, as it won't work.
2137         (WebCore::Node::querySelectorAll): Ditto.
2138         * dom/SelectorNodeList.cpp:
2139         (WebCore::createSelectorNodeList): Don't use the fast ID path if the root is not
2140         in the DOM tree, as it won't work.
2141
2142 2008-07-10  Anthony Ricaud  <rik24d@gmail.com>
2143
2144         Bug 19389: querySelectorAll exception while searching invalid CSS selector
2145         <https://bugs.webkit.org/show_bug.cgi?id=19389>
2146
2147         Reviewed by Tim Hatcher.
2148
2149         * page/inspector/inspector.js: Added a try/catch block.
2150
2151 2008-07-10  Brent Fulgham  <bfulgham@gmail.com>
2152
2153         Correct a build regression due to an uninitialized variable.
2154
2155         <https://bugs.webkit.org/show_bug.cgi?id=19976>
2156
2157         Reviewed by Darin.
2158
2159         * platform/graphics/cairo/FontCairo.cpp:
2160         (WebCore::Font::drawGlyphs):
2161
2162 2008-07-10  Adam Roben  <aroben@apple.com>
2163
2164         Fix Bug 19580: REGRESSION (r34432): PGO-only crash in
2165         HTMLCollection::resetCollectionInfo (codegen issue?)
2166
2167         <https://bugs.webkit.org/show_bug.cgi?id=19580>
2168         <rdar://6029794>
2169
2170         Reviewed by Cameron Zwarich.
2171
2172         * WebCore.vcproj/WebCore.vcproj: Disable LTCG for HTMLFormElement.cpp,
2173         which was causing some bad codegen in HTMLFormElement::elements.
2174         * html/HTMLFormElement.cpp: Touched this file to force it to rebuild.
2175
2176 2008-07-10  Anders Carlsson  <andersca@apple.com>
2177
2178         Reviewed by Jon.
2179
2180         <rdar://problem/6067135>
2181         WebKit should respond true to a query for NPNVSupportsWindowless.
2182         
2183         Handle NPNVSupportsWindowless and return true.
2184         
2185         * bridge/npapi.h:
2186         * plugins/win/PluginViewWin.cpp:
2187         (WebCore::PluginView::getValue):
2188
2189 2008-07-10  Kevin McCullough  <kmccullough@apple.com>
2190
2191         Reviewed by Darin.
2192
2193         -Minor cleanup. Renamed callTree() to head() and no longer use m_head
2194         directly but instead keep it private and access via a method().
2195
2196         * page/JavaScriptProfile.cpp:
2197         (WebCore::getHeadCallback):
2198
2199 2008-07-10  Simon Fraser  <simon.fraser@apple.com>
2200
2201         When a mask image changes, ensure that elements
2202         that use that mask image are repainted correctly.
2203         
2204         <https://bugs.webkit.org/show_bug.cgi?id=19954>
2205         
2206         Reviewed by Dave Hyatt
2207
2208         * manual-tests/canvas-mask-redraw.html
2209           Manual testcase
2210         * rendering/RenderBox.cpp:
2211         (WebCore::RenderBox::imageChanged):
2212         (WebCore::RenderBox::repaintLayerRectsForImage):
2213         * rendering/RenderBox.h:
2214         Loop through background layers and mask layers, and
2215         if this image is used in a layer, compute a repaint
2216         rect and repaint.
2217         * rendering/RenderImage.cpp:
2218         (WebCore::RenderImage::imageChanged):
2219         If this image has a mask, call the base class method.
2220         * rendering/RenderObject.cpp:
2221         Remove a bogus 'return'.
2222
2223 2008-07-10  Simon Fraser  <simon.fraser@apple.com>
2224
2225         Transforms create a containing block, so
2226         RenderLayer::shouldBeOverflowOnly() needs to look for transforms.
2227         <https://bugs.webkit.org/show_bug.cgi?id=18886>
2228         
2229         Reviewed by Dave Hyatt
2230
2231         Test: fast/transforms/transform-overflow.html
2232
2233         * rendering/RenderLayer.cpp:
2234         (WebCore::RenderLayer::shouldBeOverflowOnly):
2235
2236 2008-07-09  Alex Mathews  <possessedpenguinbob@gmail.com>
2237
2238         Reviewed by Oliver Hunt.
2239
2240         bug 19835: WebKit needs cross-platform filter system
2241         <https://bugs.webkit.org/show_bug.cgi?id=19835>
2242
2243         More class refactoring in preparation for cross-platform filter 
2244         implementation.
2245
2246         * WebCore.xcodeproj/project.pbxproj:
2247         * rendering/SVGRenderTreeAsText.h:
2248         (WebCore::operator<<):
2249         * svg/FilterEffect.cpp:
2250         (WebCore::FilterEffect::externalRepresentation):
2251         * svg/FilterEffect.h:
2252         * svg/SVGFEBlendElement.cpp:
2253         (WebCore::SVGFEBlendElement::build):
2254         * svg/SVGFEBlendElement.h:
2255         * svg/SVGFEColorMatrixElement.cpp:
2256         (WebCore::SVGFEColorMatrixElement::build):
2257         * svg/SVGFEColorMatrixElement.h:
2258         * svg/SVGFEComponentTransferElement.cpp:
2259         (WebCore::SVGFEComponentTransferElement::build):
2260         * svg/SVGFEComponentTransferElement.h:
2261         * svg/SVGFECompositeElement.cpp:
2262         (WebCore::SVGFECompositeElement::build):
2263         * svg/SVGFECompositeElement.h:
2264         * svg/SVGFEDiffuseLightingElement.cpp:
2265         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2266         (WebCore::SVGFEDiffuseLightingElement::build):
2267         (WebCore::SVGFEDiffuseLightingElement::findLights):
2268         * svg/SVGFEDiffuseLightingElement.h:
2269         * svg/SVGFEDisplacementMapElement.cpp:
2270         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
2271         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
2272         (WebCore::SVGFEDisplacementMapElement::filterEffect):
2273         (WebCore::SVGFEDisplacementMapElement::build):
2274         * svg/SVGFEDisplacementMapElement.h:
2275         * svg/SVGFEFloodElement.cpp:
2276         (WebCore::SVGFEFloodElement::filterEffect):
2277         (WebCore::SVGFEFloodElement::build):
2278         * svg/SVGFEFloodElement.h:
2279         (WebCore::SVGFEFloodElement::contextElement):
2280         * svg/SVGFEGaussianBlurElement.cpp:
2281         (WebCore::SVGFEGaussianBlurElement::filterEffect):
2282         (WebCore::SVGFEGaussianBlurElement::build):
2283         * svg/SVGFEGaussianBlurElement.h:
2284         * svg/SVGFEImageElement.cpp:
2285         (WebCore::SVGFEImageElement::filterEffect):
2286         (WebCore::SVGFEImageElement::build):
2287         * svg/SVGFEImageElement.h:
2288         * svg/SVGFEMergeElement.cpp:
2289         (WebCore::SVGFEMergeElement::filterEffect):
2290         (WebCore::SVGFEMergeElement::build):
2291         * svg/SVGFEMergeElement.h:
2292         (WebCore::SVGFEMergeElement::contextElement):
2293         * svg/SVGFEOffsetElement.cpp:
2294         (WebCore::SVGFEOffsetElement::filterEffect):
2295         (WebCore::SVGFEOffsetElement::build):
2296         * svg/SVGFEOffsetElement.h:
2297         * svg/SVGFESpecularLightingElement.cpp:
2298         (WebCore::SVGFESpecularLightingElement::filterEffect):
2299         (WebCore::SVGFESpecularLightingElement::findLights):
2300         (WebCore::SVGFESpecularLightingElement::build):
2301         * svg/SVGFESpecularLightingElement.h:
2302         * svg/SVGFETileElement.cpp:
2303         (WebCore::SVGFETileElement::filterEffect):
2304         (WebCore::SVGFETileElement::build):
2305         * svg/SVGFETileElement.h:
2306         * svg/SVGFETurbulenceElement.cpp:
2307         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
2308         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
2309         (WebCore::SVGFETurbulenceElement::filterEffect):
2310         (WebCore::SVGFETurbulenceElement::build):
2311         * svg/SVGFETurbulenceElement.h:
2312         * svg/SVGFilterPrimitiveStandardAttributes.h:
2313         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
2314         (WebCore::FEConvolveMatrix::FEConvolveMatrix):
2315         (WebCore::FEConvolveMatrix::create):
2316         (WebCore::FEConvolveMatrix::kernelSize):
2317         (WebCore::FEConvolveMatrix::setKernelSize):
2318         (WebCore::FEConvolveMatrix::kernel):
2319         (WebCore::FEConvolveMatrix::setKernel):
2320         (WebCore::FEConvolveMatrix::divisor):
2321         (WebCore::FEConvolveMatrix::setDivisor):
2322         (WebCore::FEConvolveMatrix::bias):
2323         (WebCore::FEConvolveMatrix::setBias):
2324         (WebCore::FEConvolveMatrix::targetOffset):
2325         (WebCore::FEConvolveMatrix::setTargetOffset):
2326         (WebCore::FEConvolveMatrix::edgeMode):
2327         (WebCore::FEConvolveMatrix::setEdgeMode):
2328         (WebCore::FEConvolveMatrix::kernelUnitLength):
2329         (WebCore::FEConvolveMatrix::setKernelUnitLength):
2330         (WebCore::FEConvolveMatrix::preserveAlpha):
2331         (WebCore::FEConvolveMatrix::setPreserveAlpha):
2332         (WebCore::FEConvolveMatrix::apply):
2333         (WebCore::FEConvolveMatrix::dump):
2334         (WebCore::operator<<):
2335         (WebCore::FEConvolveMatrix::externalRepresentation):
2336         * svg/graphics/filters/SVGFEConvolveMatrix.h:
2337         (WebCore::):
2338         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
2339         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
2340         (WebCore::FEDiffuseLighting::create):
2341         (WebCore::FEDiffuseLighting::~FEDiffuseLighting):
2342         (WebCore::FEDiffuseLighting::lightingColor):
2343         (WebCore::FEDiffuseLighting::setLightingColor):
2344         (WebCore::FEDiffuseLighting::surfaceScale):
2345         (WebCore::FEDiffuseLighting::setSurfaceScale):
2346         (WebCore::FEDiffuseLighting::diffuseConstant):
2347         (WebCore::FEDiffuseLighting::setDiffuseConstant):
2348         (WebCore::FEDiffuseLighting::kernelUnitLengthX):
2349         (WebCore::FEDiffuseLighting::setKernelUnitLengthX):
2350         (WebCore::FEDiffuseLighting::kernelUnitLengthY):
2351         (WebCore::FEDiffuseLighting::setKernelUnitLengthY):
2352         (WebCore::FEDiffuseLighting::lightSource):
2353         (WebCore::FEDiffuseLighting::setLightSource):
2354         (WebCore::FEDiffuseLighting::apply):
2355         (WebCore::FEDiffuseLighting::dump):
2356         (WebCore::FEDiffuseLighting::externalRepresentation):
2357         * svg/graphics/filters/SVGFEDiffuseLighting.h:
2358         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
2359         (WebCore::FEDisplacementMap::FEDisplacementMap):
2360         (WebCore::FEDisplacementMap::create):
2361         (WebCore::FEDisplacementMap::xChannelSelector):
2362         (WebCore::FEDisplacementMap::setXChannelSelector):
2363         (WebCore::FEDisplacementMap::yChannelSelector):
2364         (WebCore::FEDisplacementMap::setYChannelSelector):
2365         (WebCore::FEDisplacementMap::scale):
2366         (WebCore::FEDisplacementMap::setScale):
2367         (WebCore::FEDisplacementMap::apply):
2368         (WebCore::FEDisplacementMap::dump):
2369         (WebCore::operator<<):
2370         (WebCore::FEDisplacementMap::externalRepresentation):
2371         * svg/graphics/filters/SVGFEDisplacementMap.h:
2372         (WebCore::):
2373         * svg/graphics/filters/SVGFEFlood.cpp:
2374         (WebCore::FEFlood::FEFlood):
2375         (WebCore::FEFlood::create):
2376         (WebCore::FEFlood::floodColor):
2377         (WebCore::FEFlood::setFloodColor):
2378         (WebCore::FEFlood::floodOpacity):
2379         (WebCore::FEFlood::setFloodOpacity):
2380         (WebCore::FEFlood::apply):
2381         (WebCore::FEFlood::dump):
2382         (WebCore::FEFlood::externalRepresentation):
2383         * svg/graphics/filters/SVGFEFlood.h:
2384         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
2385         (WebCore::FEGaussianBlur::FEGaussianBlur):
2386         (WebCore::FEGaussianBlur::create):
2387         (WebCore::FEGaussianBlur::stdDeviationX):
2388         (WebCore::FEGaussianBlur::setStdDeviationX):
2389         (WebCore::FEGaussianBlur::stdDeviationY):
2390         (WebCore::FEGaussianBlur::setStdDeviationY):
2391         (WebCore::FEGaussianBlur::apply):
2392         (WebCore::FEGaussianBlur::dump):
2393         (WebCore::FEGaussianBlur::externalRepresentation):
2394         * svg/graphics/filters/SVGFEGaussianBlur.h:
2395         * svg/graphics/filters/SVGFEImage.cpp:
2396         (WebCore::FEImage::FEImage):
2397         (WebCore::FEImage::create):
2398         (WebCore::FEImage::~FEImage):
2399         (WebCore::FEImage::cachedImage):
2400         (WebCore::FEImage::apply):
2401         (WebCore::FEImage::dump):
2402         (WebCore::FEImage::externalRepresentation):
2403         * svg/graphics/filters/SVGFEImage.h:
2404         * svg/graphics/filters/SVGFEMerge.cpp:
2405         (WebCore::FEMerge::FEMerge):
2406         (WebCore::FEMerge::create):
2407         (WebCore::FEMerge::mergeInputs):
2408         (WebCore::FEMerge::setMergeInputs):
2409         (WebCore::FEMerge::apply):
2410         (WebCore::FEMerge::dump):
2411         (WebCore::FEMerge::externalRepresentation):
2412         * svg/graphics/filters/SVGFEMerge.h:
2413         * svg/graphics/filters/SVGFEMorphology.cpp:
2414         (WebCore::FEMorphology::FEMorphology):
2415         (WebCore::FEMorphology::create):
2416         (WebCore::FEMorphology::morphologyOperator):
2417         (WebCore::FEMorphology::setMorphologyOperator):
2418         (WebCore::FEMorphology::radiusX):
2419         (WebCore::FEMorphology::setRadiusX):
2420         (WebCore::FEMorphology::radiusY):
2421         (WebCore::FEMorphology::setRadiusY):
2422         (WebCore::FEMorphology::apply):
2423         (WebCore::FEMorphology::dump):
2424         (WebCore::operator<<):
2425         (WebCore::FEMorphology::externalRepresentation):
2426         * svg/graphics/filters/SVGFEMorphology.h:
2427         (WebCore::):
2428         * svg/graphics/filters/SVGFEOffset.cpp:
2429         (WebCore::FEOffset::FEOffset):
2430         (WebCore::FEOffset::create):
2431         (WebCore::FEOffset::dx):
2432         (WebCore::FEOffset::setDx):
2433         (WebCore::FEOffset::dy):
2434         (WebCore::FEOffset::setDy):
2435         (WebCore::FEOffset::apply):
2436         (WebCore::FEOffset::dump):
2437         (WebCore::FEOffset::externalRepresentation):
2438         * svg/graphics/filters/SVGFEOffset.h:
2439         * svg/graphics/filters/SVGFESpecularLighting.cpp:
2440         (WebCore::FESpecularLighting::FESpecularLighting):
2441         (WebCore::FESpecularLighting::create):
2442         (WebCore::FESpecularLighting::~FESpecularLighting):
2443         (WebCore::FESpecularLighting::lightingColor):
2444         (WebCore::FESpecularLighting::setLightingColor):
2445         (WebCore::FESpecularLighting::surfaceScale):
2446         (WebCore::FESpecularLighting::setSurfaceScale):
2447         (WebCore::FESpecularLighting::specularConstant):
2448         (WebCore::FESpecularLighting::setSpecularConstant):
2449         (WebCore::FESpecularLighting::specularExponent):
2450         (WebCore::FESpecularLighting::setSpecularExponent):
2451         (WebCore::FESpecularLighting::kernelUnitLengthX):
2452         (WebCore::FESpecularLighting::setKernelUnitLengthX):
2453         (WebCore::FESpecularLighting::kernelUnitLengthY):
2454         (WebCore::FESpecularLighting::setKernelUnitLengthY):
2455         (WebCore::FESpecularLighting::lightSource):
2456         (WebCore::FESpecularLighting::setLightSource):
2457         (WebCore::FESpecularLighting::apply):
2458         (WebCore::FESpecularLighting::dump):
2459         (WebCore::FESpecularLighting::externalRepresentation):
2460         * svg/graphics/filters/SVGFESpecularLighting.h:
2461         * svg/graphics/filters/SVGFETile.cpp:
2462         (WebCore::FETile::FETile):
2463         (WebCore::FETile::create):
2464         (WebCore::FETile::apply):
2465         (WebCore::FETile::dump):
2466         (WebCore::FETile::externalRepresentation):
2467         * svg/graphics/filters/SVGFETile.h:
2468         * svg/graphics/filters/SVGFETurbulence.cpp:
2469         (WebCore::FETurbulence::FETurbulence):
2470         (WebCore::FETurbulence::create):
2471         (WebCore::FETurbulence::type):
2472         (WebCore::FETurbulence::setType):
2473         (WebCore::FETurbulence::baseFrequencyY):
2474         (WebCore::FETurbulence::setBaseFrequencyY):
2475         (WebCore::FETurbulence::baseFrequencyX):
2476         (WebCore::FETurbulence::setBaseFrequencyX):
2477         (WebCore::FETurbulence::seed):
2478         (WebCore::FETurbulence::setSeed):
2479         (WebCore::FETurbulence::numOctaves):
2480         (WebCore::FETurbulence::setNumOctaves):
2481         (WebCore::FETurbulence::stitchTiles):
2482         (WebCore::FETurbulence::setStitchTiles):
2483         (WebCore::FETurbulence::apply):
2484         (WebCore::FETurbulence::dump):
2485         (WebCore::operator<<):
2486         (WebCore::FETurbulence::externalRepresentation):
2487         * svg/graphics/filters/SVGFETurbulence.h:
2488         (WebCore::):
2489         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
2490         * svg/graphics/filters/cg/SVGFEDisplacementMapCg.mm:
2491         * svg/graphics/filters/cg/SVGFEFloodCg.mm:
2492         * svg/graphics/filters/cg/SVGFEGaussianBlurCg.mm:
2493         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
2494         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
2495         (WebCore::getVectorForChannel):
2496         * svg/graphics/filters/cg/SVGFEImageCg.mm:
2497         * svg/graphics/filters/cg/SVGFEMergeCg.mm:
2498         * svg/graphics/filters/cg/SVGFEOffsetCg.mm:
2499         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
2500         * svg/graphics/filters/cg/SVGFETileCg.mm:
2501
2502 2008-07-09  Mark Rowe  <mrowe@apple.com>
2503
2504         Reviewed by Geoff Garen.
2505
2506         Don't warn about deprecated functions in production builds.
2507
2508         * Configurations/Base.xcconfig:
2509         * Configurations/DebugRelease.xcconfig:
2510
2511 2008-07-09  Brady Eidson  <beidson@apple.com>
2512
2513         Reviewed by Darin
2514
2515         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
2516         has been installed in a frame tree.
2517
2518         The root of this problem was that calling init() on a new frame could end up calling arbitrary
2519         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
2520         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
2521         destroying the frame.
2522
2523         Test: fast/loader/frame-creation-removal.html
2524
2525         * loader/FrameLoader.cpp:
2526         (WebCore::FrameLoader::endIfNotLoadingMainResource):  If the frame doesn't have a page, don't close up
2527           the document and parser because they don't exist, and this frame is on its way out.
2528         (WebCore::FrameLoader::finishedParsing):  We can't rely on the refCount check to discover "am I being deleted?"
2529           because we no longer store refCounts of 0.  The new check is "do I have a FrameView?" while will always be
2530           false if the Frame is being destroyed.
2531
2532 2008-07-09  Dean Jackson  <dino@apple.com>
2533
2534         Changed to use the correct license in header comment (via Darin)
2535
2536         * css/WebKitCSSTransformValue.idl:
2537
2538 2008-07-09  Dean Jackson  <dino@apple.com>
2539
2540         Add DOM interface for WebKitCSSTransformValue.
2541         https://bugs.webkit.org/show_bug.cgi?id=19863
2542
2543         Reviewed by Hyatt.
2544
2545         * bindings/objc/DOMInternal.h:
2546         * css/WebKitCSSTransformValue.idl: Added.
2547
2548         * bindings/scripts/CodeGeneratorObjC.pm:
2549             make sure new class inherits from CSSValue not Node
2550
2551         * DerivedSources.make:
2552         * GNUmakefile.am:
2553         * WebCore.pro:
2554         * WebCore.vcproj/WebCore.vcproj:
2555         * WebCore.xcodeproj/project.pbxproj:
2556         * WebCoreSources.bkl:
2557             Adding new generated files
2558
2559 2008-07-09  Maxime Britto  <britto@apple.com>
2560
2561         Reviewed by Adele.
2562
2563         http://bugs.webkit.org/show_bug.cgi?id=14227
2564         Add the middle click panning feature to the windows release.
2565         Details on almost each method below.
2566         Manual test is included in the patch.
2567
2568         * ChangeLog:
2569         * WebCore.vcproj/WebCore.vcproj:
2570         * manual-tests/panScroll.html: Added.
2571         * manual-tests/resources/big-page.html: Added.
2572         * page/EventHandler.cpp: Added the panScroll start/stop handlers and adapted the autoscroll for both to share some functions.
2573         (WebCore::EventHandler::EventHandler): Initialize the new class members for the panScroll
2574         (WebCore::EventHandler::handleMouseDraggedEvent): Prevent the autoscroll to trigger if the panScroll is in progress
2575         (WebCore::EventHandler::handleMouseReleaseEvent): Prevent the autoscroll to stop the panScroll on mouse release
2576         (WebCore::EventHandler::handleAutoscroll): Added the specific calls for the panScroll (save mouse position, draw the panScroll icon) to the shared code
2577         (WebCore::EventHandler::autoscrollTimerFired): Specify the calls to perform for each function (autoscroll and panScroll)
2578         (WebCore::EventHandler::stopAutoscrollTimer): Specify the calls to perform for each function (autoscroll and panScroll)
2579         (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.
2580         * page/EventHandler.h:
2581         (WebCore::EventHandler::panScrollInProgress): Getter used by the sub frames's EventHandler to notice the main frame EventHandler
2582         (WebCore::EventHandler::setPanScrollInProgress): Setter used by the sub frames's EventHandler to notice the main frame EventHandler
2583         * 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
2584         * platform/gtk/ScrollViewGtk.cpp:
2585         (WebCore::ScrollView::isScrollable): Not implemented : returns true
2586         * platform/mac/ScrollViewMac.mm: Implemented because it was useful for the autoscroll feature.
2587         (WebCore::ScrollView::isScrollable):
2588         * platform/qt/ScrollViewQt.cpp:
2589         (WebCore::ScrollView::isScrollable): Not implemented : returns true
2590         * platform/win/ScrollViewWin.cpp:
2591         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added a boolean and an IntPoint to draw the icon.
2592         (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.
2593         (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  
2594         (WebCore::ScrollView::updateWindowRect): New method which performs the work that was doing the end of the old updateContents : invalidate a rect with window coordinates
2595         (WebCore::ScrollView::isScrollable): checks is the view has scrollbars
2596         (WebCore::ScrollView::printPanScrollIcon): sets the boolean and the IntPoint for the icon. Invalidate his rect and ask for repaint.
2597         (WebCore::ScrollView::removePanScrollIcon): sets the boolean to false. Invalidate his rect and ask for repaint.
2598         (WebCore::ScrollView::paint): Modified to draw the icon if needed.
2599         * platform/wx/ScrollViewWx.cpp:
2600         (WebCore::ScrollView::isScrollable): Not implemented : returns true
2601         * rendering/RenderLayer.cpp:
2602         (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.
2603         * rendering/RenderLayer.h:
2604         * rendering/RenderListBox.cpp: Adapt the panScroll to the ListBox object to scroll by lines instead of pixels
2605         (WebCore::RenderListBox::panScroll):
2606         (WebCore::RenderListBox::scrollToward):
2607         (WebCore::RenderListBox::autoscroll):
2608         * rendering/RenderListBox.h:
2609         (WebCore::RenderListBox::shouldPanScroll):
2610         * rendering/RenderObject.cpp: 
2611         (WebCore::RenderObject::shouldAutoscroll): Improved the verification to avoid triggering the autoscroll/panScroll when the root object can't scroll
2612         (WebCore::RenderObject::panScroll): Calls the RenderLayer's panScrollFromPoint() method
2613         * rendering/RenderObject.h:
2614         (WebCore::RenderObject::stopPanScroll): 
2615
2616 2008-07-09  Dean Jackson  <dino@apple.com>
2617
2618         Rename CSSTransformValue to WebKitCSSTransformValue as it is non-standard for
2619         the moment. Also, WebKitCSSTransformValue is a CSSValueList (comma sep)
2620         https://bugs.webkit.org/show_bug.cgi?id=19861
2621
2622         Reviewed by Hyatt
2623
2624         * css/CSSParser.cpp:
2625         * css/CSSStyleSelector.cpp:
2626         * css/CSSTransformValue.cpp: Removed.
2627         * css/CSSTransformValue.h: Removed.
2628         * css/CSSValueList.h:
2629         * css/WebKitCSSTransformValue.cpp: Added.
2630         * css/WebKitCSSTransformValue.h: Added.
2631
2632         * GNUmakefile.am:
2633         * WebCore.order:
2634         * WebCore.pro:
2635         * WebCore.vcproj/WebCore.vcproj:
2636         * WebCore.xcodeproj/project.pbxproj:
2637         * WebCoreSources.bkl:
2638             updated for new file names
2639         
2640
2641 2008-07-09  David Hyatt  <hyatt@apple.com>
2642
2643         Switch transitions back to a "destination" model as far as choosing which transitions should apply on a style
2644         change.  Preserve the behavior of allowing stale transitions (in the absence of property changes) to run to
2645         completion.
2646
2647         Reviewed by Dean
2648
2649         * manual-tests/transitions.html:
2650         * manual-tests/transitions2.html:
2651         * page/AnimationController.cpp:
2652         (WebCore::ImplicitAnimation::reset):
2653         (WebCore::CompositeImplicitAnimation::animate):
2654         (WebCore::AnimationControllerPrivate::get):
2655         (WebCore::AnimationController::updateImplicitAnimations):
2656
2657 2008-07-09  Michelangelo De Simone  <m.des@mac.com>
2658
2659         Reviewed by Adele.
2660
2661         Added the virtual function Node::isTextControl() in order to simplify text field and textarea checks.
2662
2663         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2664         Clean up in PseudoReadOnly and PseudoReadWrite cases removing unnecessary checks and casts in favor of the sole isTextControl() check.
2665         * dom/Node.h: Added base isTextControl().
2666         * html/HTMLInputElement.h: Added isTextControl() which wraps HTMLInputElement::isTextField().
2667         * html/HTMLTextAreaElement.h: Added isTextControl().
2668
2669 2008-07-09  Rob Buis  <buis@kde.org>
2670
2671         Reviewed by Eric.
2672
2673         https://bugs.webkit.org/show_bug.cgi?id=15431
2674         SVGRenderStyle should store pre-modified resource URIs
2675
2676         Store pre-modified resource URIs to decrease string
2677         operations during layout/rendering.
2678
2679         * css/SVGCSSStyleSelector.cpp:
2680         (WebCore::CSSStyleSelector::applySVGProperty):
2681         * rendering/RenderPath.cpp:
2682         (WebCore::RenderPath::absoluteClippedOverflowRect):
2683         (WebCore::RenderPath::drawMarkersIfNeeded):
2684         * rendering/RenderSVGContainer.cpp:
2685         (WebCore::RenderSVGContainer::selfWillPaint):
2686         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
2687         * rendering/RenderSVGImage.cpp:
2688         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
2689         * rendering/RenderSVGRoot.cpp:
2690         (WebCore::RenderSVGRoot::paint):
2691         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
2692         * rendering/RenderSVGText.cpp:
2693         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
2694         * rendering/SVGRenderSupport.cpp:
2695         (WebCore::prepareToRenderSVGContent):
2696
2697 2008-07-09  Anders Carlsson  <andersca@apple.com>
2698
2699         Reviewed by Mitz.
2700
2701         Remove an unused instance variable.
2702
2703         * loader/DocumentLoader.h:
2704
2705 2008-07-09  Dan Bernstein  <mitz@apple.com>
2706
2707         Reviewed by Anders Carlsson.
2708
2709         - remove unused #includes
2710
2711         * dom/XMLTokenizer.cpp:
2712         * html/PreloadScanner.cpp:
2713         * loader/CachedCSSStyleSheet.cpp:
2714         * loader/CachedScript.cpp:
2715         * loader/CachedXBLDocument.cpp:
2716         * loader/CachedXSLStyleSheet.cpp:
2717         * page/mac/FrameMac.mm:
2718         * xml/XSLTProcessor.cpp:
2719
2720 2008-07-08  Geoffrey Garen  <ggaren@apple.com>
2721
2722         Reviewed by Oliver Hunt.
2723         
2724         Only artificially mark JS DOM wrappers if they have custom properties.
2725         
2726         21X speedup on http://nerget.com/jstests/dom-mandelbrot.html.
2727         
2728         No, that is not a typo.
2729
2730         * bindings/js/JSDOMBinding.cpp:
2731         (WebCore::ScriptInterpreter::markDOMNodesForDocument):
2732
2733 2008-07-08  Kevin Watters  <kevinwatters@gmail.com>
2734
2735         Reviewed by Kevin Ollivier.
2736
2737         Fix to previous patch for handling mouse up events.
2738         
2739         https://bugs.webkit.org/show_bug.cgi?id=18464
2740
2741         * platform/wx/MouseEventWx.cpp:
2742         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2743
2744 2008-07-08  Dan Bernstein  <mitz@apple.com>
2745
2746         Reviewed by Brady Eidson.
2747
2748         - initialize the Archives log channel's state
2749
2750         * platform/mac/LoggingMac.mm:
2751         (WebCore::InitializeLoggingChannelsIfNecessary):
2752
2753 2008-07-08  Kevin McCullough  <kmccullough@apple.com>
2754
2755         Added manual test for the new heavy view.
2756
2757         * manual-tests/inspector/profiler-test-heavy-view.html: Added.
2758
2759 2008-07-08  Darin Adler  <darin@apple.com>
2760
2761         Reviewed by Mitz.
2762
2763         - fix <rdar://problem/6043731> REGRESSION (3-4): RedEnvelope.com
2764           looks wrong due to OpenCube QuickMenu appVersion check
2765
2766         * page/Navigator.cpp:
2767         (WebCore::shouldHideFourDot): Add dqm_loader.js as another filename.
2768
2769 2008-07-08  Dan Bernstein  <mitz@apple.com>
2770
2771         Reviewed by John Sullivan.
2772
2773         - WebCore part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
2774
2775         Added a setting, updatesWhenOffscreen(), which controls whether an
2776         offscreen web view gets marked as needing update when its contents
2777         change (the existing behavior) or not (a new behavior), in which case it
2778         will be marked as needing update just before it goes on screen. The
2779         existing behavior (updating while offscreen) remains the default.
2780
2781         * WebCore.base.exp: Added Settings::setUpdatesWhenOffscreen().
2782         * page/FrameView.cpp:
2783         (WebCore::FrameView::shouldUpdateWhenOffscreen): Added. Returns the
2784         value from settings.
2785         * page/FrameView.h:
2786         * page/Settings.cpp:
2787         (WebCore::Settings::setUpdatesWhenOffscreen): Added.
2788         * page/Settings.h:
2789         (WebCore::Settings::updatesWhenOffscreen): Added.
2790         * platform/ScrollView.h:
2791         * platform/mac/ScrollViewMac.mm:
2792         (WebCore::ScrollView::updateContents): Added code to return early and
2793         not call -setNeedsDisplayInRect: if the view is not in a visible window
2794         and the setting is not to update when offscreen.
2795
2796 2008-07-08  Simon Hausmann  <hausmann@webkit.org>
2797
2798         Fix the build with enabled SVG filters.
2799
2800         * svg/SVGFESpecularLightingElement.cpp: The last argument to
2801         ANIMATED_PROPERTY_DEFINITIONS has to be full class name, including
2802         the attr suffix.
2803
2804 2008-07-07  Sam Weinig  <sam@webkit.org>
2805
2806         Reviewed by Anders Carlsson.
2807
2808         Remove extraneous null check.
2809
2810         * dom/Node.cpp:
2811         (WebCore::Node::querySelector):
2812         (WebCore::Node::querySelectorAll):
2813
2814 2008-07-07  Sam Weinig  <sam@webkit.org>
2815
2816         Reviewed by Anders Carlsson.
2817
2818         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
2819         Use of CSS3 Namespaces syntax in Selectors API should throw an exception
2820
2821         - Throw an NAMESPACE_ERR exception if a non-null or "*" namespace is
2822           used in a selector passed to querySelector or querySelectorAll.
2823
2824         Test: fast/dom/SelectorAPI/not-supported-namespace-in-selector.html
2825
2826         * dom/Node.cpp:
2827         (WebCore::selectorNeedsNamespaceResolution):
2828         (WebCore::Node::querySelector):
2829         (WebCore::Node::querySelectorAll):
2830
2831 2008-07-07  Simon Fraser  <simon.fraser@apple.com>
2832
2833         Reviewed by Darin.
2834
2835         Fix for https://bugs.webkit.org/show_bug.cgi?id=19933
2836         nodeIterator with filter fails on documents not in a frame
2837
2838         Tests: traversal/node-iterator-009.html
2839                traversal/tree-walker-006.html
2840
2841         * bindings/js/JSNodeFilterCondition.cpp:
2842         * bindings/js/JSNodeFilterCondition.h:
2843         * bindings/js/JSNodeFilterCustom.cpp:
2844         * bindings/js/JSNodeIteratorCustom.cpp:
2845         * bindings/js/JSTreeWalkerCustom.cpp:
2846         * bindings/objc/DOM.mm:
2847         * dom/NodeFilter.cpp:
2848         * dom/NodeFilter.h:
2849         * dom/NodeFilterCondition.cpp:
2850         * dom/NodeFilterCondition.h:
2851         * dom/NodeIterator.cpp:
2852         * dom/NodeIterator.h:
2853         * dom/Traversal.cpp:
2854         * dom/Traversal.h:
2855         * dom/TreeWalker.cpp:
2856         * dom/TreeWalker.h:
2857
2858 2008-07-07  Adele Peterson  <adele@apple.com>
2859
2860         Reviewed by Dan Bernstein.
2861
2862         Fix for https://bugs.webkit.org/show_bug.cgi?id=19924
2863         <rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.
2864
2865         * page/DragController.cpp: (WebCore::DragController::concludeDrag):
2866         Check that the file control is enabled before taking dropped files.
2867
2868 2008-07-07  Adele Peterson  <adele@apple.com>
2869
2870         Reviewed by Beth.
2871
2872         Fix for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime
2873
2874         Change default volume setting to 1.0.
2875
2876         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement):
2877         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer):
2878
2879 2008-07-07  Darin Adler  <darin@apple.com>
2880
2881         Reviewed by Mark Rowe.
2882
2883         - fix <rdar://problem/6020441> REGRESSION: Layers on NWA.com render ugly
2884
2885         The old version of the OpenCube QuickMenu library used on this site still has code
2886         that detects Netscape 4 by checking appVersion to see if it has the substring "4."
2887         in it. We decided to special-case the filename of the script and tweak the appVersion
2888         for files with that name.
2889
2890         * bindings/js/ScriptController.cpp:
2891         (WebCore::ScriptController::ScriptController): Replace m_processingInlineCode with
2892         m_sourceURL. Use false instead of 0 to initialize a boolean.
2893         (WebCore::ScriptController::evaluate): Call argument sourceURL, not filename.
2894         Store current sourceURL in m_sourceURL. This fixes a mistake in the code that
2895         maintained the value of m_processingInlineCode, since the old code set it to
2896         false rather than restoring it. Renamed a local variable named sourceURL to
2897         exceptionSourceURL for clarity.
2898         (WebCore::ScriptController::processingUserGesture): Code that formerly used
2899         m_processingInlineCode to detect that it was evaluating code with no URL now
2900         uses m_sourceURL to do the same check.
2901
2902         * bindings/js/ScriptController.h: Renamed filename argument to sourceURL; it has always
2903         been a URL, not a file path. Added a public sourceURL function and m_sourceURL and
2904         removed m_processingInlineCode.
2905
2906         * page/Navigator.cpp:
2907         (WebCore::shouldHideFourDot): Added. Returns true if the currently running script has
2908         a source URL ending in "/dqm_script.js" and if the settings say we should do
2909         site-specific quirks (really JavaScript-library-specific in this case).
2910         (WebCore::Navigator::appVersion): Replace "4." with "4_" if shouldHideFourDot is true.
2911
2912 2008-07-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2913
2914         Reviewed by Geoff.
2915
2916         Bug 19907: REGRESSION(r34824-r34941): Reproducible crash trying to log in to MediaTemple.net Account Center
2917         <https://bugs.webkit.org/show_bug.cgi?id=19907>
2918
2919         Clear exceptions set on ExecStates before returning from NPAPI
2920         callbacks, in order to avoid causing problems for the next script that
2921         executes.
2922
2923         While fixing this bug, the question was raised of whether we are
2924         correctly propagating exception information back to the caller:
2925
2926         Bug 19936: Correctly propagate exception information from NPAPI callbacks
2927         <https://bugs.webkit.org/show_bug.cgi?id=19936>
2928
2929         * bridge/NP_jsobject.cpp:
2930         (_NPN_InvokeDefault):
2931         (_NPN_Invoke):
2932         (_NPN_Evaluate):
2933         (_NPN_GetProperty):
2934         (_NPN_SetProperty):
2935         (_NPN_RemoveProperty):
2936         (_NPN_HasProperty):
2937         (_NPN_HasMethod):
2938         (_NPN_Enumerate):
2939
2940 2008-07-07  Dan Bernstein  <mitz@apple.com>
2941
2942         Reviewed by Darin Adler.
2943
2944         - fix <rdar://problem/6057650> REGRESSION (r35025): Crash beneath FontCache::invalidate() when activating Safari with no windows open
2945
2946         * css/CSSFontFaceSource.cpp:
2947         (WebCore::CSSFontFaceSource::getFontData): Added a null check because
2948         docLoader() can return 0 now.
2949         * css/CSSFontSelector.cpp:
2950         (WebCore::CSSFontSelector::docLoader): Added a null check of m_document.
2951         (WebCore::CSSFontSelector::addFontFaceRule): Ditto.
2952         (WebCore::CSSFontSelector::fontLoaded): Ditto.
2953         (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto.
2954         (WebCore::fontDataForGenericFamily): Added a null check of document.
2955         * css/CSSFontSelector.h:
2956         (WebCore::CSSFontSelector::clearDocument): Added.
2957         * css/CSSStyleSelector.cpp:
2958         (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a call to
2959         CSSFontSelector::clearDocument(). When the style selector is destroyed,
2960         there is no guarantee that the document will continue to exist.
2961
2962 2008-07-07  Julien Chaffraix  <jchaffraix@webkit.org>
2963
2964         Not reviewed.
2965
2966         No svg build fix.
2967
2968         * DerivedSources.make: Add JSSVGElementWrapperFactory.cpp target.
2969         * svg/animation/SMILTimeContainer.cpp: Add ENABLE(SVG) guard.
2970
2971 2008-07-07  Michelangelo De Simone  <m.des@mac.com>
2972
2973         Reviewed by Adele.
2974
2975         Support for CSS3 :read-only and :read-write pseudoclasses for readonly text controls.
2976
2977         URL: http://www.w3.org/TR/web-forms-2/#relation
2978
2979         Tests: fast/css/readonly-pseudoclass-opera-001.html
2980                fast/css/readonly-pseudoclass-opera-002.html
2981                fast/css/readonly-pseudoclass-opera-003.html
2982                fast/css/readonly-pseudoclass-opera-004.html
2983                fast/css/readonly-pseudoclass-opera-005.html
2984
2985         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
2986         Added "read-only" and "read-write" values for PseudoType extraction.
2987         * css/CSSSelector.h: (WebCore::CSSSelector::):
2988         Added PseudoReadOnly and PseudoReadWrite entries in PseudoType enum.
2989         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2990         Checks to determine whether to match :read-only and :read-write pseudoclasses on
2991         text controls.
2992
2993 2008-07-07  Sam Weinig  <sam@webkit.org>
2994
2995         Reviewed by Geoffrey Garen.
2996
2997         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
2998         querySelectorAll should throw an exception if a NSResolver is passed in.
2999
3000         - Throw an NOT_SUPPORTED_ERR if a non-null or undefined parameter is passed
3001           as the second argument to querySelector or querySelectorAll.
3002
3003         Test: fast/dom/SelectorAPI/not-supported-NSResolver.html
3004
3005         * bindings/js/JSDocumentCustom.cpp:
3006         (WebCore::JSDocument::querySelector):
3007         (WebCore::JSDocument::querySelectorAll):
3008         * bindings/js/JSElementCustom.cpp:
3009         (WebCore::JSElement::querySelector):
3010         (WebCore::JSElement::querySelectorAll):
3011         * dom/Document.idl:
3012         * dom/Element.idl:
3013
3014 2008-07-07  Brady Eidson  <beidson@apple.com>
3015
3016         Reviewed by Mitz and Geoff
3017
3018         Test: fast/loader/empty-ref-versus-no-ref.html
3019
3020         Fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>
3021         "all DOM operations stop working when location.hash set to '#'"
3022
3023         The underlying problem is that KURL didn't really know the difference between "empty ref"
3024         and "no ref at all" when changing the ref.  So changing to the empty ref in JS ended up 
3025         affecting removal of the ref, which ended up causing an infinite load load, also killing
3026         javascript.
3027
3028         * platform/KURL.cpp:
3029         (WebCore::KURL::setRef):  Changed "isEmpty()" to "isNull()", since NULL has the special 
3030           meaning of "no ref at all" while empty means "empty ref"
3031
3032 2008-07-07  Kevin McCullough  <kmccullough@apple.com>
3033
3034         Reviewed by Darin.
3035
3036         Because profiler.h no longer #includes profile.h we need to explicitly
3037         include it in console.cpp.
3038
3039         * page/Console.cpp:
3040
3041 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
3042
3043         Not reviewed. Build fix.
3044
3045         Fix --svg-filters build (affects Qt build, mac/win don't have it on by default)
3046
3047         * svg/SVGFEColorMatrixElement.cpp:
3048         * svg/SVGFEDiffuseLightingElement.cpp:
3049         * svg/SVGFEImageElement.cpp:
3050         * svg/SVGFELightElement.cpp:
3051         * svg/SVGFESpecularLightingElement.cpp:
3052
3053 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
3054
3055         Reviewed by Antti.
3056
3057         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
3058
3059         Revised version of the patch, not using pointer-to-member function callbacks anymore - after discussion with Adam Roben.
3060         Remove unneccessary parameters of all macros.
3061
3062         SVG Errata states: "All SVG DOM objects that directly correspond to an
3063         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
3064         means that any changes made to the attribute are immediately reflected in the
3065         corresponding SVG DOM object." (see linked URL on bug report)
3066
3067         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
3068         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
3069
3070         Add a new synchronization layer to handle SVG DOM -> XML changes.
3071
3072         Added test: svg/custom/svg-xml-dom-sync.html
3073         Fixed test: svg/hixie/dynamic/005-broken.xml (renamed to 005.xml)
3074
3075         * dom/Element.cpp:
3076         (WebCore::Element::Element): Initialize the two new bits.
3077         (WebCore::Element::attributes): Add hooks to call into SVG attribute synchronization code, wrapped in ENABLE(SVG) blocks.
3078         (WebCore::Element::getAttribute): Ditto.
3079         (WebCore::Element::hasAttributes): Ditto.
3080         * dom/Element.h: Add two bits: m_areSVGAttributesValid/m_synchronizingSVGAttributes, to track synchronization status.
3081         (WebCore::Element::updateAnimatedSVGAttribute): New virtual function, handling the synronication, similar to updateStyleAttribute.
3082         * dom/NamedAttrMap.h: Make addAttribute/removeAttribute protected, from use within the ANIMATED_* macros.
3083         * svg/SVGAElement.cpp:
3084         * svg/SVGAElement.h:
3085         * svg/SVGAnimatedTemplate.h:
3086         (WebCore::lookupOrCreateWrapper): Take new AnimatedPropertySynchronizer callback as parameter, and associate it with the wrappers.
3087         * svg/SVGCircleElement.cpp:
3088         (WebCore::SVGCircleElement::SVGCircleElement):
3089         * svg/SVGCircleElement.h:
3090         * svg/SVGClipPathElement.cpp:
3091         * svg/SVGClipPathElement.h:
3092         * svg/SVGComponentTransferFunctionElement.cpp:
3093         * svg/SVGComponentTransferFunctionElement.h:
3094         * svg/SVGCursorElement.cpp:
3095         (WebCore::SVGCursorElement::SVGCursorElement):
3096         * svg/SVGCursorElement.h:
3097         * svg/SVGElement.cpp:
3098         (WebCore::SVGElement::updateAnimatedSVGAttribute): Override virtual function from Element, to handle SVG<->XML DOM synchronization.
3099         (WebCore::SVGElement::setSynchronizedSVGAttributes):
3100         * svg/SVGElement.h:
3101         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
3102         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
3103         (WebCore::SVGElement::addSVGPropertySynchronizer):
3104         * svg/SVGEllipseElement.cpp:
3105         * svg/SVGEllipseElement.h:
3106         * svg/SVGExternalResourcesRequired.cpp:
3107         * svg/SVGExternalResourcesRequired.h:
3108         * svg/SVGFEBlendElement.cpp:
3109         * svg/SVGFEBlendElement.h:
3110         * svg/SVGFEColorMatrixElement.cpp:
3111         * svg/SVGFEColorMatrixElement.h:
3112         * svg/SVGFEComponentTransferElement.cpp:
3113         * svg/SVGFEComponentTransferElement.h:
3114         * svg/SVGFECompositeElement.cpp:
3115         * svg/SVGFECompositeElement.h:
3116         * svg/SVGFEDiffuseLightingElement.cpp:
3117         * svg/SVGFEDiffuseLightingElement.h:
3118         * svg/SVGFEDisplacementMapElement.cpp:
3119         * svg/SVGFEDisplacementMapElement.h:
3120         * svg/SVGFEGaussianBlurElement.cpp:
3121         * svg/SVGFEGaussianBlurElement.h:
3122         * svg/SVGFEImageElement.cpp:
3123         * svg/SVGFEImageElement.h:
3124         * svg/SVGFELightElement.cpp:
3125         * svg/SVGFELightElement.h:
3126         * svg/SVGFEMergeNodeElement.cpp:
3127         * svg/SVGFEMergeNodeElement.h:
3128         * svg/SVGFEOffsetElement.cpp:
3129         * svg/SVGFEOffsetElement.h:
3130         * svg/SVGFESpecularLightingElement.cpp:
3131         * svg/SVGFESpecularLightingElement.h:
3132         * svg/SVGFETileElement.cpp:
3133         * svg/SVGFETileElement.h:
3134         * svg/SVGFETurbulenceElement.cpp:
3135         * svg/SVGFETurbulenceElement.h:
3136         * svg/SVGFilterElement.cpp:
3137         * svg/SVGFilterElement.h:
3138         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3139         * svg/SVGFilterPrimitiveStandardAttributes.h:
3140         * svg/SVGFitToViewBox.cpp:
3141         * svg/SVGFitToViewBox.h:
3142         * svg/SVGForeignObjectElement.cpp:
3143         * svg/SVGForeignObjectElement.h:
3144         * svg/SVGGradientElement.cpp:
3145         * svg/SVGGradientElement.h:
3146         * svg/SVGImageElement.cpp:
3147         * svg/SVGImageElement.h:
3148         * svg/SVGLineElement.cpp:
3149         * svg/SVGLineElement.h:
3150         * svg/SVGLinearGradientElement.cpp:
3151         * svg/SVGLinearGradientElement.h:
3152         * svg/SVGMarkerElement.cpp:
3153         * svg/SVGMarkerElement.h:
3154         * svg/SVGMaskElement.cpp:
3155         * svg/SVGMaskElement.h:
3156         * svg/SVGPathElement.cpp:
3157         * svg/SVGPathElement.h:
3158         * svg/SVGPatternElement.cpp:
3159         * svg/SVGPatternElement.h:
3160         * svg/SVGRadialGradientElement.cpp:
3161         * svg/SVGRadialGradientElement.h:
3162         * svg/SVGRectElement.cpp:
3163         * svg/SVGRectElement.h:
3164         * svg/SVGSVGElement.cpp:
3165         * svg/SVGSVGElement.h:
3166         * svg/SVGScriptElement.h:
3167         * svg/SVGStopElement.cpp:
3168         * svg/SVGStopElement.h:
3169         * svg/SVGStyledElement.cpp:
3170         * svg/SVGStyledElement.h:
3171         * svg/SVGStyledTransformableElement.cpp:
3172         * svg/SVGStyledTransformableElement.h:
3173         * svg/SVGSymbolElement.h:
3174         * svg/SVGTextContentElement.cpp:
3175         * svg/SVGTextContentElement.h:
3176         * svg/SVGTextElement.cpp:
3177         * svg/SVGTextElement.h:
3178         * svg/SVGTextPathElement.cpp:
3179         * svg/SVGTextPathElement.h:
3180         * svg/SVGTextPositioningElement.cpp:
3181         * svg/SVGTextPositioningElement.h:
3182         * svg/SVGURIReference.cpp:
3183         * svg/SVGURIReference.h:
3184         * svg/SVGUseElement.cpp:
3185         * svg/SVGUseElement.h:
3186         * svg/SVGViewElement.h:
3187         * svg/SynchronizableTypeWrapper.h: Added.
3188
3189 2008-07-07  Nikolas Zimmermann  <zimmermann@kde.org>
3190
3191         Reviewed by Oliver.
3192
3193         Working on: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
3194
3195         Splitting up large patch in small chunk: Land valueAsString() implementation on it's own.
3196
3197         Added valueAsString() conversion for all SVG primitive types, needed by the SVG<->XML synchronization layer.
3198         Unify "null value for a SVG animated type" concept, which was implemented in SVGDocumentExtensions before,
3199         in SVGAnimatedTemplate.
3200
3201         * svg/SVGAnimatedTemplate.h:
3202         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
3203         (WebCore::lookupOrCreateWrapper):
3204         (WebCore::SVGAnimatedTypeValue::null):
3205         (WebCore::SVGAnimatedTypeValue::toString):
3206         (WebCore::):
3207         * svg/SVGDocumentExtensions.h:
3208         (WebCore::SVGDocumentExtensions::baseValue):
3209         * svg/SVGLengthList.cpp:
3210         (WebCore::SVGLengthList::valueAsString):
3211         * svg/SVGLengthList.h:
3212         * svg/SVGNumberList.cpp:
3213         (WebCore::SVGNumberList::valueAsString):
3214         * svg/SVGNumberList.h:
3215         * svg/SVGPreserveAspectRatio.cpp:
3216         (WebCore::SVGPreserveAspectRatio::valueAsString):
3217         * svg/SVGPreserveAspectRatio.h:
3218         * svg/SVGTransformList.cpp:
3219         (SVGTransformList::valueAsString):
3220         * svg/SVGTransformList.h:
3221
3222 2008-07-06  Sam Weinig  <sam@webkit.org>
3223
3224         Reviewed by Dan Bernstein.
3225
3226         Rename "Access-Contol-Origin" to "Origin" to match the latest
3227         Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)
3228
3229         * xml/XMLHttpRequest.cpp:
3230         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
3231         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
3232         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
3233
3234 2008-07-06  Dan Bernstein  <mitz@apple.com>
3235
3236         - try to fix the Windows build
3237
3238         * WebCore.vcproj/WebCore.vcproj:
3239
3240 2008-07-06  Dan Bernstein  <mitz@apple.com>
3241
3242         - add missing brace
3243
3244         * platform/graphics/qt/FontCacheQt.cpp:
3245
3246 2008-07-06  Dan Bernstein  <mitz@apple.com>
3247
3248         - try to fix the Qt build
3249
3250         * platform/graphics/qt/FontCacheQt.cpp:
3251         (WebCore::FontCache::addClient):
3252         (WebCore::FontCache::removeClient):
3253
3254 2008-07-06  Sam Weinig  <sam@webkit.org>
3255
3256         Reviewed by Cameron Zwarich.
3257
3258         Add #include for kjs/protect.h.
3259
3260         * xml/XMLHttpRequest.cpp:
3261         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
3262
3263 2008-07-06  David Kilzer  <ddkilzer@apple.com>
3264
3265         Save a few more bits in RenderStyle
3266
3267         Reviewed by Darin.
3268
3269         No test cases added since there is no change in behavior.
3270
3271         This changes WebCore::StyleMarqueeData from using 6 bits to 5 bits,
3272         WebCore::RenderStyle::inherited_flags from using 36 bits to 35 bits,
3273         and WebCore::RenderStyle::noninherited_flags from using 49 bits to
3274         47 bits.
3275
3276         * rendering/style/RenderStyle.h:
3277         (WebCore::StyleMarqueeData::behavior): Reduce from 3 bits to 2 bits
3278         since EMarqueeBehavior has 4 items.
3279         (WebCore::RenderStyle::inherited_flags._text_align): Reduce from
3280         4 bits to 3 bits since ETextAlign has 8 items.
3281         (WebCore::RenderStyle::noninherited_flags._overflowX): Reduce from
3282         4 bits to 3 bits since EOverflow has 6 items.
3283         (WebCore::RenderStyle::noninherited_flags._overflowY): Ditto.
3284
3285 2008-07-06  Dan Bernstein  <mitz@apple.com>
3286
3287         Reviewed by Darin Adler.
3288
3289         - fix <rdar://problem/5735163> WebCore caching makes text look wrong after font changes; need to respond appropriately instead
3290
3291         * css/CSSFontSelector.cpp:
3292         (WebCore::CSSFontSelector::CSSFontSelector): Added a call to
3293         FontCache::addClient().
3294         (WebCore::CSSFontSelector::~CSSFontSelector): Added a call to
3295         FontCache::removeClient().
3296         (WebCore::CSSFontSelector::fontCacheInvalidated): Added. Called by the
3297         font cache when it is invalidated, and ensures that the document is
3298         updated.
3299
3300         * css/CSSFontSelector.h:
3301
3302         * platform/graphics/Font.cpp:
3303         (WebCore::Font::operator==): Added code to compare the font fallback
3304         lists' font cache generations.
3305
3306         * platform/graphics/FontCache.cpp:
3307         (WebCore::FontCache::addClient): Added.
3308         (WebCore::FontCache::removeClient): Added.
3309         (WebCore::FontCache::generation): Added.
3310         (WebCore::FontCache::invalidate): Added. Deletes the platform data
3311         cache, increments the generation counter, and notifies all clients.
3312
3313         * platform/graphics/FontCache.h:
3314
3315         * platform/graphics/FontFallbackList.cpp:
3316         (WebCore::FontFallbackList::FontFallbackList): Added initialization of
3317         m_generation.
3318         (WebCore::FontFallbackList::invalidate): Added code to reset
3319         m_generation.
3320         (WebCore::FontFallbackList::fontDataAt): Added an assertion.
3321         (WebCore::FontFallbackList::fontDataForCharacters): Ditto.
3322         (WebCore::FontFallbackList::setPlatformFont): Ditto.
3323
3324         * platform/graphics/FontFallbackList.h:
3325         (WebCore::FontFallbackList::generation): Added. Returns the font cache
3326         generation used to populate the list.
3327
3328         * platform/graphics/FontSelector.h:
3329         (WebCore::FontSelector::fontCacheInvalidated): Added.
3330
3331         * platform/graphics/mac/FontCacheMac.mm:
3332         (WebCore::fontCacheATSNotificationCallback): Added. Calls
3333         FontCache::invalidate().
3334         (WebCore::FontCache::platformInit): Added code to register for ATS
3335         notifications.
3336
3337         * svg/SVGFontFaceElement.cpp: Removed unneeded #inlcudes.
3338
3339 2008-07-05  Sam Weinig  <sam@webkit.org>
3340
3341         Rubber-stamped by Cameron Zwarich.
3342
3343         Rename list.h/cpp to ArgList.h/cpp.
3344
3345         * ForwardingHeaders/kjs/ArgList.h: Copied from WebCore/ForwardingHeaders/kjs/list.h.
3346         * ForwardingHeaders/kjs/list.h: Removed.
3347         * WebCore.vcproj/WebCore.vcproj:
3348         * bridge/qt/qt_instance.cpp:
3349         * page/Console.cpp:
3350
3351 2008-07-05  Sam Weinig  <sam@webkit.org>
3352
3353         Rubber-stamped by Cameron Zwarich.
3354
3355         Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and 
3356         the functions on the global object out of JSFunction.h/cpp.
3357
3358         * ForwardingHeaders/kjs/PrototypeFunction.h: Added.
3359         * bindings/js/JSDOMBinding.cpp:
3360
3361 2008-07-05  Dan Bernstein  <mitz@apple.com>
3362
3363         Rubber-stamped by Sam Weinig.
3364
3365         - rename BidiIterator and BidiState
3366
3367         Renamed BidiIterator to InlineIterator and BidiState
3368         to InlineBidiResolver. Renamed variables of type InlineBidiResolver{*,&}
3369         to "resolver".
3370
3371         * rendering/RenderBlock.h:
3372         * rendering/RootInlineBox.h:
3373         * rendering/bidi.cpp:
3374         (WebCore::InlineIterator::InlineIterator):
3375         (WebCore::operator==):
3376         (WebCore::operator!=):
3377         (WebCore::bidiNext):
3378         (WebCore::bidiFirst):
3379         (WebCore::InlineIterator::increment):
3380         (WebCore::InlineBidiResolver::increment):
3381         (WebCore::InlineIterator::atEnd):
3382         (WebCore::InlineIterator::current):
3383         (WebCore::InlineIterator::direction):
3384         (WebCore::chopMidpointsAt):
3385         (WebCore::checkMidpoints):
3386         (WebCore::addMidpoint):
3387         (WebCore::appendRunsForObject):
3388         (WebCore::InlineBidiResolver::appendRun):
3389         (WebCore::RenderBlock::bidiReorderLine):
3390         (WebCore::buildCompactRuns):
3391         (WebCore::RenderBlock::layoutInlineChildren):
3392         (WebCore::RenderBlock::determineStartPosition):
3393         (WebCore::RenderBlock::determineEndPosition):
3394         (WebCore::RenderBlock::matchedEndLine):
3395         (WebCore::skipNonBreakingSpace):
3396         (WebCore::requiresLineBox):
3397         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
3398         (WebCore::RenderBlock::skipWhitespace):
3399         (WebCore::shouldSkipWhitespaceAfterStartObject):
3400         (WebCore::RenderBlock::findNextLineBreak):
3401
3402 2008-07-05  Jan Michael Alonzo  <jmalonzo@webkit.org>
3403
3404         Rubber-stamped by Oliver Hunt
3405
3406         Coding style fix
3407
3408         * html/CanvasRenderingContext2D.cpp: Indentation fix
3409
3410 2008-07-04  Oliver Hunt  <oliver@apple.com>
3411
3412         Fix windows build
3413
3414         * WebCore.vcproj/WebCore.vcproj:
3415
3416 2008-07-04  Sam Weinig  <sam@webkit.org>
3417
3418         Fix Qt build.
3419
3420         * bridge/qt/qt_instance.cpp:
3421
3422 2008-07-04  Sam Weinig  <sam@webkit.org>
3423
3424         Rubber-stamped by Dan Bernstein.
3425
3426         Split Error and GetterSetter out of JSObject.h.
3427
3428         * ForwardingHeaders/kjs/Error.h: Added.
3429         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3430         * bindings/js/JSClipboardCustom.cpp:
3431         * bindings/js/JSDOMWindowBase.cpp:
3432         * bindings/js/JSEventTargetBase.cpp:
3433         * bindings/js/JSHTMLDocumentCustom.cpp:
3434         * bindings/js/JSXMLHttpRequestCustom.cpp:
3435         * bindings/scripts/CodeGeneratorJS.pm:
3436         * bridge/NP_jsobject.cpp:
3437         * bridge/jni/jni_instance.cpp:
3438         * bridge/jni/jni_runtime.cpp:
3439         * bridge/objc/objc_instance.mm:
3440         * bridge/objc/objc_runtime.mm:
3441         * bridge/objc/objc_utility.h:
3442         * bridge/runtime_array.cpp:
3443         * bridge/runtime_method.cpp:
3444         * bridge/runtime_object.cpp:
3445
3446 2008-07-04  David D. Kilzer  <ddkilzer@webkit.org>
3447
3448         Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives
3449
3450         <https://bugs.webkit.org/show_bug.cgi?id=15290>
3451         <rdar://problem/5509173>
3452
3453         Reviewed by Dan Bernstein.
3454
3455         Tests: webarchive/archive-empty-frame-dom.html
3456                webarchive/doctype.html
3457
3458         * editing/markup.cpp:
3459         (WebCore::createFullMarkup): If the Node is a Document or a
3460         DocumentType, don't prepend the <!DOCTYPE> tag since that will
3461         cause it to be duplicated.
3462         * loader/archive/cf/LegacyWebArchive.cpp:
3463         (WebCore::LegacyWebArchive::create): Ditto.
3464
3465 2008-07-04  Jan Michael Alonzo  <jmalonzo@webkit.org>
3466
3467         Gtk build fix
3468
3469         * GNUmakefile.am:
3470
3471 2008-07-04  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
3472
3473         Reviewed by Eric Seidel.
3474
3475         Bring our implementation of the Netscape plugin API closer to current
3476         code style guidelines.
3477
3478         * bridge/NP_jsobject.cpp:
3479         (getListFromVariantArgs):
3480         (jsAllocate):
3481         (jsDeallocate):
3482         (_NPN_CreateScriptObject):
3483         (_NPN_CreateNoScriptObject):
3484         (_NPN_InvokeDefault):
3485         (_NPN_Invoke):
3486         (_NPN_Evaluate):
3487         (_NPN_GetProperty):
3488         (_NPN_SetProperty):
3489         (_NPN_RemoveProperty):
3490         (_NPN_HasProperty):
3491         (_NPN_HasMethod):
3492         (_NPN_Enumerate):
3493         * bridge/npruntime_impl.h:
3494
3495 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3496
3497         Fix the Qt/Windows build.
3498
3499         * WebCore.pro: Moved PluginMainThreadScheduler.cpp to the main
3500         sources, so that it is always compiled.
3501         * platform/qt/CursorQt.cpp: #undef CopyCursor, as it's defined by some
3502         Windows header.
3503         * platform/qt/KeyboardCodes.h: Don't re-define some of the keycodes
3504         that are defined by Windows already.
3505         * platform/qt/TemporaryLinkStubs.cpp: Removed the PluginDatabase stubs
3506         that are now platform-independent in plugin/PluginDatabase.cpp.
3507
3508 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3509
3510         Fix the Mac build for real, don't define listDirectory() twice.
3511
3512         * platform/mac/FileSystemMac.mm:
3513
3514 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3515
3516         Prospective Mac build fix.
3517
3518         * platform/mac/FileSystemMac.mm: Include NotImplemented.h.
3519         * platform/posix/FileSystemPOSIX.cpp: Ditto.
3520
3521 2008-07-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
3522
3523         Reviewed by Simon.
3524
3525         Move duplicated code from each PluginDatabaseXX-implementation
3526         to PluginDabase.cpp -- ifdefed based on the XP_PLATFORM we are
3527         compiling plugins for.
3528
3529         This make the code cleaner and we can share common patterns.
3530         The only implementation left which is specific is the Win
3531         implementation (also used by QtWebKit/Win), but we might
3532         want to move that too.
3533
3534         * GNUmakefile.am: Removed PluginDatabaseGtk.cpp from the build.
3535         * WebCore.pro: Removed PluginDatabaseQt.cpp from the build.
3536         * plugins/PluginDatabase.cpp:
3537         (WebCore::PluginDatabase::defaultPluginDirectories):
3538         (WebCore::PluginDatabase::isPreferredPluginDirectory):
3539         (WebCore::PluginDatabase::getPluginPathsInDirectories):
3540         * plugins/gtk/PluginDatabaseGtk.cpp: Removed.
3541         * plugins/qt/PluginDatabaseQt.cpp: Removed.
3542         * plugins/wx/PluginDatabaseWx.cpp: Removed.
3543         * webcore-wx.bkl: Removed PluginDatabaseWx.cpp from the build.
3544
3545 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3546
3547         Fix the Wx build.
3548
3549         * WebCoreSources.bkl: Add plugins/PluginMainThreadScheduler.cpp to the
3550         build.
3551         * page/FocusController.cpp:
3552         (WebCore::FocusController::setActive): Extend MAC #ifdef to WX as
3553         layoutIfNeededRecursive does not exist for the Wx port.
3554
3555 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3556
3557         Fix the Gtk build, adapt to renamed files.
3558
3559         * GNUmakefile.am:
3560
3561 2008-07-04  Simon Hausmann  <hausmann@webkit.org>
3562
3563         Fix the Qt build, adapt to renamed files.
3564
3565         * WebCore.pro:
3566
3567 2008-07-03  Oliver Hunt  <oliver@apple.com>
3568
3569         Reviewed by Eric Seidel.
3570
3571         Move filter implementations to platform directory.
3572
3573         * WebCore.vcproj/WebCore.vcproj
3574         * WebCore.xcodeproj/project.pbxproj:
3575         * svg/SVGComponentTransferFunctionElement.h:
3576         * svg/SVGFEBlendElement.h:
3577         * svg/SVGFEColorMatrixElement.h:
3578         * svg/SVGFEComponentTransferElement.h:
3579         * svg/SVGFECompositeElement.h:
3580         * platform/graphics/filters/FEBlend.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.cpp.
3581         * platform/graphics/filters/FEBlend.h: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.h.
3582         * platform/graphics/filters/FEColorMatrix.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.cpp.
3583         * platform/graphics/filters/FEColorMatrix.h: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.h.
3584         * platform/graphics/filters/FEComponentTransfer.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.cpp.
3585         * platform/graphics/filters/FEComponentTransfer.h: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.h.
3586         * platform/graphics/filters/FEComposite.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.cpp.
3587         * platform/graphics/filters/FEComposite.h: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.h.
3588
3589 2008-07-03  Alex Mathews  <possessedpenguinbob@gmail.com>
3590
3591         Reviewed by Oliver Hunt.
3592
3593         Bug 19835: WebKit needs cross-platform filter system
3594         <https://bugs.webkit.org/show_bug.cgi?id=19835>