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