2008-08-02 Wouter Bolsterlee <wbolster@svn.gnome.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2008-08-02  Wouter Bolsterlee  <wbolster@svn.gnome.org>
2
3         Reviewed by Eric Seidel.
4
5         * plugins/gtk/gtk2xtbin.h:
6
7         https://bugs.webkit.org/show_bug.cgi?id=20034
8         Fix malformed Vim modeline.
9
10 2008-08-01  Dan Bernstein  <mitz@apple.com>
11
12         Reviewed by Dave Hyatt.
13
14         - tweak a comment
15
16         * platform/graphics/cg/ImageCG.cpp:
17         (WebCore::BitmapImage::draw):
18
19 2008-08-01  Jan Michael Alonzo  <jmalonzo@webkit.org>
20
21         * ChangeLog: Fix date of previous commit (r35520)
22
23 2008-08-01  Marco Barisione  <marco.barisione@collabora.co.uk>
24
25         Reviewed by Eric Seidel.
26
27         https://bugs.webkit.org/show_bug.cgi?id=19603
28         [SOUP] segfault when closing a file using gio
29
30         Call client->didFinishLoading() only after releasing all the gio
31         resources.
32
33         * platform/network/soup/ResourceHandleSoup.cpp:
34         (WebCore::closeCallback):
35         (WebCore::readCallback):
36
37 2008-08-01  Anders Carlsson  <andersca@apple.com>
38
39         Reviewed by Jon.
40
41         <rdar://problem/6120206>
42         Crash when plug-in queries for NPPVpluginWantsAllNetworkStreams.
43         
44         Pass in a pointer to a void* to make sure that plug-ins don't overwrite the stack.
45         
46         * plugins/PluginStream.cpp:
47         (WebCore::PluginStream::wantsAllStreams):
48
49 2008-08-01  Robin Dunn  <robin@alldunn.com>
50
51         Reviewed by Eric Seidel.
52
53         Native rendering implementations for form elements in the wx port.
54         
55         https://bugs.webkit.org/show_bug.cgi?id=19069
56
57         * platform/wx/RenderThemeWx.cpp:
58         (WebCore::RenderThemeWx::adjustRepaintRect):
59         (WebCore::RenderThemeWx::paintButton):
60         (WebCore::RenderThemeWx::paintTextField):
61         (WebCore::RenderThemeWx::minimumMenuListSize):
62         (WebCore::RenderThemeWx::adjustMenuListStyle):
63         (WebCore::RenderThemeWx::paintMenuList):
64         (WebCore::RenderThemeWx::adjustMenuListButtonStyle):
65         (WebCore::RenderThemeWx::paintMenuListButton):
66         (WebCore::RenderThemeWx::popupInternalPaddingLeft):
67         (WebCore::RenderThemeWx::popupInternalPaddingRight):
68         (WebCore::RenderThemeWx::popupInternalPaddingTop):
69         (WebCore::RenderThemeWx::popupInternalPaddingBottom):
70
71 2008-07-30  David Hyatt  <hyatt@apple.com>
72
73         Improvements to selection drawing.
74
75         Clip out floating and positioned objects when drawing selection so
76         that there is no "double painting" of selection when the selection spans both the space behind the positioned/floating
77         object and the positioned/floating object itself.  Improves most Web pages.
78
79         Do not paint left/right selection gaps if the object's edge is already outside the boundary (at a negative
80         position).  Significantly improves the look of selections on digg.com, since it uses giant negative text-indent.
81
82         Reviewed by Dan
83
84         Covered by existing selection pixel tests.
85
86         * rendering/RenderBlock.cpp:
87         (WebCore::RenderBlock::isSelectionRoot):
88         (WebCore::RenderBlock::paintSelection):
89         (WebCore::clipOutPositionedObjects):
90         (WebCore::RenderBlock::fillSelectionGaps):
91         (WebCore::RenderBlock::fillLeftSelectionGap):
92         (WebCore::RenderBlock::fillRightSelectionGap):
93
94 2008-08-01  Timothy Hatcher  <timothy@apple.com>
95
96         Adds the ability to disable individual properties of a CSS rule.
97         When hovering over a rule, checkboxes show up to the right of all
98         properties and toggling a checkbox disables/enables the property.
99         Behind the scenes the property is removed from the rule when disabled,
100         but still remains in the list and in the computed style. When disabled
101         the property has a line through it, and is faded in computed style.
102
103         <rdar://problem/5712828> Support disabling individual CSS properties
104         https://bugs.webkit.org/show_bug.cgi?id=14377
105
106         Reviewed by Adam Roben.
107
108         * page/inspector/StylesSidebarPane.js:
109         (WebInspector.StylesSidebarPane.prototype.update): Include the
110         inline style when it also has disabled properties. Call
111         deleteDisabledProperty for any property that is in the style,
112         since it might have been added back by the page. Remember all
113         disabled properties so they show up in computed style.
114         (deleteDisabledProperty): Helper function to delete all the
115         right properties that track disabled properties.
116         (WebInspector.StylePropertiesSection): Add the computed-style
117         class when  the section is Computed Style.
118         (WebInspector.StylePropertiesSection.prototype.onpopulate):
119         Include disabled properties.
120         (WebInspector.StylePropertyTreeElement): Added a disabled argument.
121         (WebInspector.StylePropertyTreeElement.prototype.get/set disabled):
122         Sets the _disabled property and calls updateState.
123         (WebInspector.StylePropertyTreeElement.prototype.get priority):
124         Return the priority of enabled or disabled properties.
125         (WebInspector.StylePropertyTreeElement.prototype.get value):
126         Return the value of enabled or disabled properties.
127         (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Use the
128         priority and value getter. Append the checkbox for root elements of
129         an editable section.
130         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
131         Add or remove properties from the rule and remember removed ones
132         by adding three objects to the style: __disabledProperties,
133         __disabledPropertyValues and __disabledPropertyPriorities.
134         The __disabledProperties object will include all longhand
135         properties of a shorthand for use by Computed Style.
136         (WebInspector.StylePropertyTreeElement.prototype.updateState):
137         Use the value getter. Update the disabled state.
138         * page/inspector/inspector.css:
139         * page/inspector/utilities.js:
140         (Object.hasProperties): Added. Helper to test if an object
141         has any properties.
142
143 2008-07-31  Anders Carlsson  <andersca@apple.com>
144
145         Reviewed by Darin.
146
147         <rdar://problem/5949410>
148         Add the ability to transfer a given application cache to a new database.
149         
150         * WebCore.base.exp:
151         Export ApplicationCacheStorage::storeCopyOfCache.
152         
153         * loader/appcache/ApplicationCache.cpp:
154         (WebCore::ApplicationCache::~ApplicationCache):
155         Don't call cacheDestroyed for our special "copy" groups.
156         
157         * loader/appcache/ApplicationCacheGroup.cpp:
158         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
159         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
160         Add a "copy" flag to the ApplicationCacheGroup constructor. A "copied" group is special
161         and can only be stored to disk.
162         
163         * loader/appcache/ApplicationCacheGroup.h:
164         (WebCore::ApplicationCacheGroup::isCopy):
165         New getter.
166         
167         * loader/appcache/ApplicationCacheStorage.cpp:
168         (WebCore::ApplicationCacheStorage::store):
169         Make sure to set the storageID when storing an application resource.
170         
171         (WebCore::ApplicationCacheStorage::storeNewestCache):
172         Change this to return true/false depending on whether storing the cache succeeded or not.
173         
174         (WebCore::ApplicationCacheStorage::storeCopyOfCache):
175         New method which stores a given cache in a new storage (database file).
176         
177         * loader/appcache/ApplicationCacheStorage.h:
178         Add new methods.
179
180 2008-07-31  John Sullivan  <sullivan@apple.com>
181
182         WebCore part of <rdar://problem/6116650> Text-only zoom setting should be stored in WebKit prefs
183
184         Reviewed by Hyatt
185
186         * WebCore.base.exp:
187         export symbol for WebCoreSettings::setZoomsTextOnly()
188         
189         * page/Frame.cpp:
190         (WebCore::Frame::isZoomFactorTextOnly):
191         use value from Settings instead of data member
192         (WebCore::Frame::shouldApplyTextZoom):
193         call isZoomFactorTextOnly() to get value instead of accessing now-removed data member
194         (WebCore::Frame::shouldApplyPageZoom):
195         ditto
196         (WebCore::Frame::setZoomFactor):
197         set value into Settings rather than into data member
198         (WebCore::FramePrivate::FramePrivate):
199         don't set initial value of now-removed data member; this is managed by Settings now
200         
201         * page/FramePrivate.h:
202         removed m_zoomFactorIsTextOnly
203         
204         * page/Settings.cpp:
205         (WebCore::Settings::setZoomsTextOnly):
206         new function, sets values and reapplies styles in all frames
207         
208         * page/Settings.h:
209         (WebCore::Settings::zoomsTextOnly):
210         new function, returns value of new data member
211
212 2008-07-31  Simon Fraser  <simon.fraser@apple.com>
213
214         Reviewed by Dave Hyatt
215
216         Null-check parent clip rects, because they may not have been
217         set up yet.
218         https://bugs.webkit.org/show_bug.cgi?id=20243
219
220         * rendering/RenderLayer.cpp:
221         (WebCore::RenderLayer::calculateClipRects):
222
223 2008-07-31  Dan Bernstein  <mitz@apple.com>
224
225         Reviewed by Dave Hyatt.
226
227         - fix <rdar://problem/6058958> REGRESSION (r34210): Seams are visible in border-image
228
229         * platform/graphics/cg/ImageCG.cpp:
230         (WebCore::BitmapImage::draw): To work around a Core Graphics
231         interpolation issue, reverted to using a temporary subimage for drawing
232         a portion of the image with scaling and high-quality interpolation in
233         effect.
234
235 2008-07-31  chris fleizach  <cfleizach@apple.com>
236
237         Reviewed by Alice Liu
238
239         <rdar://problem/3563671> VO doesn't highlight characters when interacting when static text in web areas
240
241         Need to expose the AXBoundsForRange parameter which allows an AX client to get the visible bounds
242         for individual characters on a webpage.
243
244         Test: accessibility/bounds-for-range.html
245
246         * ChangeLog:
247         * page/AccessibilityRenderObject.cpp:
248         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
249         * page/mac/AccessibilityObjectWrapper.mm:
250         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
251         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
252
253 2008-07-31  Kevin Ollivier <kevino@theolliviers.com>
254
255         Second attempt at Windows/wx build fix. Instead of avoiding inclusion of windows.h,
256         use defines, etc. to avoid conflicts in each affected file.
257
258         * config.h:
259         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
260         * platform/wx/PopupMenuWx.cpp:
261
262 2008-07-31  Erik Bunce  <elbunce@thehive.com>
263
264         Reviewed by Simon.
265
266         https://bugs.webkit.org/show_bug.cgi?id=20224
267
268         Include the Writing Direction sub-menu in the context menu of all
269         platforms but GTK. This fixes a regression introduced by revision
270         34426.
271
272         * platform/ContextMenu.cpp:
273         (WebCore::ContextMenu::populate):
274
275 2008-07-31  Brady Eidson  <beidson@apple.com>
276
277         Reviewed by Adam and Hyatt
278
279         Fix for <rdar://problem/6099748>
280
281         Adds a "don't enforce CSS mime type in strict mode" quirk for iWeb 2
282
283         * WebCore.base.exp:
284
285         * html/HTMLLinkElement.cpp:
286         (WebCore::HTMLLinkElement::setCSSStyleSheet):
287
288         * loader/CachedCSSStyleSheet.cpp:
289         (WebCore::CachedCSSStyleSheet::canUseSheet):
290         * loader/CachedCSSStyleSheet.h:
291         (WebCore::CachedCSSStyleSheet::sheetText): 
292         * page/Settings.cpp:
293
294         (WebCore::Settings::Settings):
295         (WebCore::Settings::setEnforceCSSMIMETypeInStrictMode):
296         * page/Settings.h:
297         (WebCore::Settings::enforceCSSMIMETypeInStrictMode):
298
299 2008-07-31  Erik Bunce  <elbunce@thehive.com>
300
301         Reviewed by Simon.
302
303         Added the ability to get SQLite headers and source from the location 
304         specified via the SQLITE3SRCDIR environtment variable.
305
306         * WebCore.pro:
307
308 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
309
310         Rubber-stamped by Maciej.
311
312         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
313         call sites now).
314
315         * ForwardingHeaders/kjs/JSLock.h: Removed.
316         * WebCore.vcproj/WebCore.vcproj:
317         * bindings/js/GCController.cpp:
318         (WebCore::collect):
319         (WebCore::GCController::gcTimerFired):
320         (WebCore::GCController::garbageCollectNow):
321         * bindings/js/JSCustomSQLStatementCallback.cpp:
322         (WebCore::JSCustomSQLStatementCallback::handleEvent):
323         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
324         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
325         * bindings/js/JSCustomSQLTransactionCallback.cpp:
326         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
327         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
328         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
329         * bindings/js/JSCustomVoidCallback.cpp:
330         (WebCore::JSCustomVoidCallback::handleEvent):
331         * bindings/js/JSCustomXPathNSResolver.cpp:
332         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
333         * bindings/js/JSDOMWindowBase.cpp:
334         (WebCore::DOMWindowTimer::~DOMWindowTimer):
335         (WebCore::JSDOMWindowBase::clear):
336         (WebCore::JSDOMWindowBase::timerFired):
337         * bindings/js/JSEventCustom.cpp:
338         (WebCore::toJS):
339         * bindings/js/JSEventListener.cpp:
340         (WebCore::JSAbstractEventListener::handleEvent):
341         (WebCore::JSLazyEventListener::parseCode):
342         * bindings/js/JSNSResolver.cpp:
343         (WebCore::JSNSResolver::lookupNamespaceURI):
344         * bindings/js/JSNodeFilterCondition.cpp:
345         (WebCore::JSNodeFilterCondition::acceptNode):
346         * bindings/js/ScheduledAction.cpp:
347         (WebCore::ScheduledAction::execute):
348         * bindings/js/ScriptController.cpp:
349         (WebCore::ScriptController::evaluate):
350         (WebCore::ScriptController::clear):
351         (WebCore::ScriptController::createHTMLEventHandler):
352         (WebCore::ScriptController::createSVGEventHandler):
353         (WebCore::ScriptController::initScript):
354         (WebCore::ScriptController::updateDocument):
355         * bindings/objc/WebScriptObject.mm:
356         (_didExecute):
357         (-[WebScriptObject callWebScriptMethod:withArguments:]):
358         (-[WebScriptObject evaluateWebScript:]):
359         (-[WebScriptObject setValue:forKey:]):
360         (-[WebScriptObject valueForKey:]):
361         (-[WebScriptObject removeWebScriptKey:]):
362         (-[WebScriptObject stringRepresentation]):
363         (-[WebScriptObject webScriptValueAtIndex:]):
364         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
365         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
366         * bridge/NP_jsobject.cpp:
367         (_NPN_InvokeDefault):
368         (_NPN_Invoke):
369         (_NPN_Evaluate):
370         (_NPN_GetProperty):
371         (_NPN_SetProperty):
372         (_NPN_RemoveProperty):
373         (_NPN_HasProperty):
374         (_NPN_HasMethod):
375         (_NPN_Enumerate):
376         * bridge/c/c_class.cpp:
377         (KJS::Bindings::CClass::~CClass):
378         (KJS::Bindings::CClass::methodsNamed):
379         (KJS::Bindings::CClass::fieldNamed):
380         * bridge/c/c_instance.cpp:
381         (KJS::Bindings::CInstance::invokeMethod):
382         (KJS::Bindings::CInstance::invokeDefaultMethod):
383         (KJS::Bindings::CInstance::getPropertyNames):
384         * bridge/c/c_runtime.cpp:
385         (KJS::Bindings::CField::valueFromInstance):
386         (KJS::Bindings::CField::setValueToInstance):
387         * bridge/c/c_utility.cpp:
388         (KJS::Bindings::convertValueToNPVariant):
389         (KJS::Bindings::convertNPVariantToValue):
390         * bridge/jni/jni_class.cpp:
391         (JavaClass::JavaClass):
392         (JavaClass::~JavaClass):
393         * bridge/jni/jni_instance.cpp:
394         (JavaInstance::stringValue):
395         * bridge/jni/jni_jsobject.mm:
396         (JavaJSObject::call):
397         (JavaJSObject::eval):
398         (JavaJSObject::getMember):
399         (JavaJSObject::setMember):
400         (JavaJSObject::removeMember):
401         (JavaJSObject::getSlot):
402         (JavaJSObject::setSlot):
403         (JavaJSObject::toString):
404         (JavaJSObject::convertValueToJObject):
405         (JavaJSObject::convertJObjectToValue):
406         * bridge/jni/jni_objc.mm:
407         (KJS::Bindings::dispatchJNICall):
408         * bridge/jni/jni_runtime.cpp:
409         (appendClassName):
410         (JavaMethod::signature):
411         * bridge/jni/jni_runtime.h:
412         (KJS::Bindings::JavaString::JavaString):
413         (KJS::Bindings::JavaString::_commonInit):
414         (KJS::Bindings::JavaString::~JavaString):
415         (KJS::Bindings::JavaString::UTF8String):
416         * bridge/jni/jni_utility.cpp:
417         (KJS::Bindings::convertValueToJValue):
418         * bridge/npruntime.cpp:
419         (_NPN_GetStringIdentifier):
420         * bridge/objc/objc_instance.mm:
421         (ObjcInstance::moveGlobalExceptionToExecState):
422         (ObjcInstance::invokeMethod):
423         (ObjcInstance::invokeDefaultMethod):
424         (ObjcInstance::setValueOfUndefinedField):
425         (ObjcInstance::getValueOfUndefinedField):
426         * bridge/objc/objc_runtime.mm:
427         (ObjcField::valueFromInstance):
428         (ObjcField::setValueToInstance):
429         * bridge/objc/objc_utility.mm:
430         (KJS::Bindings::convertValueToObjcValue):
431         (KJS::Bindings::convertNSStringToString):
432         (KJS::Bindings::convertObjcValueToValue):
433         * bridge/qt/qt_instance.cpp:
434         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
435         (KJS::Bindings::QtInstance::~QtInstance):
436         (KJS::Bindings::QtInstance::getQtInstance):
437         (KJS::Bindings::QtInstance::getRuntimeObject):
438         * bridge/qt/qt_runtime.cpp:
439         (KJS::Bindings::convertValueToQVariant):
440         (KJS::Bindings::convertQVariantToValue):
441         (KJS::Bindings::QtRuntimeMetaMethod::call):
442         (KJS::Bindings::QtRuntimeConnectionMethod::call):
443         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
444         (KJS::Bindings::QtConnectionObject::execute):
445         * bridge/runtime.cpp:
446         (KJS::Bindings::Instance::createRuntimeObject):
447         * bridge/testbindings.cpp:
448         (main):
449         * bridge/testbindings.mm:
450         (main):
451         * bridge/testqtbindings.cpp:
452         (main):
453         * dom/Document.cpp:
454         (WebCore::Document::~Document):
455         * dom/Node.cpp:
456         (WebCore::Node::setDocument):
457         * history/CachedPage.cpp:
458         (WebCore::CachedPage::CachedPage):
459         (WebCore::CachedPage::restore):
460         (WebCore::CachedPage::clear):
461         * html/HTMLPlugInElement.cpp:
462         (WebCore::HTMLPlugInElement::createNPObject):
463         * loader/FrameLoader.cpp:
464         (WebCore::getString):
465         * page/Frame.cpp:
466         (WebCore::Frame::bindingRootObject):
467         (WebCore::Frame::windowScriptNPObject):
468         (WebCore::Frame::clearScriptObjects):
469         * page/InspectorController.cpp:
470         (WebCore::jsStringRef):
471         (WebCore::ConsoleMessage::ConsoleMessage):
472         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
473         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
474         (WebCore::getResourceDocumentNode):
475         (WebCore::search):
476         (WebCore::inspectedWindow):
477         (WebCore::wrapCallback):
478         (WebCore::currentCallFrame):
479         (WebCore::profiles):
480         (WebCore::InspectorController::focusNode):
481         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
482         (WebCore::InspectorController::addDatabaseScriptResource):
483         (WebCore::InspectorController::addScriptProfile):
484         * page/JavaScriptCallFrame.cpp:
485         (WebCore::JavaScriptCallFrame::evaluate):
486         * page/JavaScriptProfileNode.cpp:
487         (WebCore::getTotalTime):
488         (WebCore::getSelfTime):
489         (WebCore::getTotalPercent):
490         (WebCore::getSelfPercent):
491         (WebCore::getNumberOfCalls):
492         (WebCore::getChildren):
493         (WebCore::getVisible):
494         * page/Page.cpp:
495         * page/mac/FrameMac.mm:
496         (WebCore::Frame::windowScriptObject):
497         * page/qt/FrameQt.cpp:
498         * plugins/PluginView.cpp:
499         (WebCore::PluginView::start):
500         (WebCore::getString):
501         (WebCore::PluginView::performRequest):
502         (WebCore::PluginView::bindingInstance):
503         * plugins/gtk/PluginViewGtk.cpp:
504         (WebCore::PluginView::paint):
505         (WebCore::PluginView::handleKeyboardEvent):
506         (WebCore::PluginView::handleMouseEvent):
507         (WebCore::PluginView::setNPWindowRect):
508         (WebCore::PluginView::stop):
509         (WebCore::PluginView::init):
510         * plugins/qt/PluginViewQt.cpp:
511         (WebCore::PluginView::setNPWindowRect):
512         (WebCore::PluginView::stop):
513         (WebCore::PluginView::init):
514         * plugins/win/PluginViewWin.cpp:
515         (WebCore::PluginView::dispatchNPEvent):
516         (WebCore::PluginView::handleKeyboardEvent):
517         (WebCore::PluginView::handleMouseEvent):
518         (WebCore::PluginView::setNPWindowRect):
519         (WebCore::PluginView::stop):
520         * xml/XMLHttpRequest.cpp:
521         (WebCore::XMLHttpRequest::clearResponse):
522         (WebCore::XMLHttpRequest::didFinishLoading):
523         (WebCore::XMLHttpRequest::didReceiveData):
524
525 2008-07-30  Timothy Hatcher  <timothy@apple.com>
526
527         Fix various minor bugs with style editing in the Inspector.
528
529         - Restores the scroll position to 0,0 when finished editing a
530         string that was longer than the editing input area.
531
532         - Adjusts the margin of the list item to ensure the text does
533         not shift when entering and exiting editing mode.
534
535         - Reliably remembers if a shorthand has children when the
536         children haven't been populated yet.
537
538         - Reliably remembers if a shorthand was expanded, and expands
539         if needed after editing finishes.
540
541         - Hides color swatches when editing.
542
543         https://bugs.webkit.org/show_bug.cgi?id=20238
544
545         Reviewed by Adam Roben.
546
547         * page/inspector/StylesSidebarPane.js:
548         (WebInspector.StylePropertyTreeElement.prototype.startEditing):
549         Store the expanded state and children state in wasExpanded and
550         reallyHasChildren properties.
551         (WebInspector.StylePropertyTreeElement.prototype.editingEnded):
552         Removed the wasExpanded argument and use the reallyHasChildren and
553         wasExpanded properties to restore state. Deletes the state properties.
554         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
555         Removed the wasExpanded argument.
556         (WebInspector.StylePropertyTreeElement.prototype.editingCommitted):
557         Removed the wasExpanded argument.
558         * page/inspector/inspector.css: Tweak the margin and hides the color
559         swatches. ALso removes a rule that was not needed.
560         * page/inspector/inspector.js:
561         (WebInspector.startEditing): Restore the scrollLeft and scrollTop
562         to zero when editing finishes.
563
564 2008-07-30  Alice Liu  <alice.liu@apple.com>
565
566         Implement userIdleTime() for Windows, and place a band-aid over other
567         platform implementations of userIdleTime().  This will fix the issue
568         of indefinitely postposing releasing pages from the PageCache
569         on non-Mac platforms, causing us to hang onto just about everything 
570         else about a web page.
571         
572         Reviewed by Sam Weinig.
573
574         * platform/gtk/TemporaryLinkStubs.cpp:
575         * platform/wx/TemporaryLinkStubs.cpp:
576         * platform/qt/TemporaryLinkStubs.cpp:
577         (WebCore::userIdleTime): set to FLT_MAX
578
579         * platform/win/SystemTimeWin.cpp:
580         (WebCore::userIdleTime): implemented
581
582 2008-07-30  Beth Dakin  <bdakin@apple.com>
583
584         Reviewed by Anders Carlsson.
585
586         Fixes <rdar://problem/6041390>
587
588         Adds the ability to have a frame that is "disconnected" from the 
589         main frame from the perspective of top and parent in 
590         Javascript.
591
592         * WebCore.base.exp:
593         * page/DOMWindow.cpp:
594         (WebCore::DOMWindow::parent):
595         (WebCore::DOMWindow::top):
596         * page/Frame.cpp:
597         (WebCore::Frame::isDisconnectedFrame):
598         (WebCore::Frame::setIsDisconnectedFrame):
599         (WebCore::FramePrivate::FramePrivate):
600         * page/Frame.h:
601         * page/FramePrivate.h:
602         * page/FrameTree.cpp:
603         (WebCore::FrameTree::parent):
604         (WebCore::FrameTree::top):
605         * page/FrameTree.h:
606
607 2008-07-25  Eric Seidel  <eric@webkit.org>
608
609         Reviewed by Justin.
610
611         Crash Safari when dragging images into Google presentations
612         https://bugs.webkit.org/show_bug.cgi?id=20161
613
614         Test: manual-tests/remove-on-drop-crash.html
615
616         * editing/ReplaceSelectionCommand.cpp:
617         (WebCore::ReplaceSelectionCommand::doApply):
618         * manual-tests/remove-on-drop-crash.html: Added.
619
620 2008-07-30  Christian Dywan  <christian@twotoasts.de>
621
622         Reviewed by Mark.
623
624         Build fix for Cairo < 1.6
625
626         * platform/graphics/cairo/PathCairo.cpp:
627         (WebCore::Path::boundingRect): use cairo_stroke_extends for < 1.6
628
629 2008-07-29  Kevin McCullough  <kmccullough@apple.com>
630
631         Reviewed by Geoff.
632
633         <rdar://problem/6110314> Crash in profiler dereferencing null frame or
634         page (20214)
635         - Null check.
636
637         * page/Console.cpp:
638         (WebCore::Console::finishedProfiling):
639
640 2008-07-30  David Hyatt  <hyatt@apple.com>
641
642         https://bugs.webkit.org/show_bug.cgi?id=18070
643         
644         Full page zoom needs to work properly with JS mouse events.  Make sure to adjust the coordinates of the
645         JS mouse event to account for zoom.
646
647         Reviewed by olliej
648
649         * dom/EventTargetNode.cpp:
650         (WebCore::EventTargetNode::dispatchMouseEvent):
651
652 2008-07-29  Sam Weinig  <sam@webkit.org>
653
654         Reviewed by Darin Adler.
655
656         Update Cross-site XMLHttpRequests using Access control to
657         the latest spec. (Editor's Draft 8 July 2008)
658
659         - This leaves us at about the same place as we previously were
660           still needing preflight caching and better redirect support.
661
662         * GNUmakefile.am:
663         * WebCore.pro:
664         * WebCore.vcproj/WebCore.vcproj:
665         * WebCore.xcodeproj/project.pbxproj:
666         * WebCoreSources.bkl:
667         * xml/AccessControlList.cpp: Removed.
668         * xml/AccessControlList.h: Removed.
669         * xml/AccessItem.cpp: Removed.
670         * xml/AccessItem.h: Removed.
671         * xml/AccessItemRule.cpp: Removed.
672         * xml/AccessItemRule.h: Removed.
673         * xml/XMLHttpRequest.cpp:
674         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
675         (WebCore::XMLHttpRequest::XMLHttpRequest):
676         (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest):
677         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
678         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
679         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
680         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
681         (WebCore::XMLHttpRequest::abort):
682         (WebCore::XMLHttpRequest::clearRequest):
683         (WebCore::XMLHttpRequest::didFinishLoading):
684         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
685         (WebCore::XMLHttpRequest::accessControlCheck):
686         (WebCore::XMLHttpRequest::didReceiveResponse):
687         (WebCore::parseAccessControlAllowList):
688         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
689         * xml/XMLHttpRequest.h:
690
691 2008-07-29  Kevin Calhoun  <kcalhoun@apple.com>
692
693         Reviewed by Adele.
694
695         Fix for <rdar://problem/6060647> Adopt QTMovieOpenForPlaybackAttribute flag
696
697         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie):
698
699 2008-07-29  Kevin Calhoun  <kcalhoun@apple.com>
700
701         Reviewed by Adele.
702
703         Fix for <rdar://problem/6031021> Make standalone video render more like the quicktime plugin to improve performance
704
705         For standalone video, use QTMovieView to draw.
706
707         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
708         (WebCore::MediaPlayerPrivate::createQTMovieView): Moved nil checks to setUpVideoRendering.
709          Associate the QTMovieView with the WebCoreMovieObserver.
710          If we're in a media document, allow QTMovieView to render in its default mode; otherwise tell it to draw synchronously. 
711         (WebCore::MediaPlayerPrivate::detachQTMovieView): Set the WebCoreMovieObserver's view to nil.
712         (WebCore::MediaPlayerPrivate::createQTVideoRenderer): Nil check is now in setUpVideoRendering, which is the only caller of this.
713         (WebCore::MediaPlayerPrivate::setUpVideoRendering): Added nil checks.  Call createQTMovieView for media documents.
714         (WebCore::MediaPlayerPrivate::tearDownVideoRendering): Call detachQTMovieView if a QTMovieView exists.
715         (WebCore::MediaPlayerPrivate::setRect): Call setFrame on the QTMovieView if necessary.
716         (-[WebCoreMovieObserver menuForEventDelegate:]): Added. Returns the frame view's menu.
717         (-[WebCoreMovieObserver setView:]): Added.
718
719 2008-07-29  Adele Peterson  <adele@apple.com>
720
721         Reviewed by Dan Bernstein.
722
723         Fix for <rdar://problem/6073372> Move built-in controls below <video> element for standalone media documents
724
725         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added -webkit-full-page-media pseudo class.
726         * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoFullPageMedia.
727         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added case to
728         apply PseudoFullPageMedia for elements in a full page media document.
729
730         * css/html4.css: Added rule to shift control panel down for video in standalone media documents.
731
732         * rendering/RenderMedia.cpp:
733         (WebCore::RenderMedia::lowestPosition): Added implementation that takes the controls into account.
734         This makes sure that scrollbars on the page will account for controls not directly contained in the RenderMedia.
735         (WebCore::RenderMedia::rightmostPosition): ditto.
736         (WebCore::RenderMedia::leftmostPosition): ditto.
737         * rendering/RenderMedia.h:
738
739 2008-07-29  Sam Weinig  <sam@webkit.org>
740
741         Reviewed by Anders Carlsson.
742
743         <rdar://problem/6084585> Investigate upload progress events.
744
745         - Add progress notifications for data being sent via a ResourceHandle.
746         - Add XMLHttpRequestUpload support.
747
748         Upload notifications only work on the Mac right now as the CFNetwork API
749         on windows does not expose enough information.
750
751         Tests: http/tests/xmlhttprequest/upload-onload-event.html
752                http/tests/xmlhttprequest/upload-onloadstart-event.html
753                http/tests/xmlhttprequest/upload-onprogress-event.html
754                http/tests/xmlhttprequest/upload-progress-events.html
755
756         * DerivedSources.make:
757         * GNUmakefile.am:
758         * WebCore.pro:
759         * WebCore.vcproj/WebCore.vcproj:
760         * WebCore.xcodeproj/project.pbxproj:
761         * WebCoreSources.bkl:
762         * bindings/js/JSEventTargetBase.cpp:
763         (WebCore::toJS):
764         * bindings/js/JSXMLHttpRequestCustom.cpp:
765         (WebCore::JSXMLHttpRequest::mark):
766         * bindings/js/JSXMLHttpRequestUploadCustom.cpp: Added.
767         (WebCore::JSXMLHttpRequestUpload::mark):
768         (WebCore::JSXMLHttpRequestUpload::onabort):
769         (WebCore::JSXMLHttpRequestUpload::setOnabort):
770         (WebCore::JSXMLHttpRequestUpload::onerror):
771         (WebCore::JSXMLHttpRequestUpload::setOnerror):
772         (WebCore::JSXMLHttpRequestUpload::onload):
773         (WebCore::JSXMLHttpRequestUpload::setOnload):
774         (WebCore::JSXMLHttpRequestUpload::onloadstart):
775         (WebCore::JSXMLHttpRequestUpload::setOnloadstart):
776         (WebCore::JSXMLHttpRequestUpload::onprogress):
777         (WebCore::JSXMLHttpRequestUpload::setOnprogress):
778         (WebCore::JSXMLHttpRequestUpload::addEventListener):
779         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
780         (WebCore::JSXMLHttpRequestUpload::dispatchEvent):
781         * dom/EventTarget.cpp:
782         (WebCore::EventTarget::toXMLHttpRequestUpload):
783         * dom/EventTarget.h:
784         * loader/ResourceLoader.cpp:
785         (WebCore::ResourceLoader::didSendData):
786         * loader/ResourceLoader.h:
787         * loader/SubresourceLoader.cpp:
788         (WebCore::SubresourceLoader::didSendData):
789         * loader/SubresourceLoader.h:
790         * loader/SubresourceLoaderClient.h:
791         (WebCore::SubresourceLoaderClient::didSendData):
792         * page/DOMWindow.idl:
793         * platform/network/FormData.cpp:
794         (WebCore::FormData::FormData):
795         * platform/network/FormData.h:
796         (WebCore::FormData::alwaysStream):
797         (WebCore::FormData::setAlwaysStream):
798         * platform/network/ResourceHandleClient.h:
799         (WebCore::ResourceHandleClient::didSendData):
800         * platform/network/mac/FormDataStreamMac.h:
801         * platform/network/mac/FormDataStreamMac.mm:
802         (WebCore::getStreamFormDataMap):
803         (WebCore::getStreamResourceHandleMap):
804         (WebCore::associateStreamWithResourceHandle):
805         (WebCore::disassociateStreamWithResourceHandle):
806         (WebCore::DidSendDataCallbackData::DidSendDataCallbackData):
807         (WebCore::performDidSendDataCallback):
808         (WebCore::formCreate):
809         (WebCore::formFinalize):
810         (WebCore::formRead):
811         (WebCore::setHTTPBody):
812         (WebCore::httpBodyFromStream):
813         * platform/network/mac/ResourceHandleMac.mm:
814         (WebCore::ResourceHandle::start):
815         (WebCore::ResourceHandle::cancel):
816         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
817         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
818         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
819         * xml/XMLHttpRequest.cpp:
820         (WebCore::XMLHttpRequest::XMLHttpRequest):
821         (WebCore::XMLHttpRequest::~XMLHttpRequest):
822         (WebCore::XMLHttpRequest::upload):
823         (WebCore::XMLHttpRequest::open):
824         (WebCore::XMLHttpRequest::send):
825         (WebCore::XMLHttpRequest::createRequest):
826         (WebCore::XMLHttpRequest::abort):
827         (WebCore::XMLHttpRequest::networkError):
828         (WebCore::XMLHttpRequest::abortError):
829         (WebCore::XMLHttpRequest::didSendData):
830         * xml/XMLHttpRequest.h:
831         (WebCore::XMLHttpRequest::optionalUpload):
832         * xml/XMLHttpRequest.idl:
833         * xml/XMLHttpRequestUpload.cpp: Added.
834         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
835         (WebCore::XMLHttpRequestUpload::addEventListener):
836         (WebCore::XMLHttpRequestUpload::removeEventListener):
837         (WebCore::XMLHttpRequestUpload::dispatchEvent):
838         (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent):
839         (WebCore::XMLHttpRequestUpload::dispatchAbortEvent):
840         (WebCore::XMLHttpRequestUpload::dispatchErrorEvent):
841         (WebCore::XMLHttpRequestUpload::dispatchLoadEvent):
842         (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent):
843         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
844         * xml/XMLHttpRequestUpload.h: Added.
845         (WebCore::XMLHttpRequestUpload::create):
846         (WebCore::XMLHttpRequestUpload::toXMLHttpRequestUpload):
847         (WebCore::XMLHttpRequestUpload::associatedXMLHttpRequest):
848         (WebCore::XMLHttpRequestUpload::disconnectXMLHttpRequest):
849         (WebCore::XMLHttpRequestUpload::setOnAbortListener):
850         (WebCore::XMLHttpRequestUpload::onAbortListener):
851         (WebCore::XMLHttpRequestUpload::setOnErrorListener):
852         (WebCore::XMLHttpRequestUpload::onErrorListener):
853         (WebCore::XMLHttpRequestUpload::setOnLoadListener):
854         (WebCore::XMLHttpRequestUpload::onLoadListener):
855         (WebCore::XMLHttpRequestUpload::setOnLoadStartListener):
856         (WebCore::XMLHttpRequestUpload::onLoadStartListener):
857         (WebCore::XMLHttpRequestUpload::setOnProgressListener):
858         (WebCore::XMLHttpRequestUpload::onProgressListener):
859         (WebCore::XMLHttpRequestUpload::eventListeners):
860         (WebCore::XMLHttpRequestUpload::refEventTarget):
861         (WebCore::XMLHttpRequestUpload::derefEventTarget):
862         * xml/XMLHttpRequestUpload.idl: Added.
863
864 2008-07-29  Maxime Britto  <britto@apple.com>
865
866         Reviewed by Darin.
867
868         <rdar://problem/6095023> "When pan-scrolling, mouse click on hyperlink stop the pan-Scroll but follow the link after that."
869         With this patch we now stop the pan scroll and swallow the event to prevent any following action.
870
871         * page/EventHandler.cpp:
872         (WebCore::EventHandler::handleMousePressEvent): If we were in pan scrolling mode we no longer just stop the pan scroll and continue with the function, we now stop and return true to attest that we swallowed the event.
873
874 2008-07-29  Maxime Britto  <britto@apple.com>
875
876         Reviewed by adele.
877
878         Test: fast/events/autoscroll-in-textfield.html
879
880         * rendering/RenderObject.cpp:
881         (WebCore::RenderObject::canBeProgramaticallyScrolled): reverted a bad change introduced in r35244
882         nb:the test case introduced in r35244 is still working.
883
884 2008-07-29  Maxime Britto  <britto@apple.com>
885
886         Reviewed by adele.
887         This test verifies that the autoscroll works within textfields.
888
889         * fast/events/autoscroll-in-textfield-expected.txt: Added.
890         * fast/events/autoscroll-in-textfield.html: Added.
891
892 2008-07-29  Adele Peterson  <adele@apple.com>
893
894         Reviewed by Sammy Weinig.
895
896         Fix for <rdar://problem/6103024>
897         When a QT movie is loaded directly in the browser, I can't pause it by single-clicking on the video
898
899         Test: media/video-click-dlbclick-standalone.html
900
901         * loader/MediaDocument.cpp: (WebCore::MediaDocument::defaultEventHandler): For standalone media documents,
902         match the default Quicktime plugin behavior to allow clicking and double-clicking to pause and play the media.
903         * loader/MediaDocument.h: Added defaultEventHandler.
904
905         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::defaultEventHandler): Return early if the event has been handled.
906         * rendering/MediaControlElements.cpp:
907         (WebCore::MediaControlMuteButtonElement::defaultEventHandler): Correct what was probably a typo.  Instead of "event->defaultHandled()",
908          it is supposed to be "event->setDefaultHandled()".
909         (WebCore::MediaControlPlayButtonElement::defaultEventHandler): ditto.
910         (WebCore::MediaControlSeekButtonElement::defaultEventHandler): ditto.
911         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): ditto.
912
913 2008-07-29  Dan Bernstein  <mitz@apple.com>
914
915         Reviewed by Dave Hyatt.
916
917         - fix <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com
918
919         Test: fast/overflow/float-in-relpositioned.html
920
921         * rendering/RenderBlock.cpp:
922         (WebCore::RenderBlock::lowestPosition): Add this block's relative offset
923         to floats' and positioned objects' lowest position.
924         (WebCore::RenderBlock::rightmostPosition): Ditto.
925         (WebCore::RenderBlock::leftmostPosition): Ditto.
926         * rendering/RenderBox.cpp:
927         (WebCore::RenderBox::lowestPosition): Removed redundant test.
928         (WebCore::RenderBox::rightmostPosition): Ditto.
929         (WebCore::RenderBox::leftmostPosition): Ditto.
930
931 2008-07-29  Dan Bernstein  <mitz@apple.com>
932
933         Reviewed by Dave Hyatt.
934
935         - fix <rdar://problem/6048566> Repaint original element's position, not its offset position
936
937         Test: fast/repaint/layout-state-relative.html
938
939         * rendering/RenderBox.cpp:
940         (WebCore::RenderBox::absolutePosition): Changed the LayoutState-enabled
941         code path to account for the object's relative offset.
942         (WebCore::RenderBox::computeAbsoluteRepaintRect): Ditto.
943
944 2008-07-29  Keishi Hattori  <casey.hattori@gmail.com>
945
946         Fixed Bug 19158: Inspector should support console.group/console.groupEnd
947
948         <https://bugs.webkit.org/show_bug.cgi?id=19158>
949
950         Reviewed by Tim Hatcher and Adam Roben.
951
952         * bindings/js/JSConsoleCustom.cpp:
953         (WebCore::JSConsole::group): Added.
954         * page/Console.cpp:
955         (WebCore::Console::group): Added.
956         (WebCore::Console::groupEnd): Added.
957         * page/Console.h:
958         (WebCore::):
959         * page/Console.idl: Added group/groupEnd.
960         * page/InspectorController.cpp:
961         (WebCore::ConsoleMessage::ConsoleMessage):
962         (WebCore::InspectorController::InspectorController): Added m_groupLevel.
963         (WebCore::InspectorController::addMessageToConsole): Added groupLevel argument.
964         (WebCore::InspectorController::startGroup): Increments m_groupLevel by one and calls js function if needed.
965         (WebCore::InspectorController::endGroup): Decrements m_groupLevel by one and calls js function if needed.
966         (WebCore::InspectorController::addScriptConsoleMessage): Added groupLevel argument.
967         (WebCore::InspectorController::didCommitLoad): Resets m_groupLevel.
968         * page/InspectorController.h:
969         * page/inspector/Console.js:
970         (WebInspector.Console): Added groupLevel and currentGroup topGroup.
971         (WebInspector.Console.addMessage): Calls addMessage method in the currentGroup.
972         (WebInspector.Console.startGroup): Added.
973         (WebInspector.Console.endGroup): Added.
974         (WebInspector.Console.clearMessages): Resets groupLevel and currentGroup.
975         (WebInspector.ConsoleMessage): Added groupLevel property.
976         (WebInspector.ConsoleMessage.MessageLevel.GroupTitle): Added.
977         (WebInspector.ConsoleGroup): Added.
978         (WebInspector.ConsoleGroup.addMessage): Adds console message to group.
979         (WebInspector.ConsoleGroup._titleClicked): Adds "collapsed" style class.
980         * page/inspector/inspector.css:
981         * page/inspector/inspector.js:
982         (WebInspector.startGroupInConsole): Calls console.startGroup
983         (WebInspector.endGroupInConsole): Calls console.endGroup
984
985 2008-07-29  Adam Roben  <aroben@apple.com>
986
987         Add names for WebCore's threads
988
989         Reviewed by Anders Carlsson.
990
991         * loader/icon/IconDatabase.cpp:
992         (WebCore::IconDatabase::open):
993         * storage/DatabaseThread.cpp:
994         (WebCore::DatabaseThread::start):
995         * storage/LocalStorageThread.cpp:
996         (WebCore::LocalStorageThread::start):
997         Pass in names to createThread.
998
999         * platform/network/cf/ResourceHandleCFNet.cpp:
1000         (WebCore::runLoaderThread):
1001         (WebCore::ResourceHandle::loaderRunLoop):
1002         Changed to use WTF::createThread.
1003
1004 2008-07-28  Anders Carlsson  <andersca@apple.com>
1005
1006         Reviewed by Kevin Decker.
1007
1008         Based on a patch from Dimcho Balev.
1009         
1010         Windows part of 
1011     
1012         https://bugs.webkit.org/show_bug.cgi?id=18676
1013         <rdar://problem/6106578>
1014         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
1015
1016         * plugins/PluginStream.cpp:
1017         (WebCore::PluginStream::wantsAllStreams):
1018         * plugins/PluginStream.h:
1019
1020 2008-07-28  Brady Eidson  <beidson@apple.com>
1021
1022         Reviewed by Sam Weinig
1023
1024         Test: security/autocomplete-cleared-on-back.html
1025
1026         <rdar://problem/6093281> - autocomplete="off" should work when going back
1027
1028         Taken care of in two ways:
1029         1 - Listening for the page cache notification to clear the form, in cases where the page
1030             is being restored from the page cache
1031         2 - Not saving such form elements when doing the normal "save state" to a history item,
1032             for cases with no page cache
1033
1034         * html/HTMLFormElement.cpp:
1035         (WebCore::HTMLFormElement::~HTMLFormElement):
1036         (WebCore::HTMLFormElement::parseMappedAttribute):
1037         (WebCore::HTMLFormElement::didRestoreFromCache):
1038         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument):
1039         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
1040         * html/HTMLFormElement.h:
1041
1042         * html/HTMLInputElement.cpp:
1043         (WebCore::HTMLInputElement::~HTMLInputElement):
1044         (WebCore::HTMLInputElement::setInputType):
1045         (WebCore::HTMLInputElement::saveState):
1046         (WebCore::HTMLInputElement::parseMappedAttribute):
1047         (WebCore::HTMLInputElement::needsCacheCallback):
1048         (WebCore::HTMLInputElement::registerForCacheCallbackIfNeeded): Only register if the type or attribute
1049           indicate we should.
1050         (WebCore::HTMLInputElement::unregisterForCacheCallbackIfNeeded): Only unregister if both the type
1051           and attribute are clear of needing registration.
1052         (WebCore::HTMLInputElement::didRestoreFromCache):
1053         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
1054         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
1055         * html/HTMLInputElement.h:
1056
1057 2008-07-28  David Hyatt  <hyatt@apple.com>
1058
1059         Add support for CSS variable declaration blocks.
1060
1061         Reviewed by Sam
1062
1063         Added tests in fast/css/variables.
1064
1065         * css/CSSGrammar.y:
1066         * css/CSSMutableStyleDeclaration.h:
1067         (WebCore::CSSMutableStyleDeclaration::isMutableStyleDeclaration):
1068         * css/CSSParser.cpp:
1069         (WebCore::CSSParser::addVariableDeclarationBlock):
1070         * css/CSSParser.h:
1071         * css/CSSProperty.cpp:
1072         (WebCore::CSSProperty::cssText):
1073         * css/CSSPropertyNames.in:
1074         * css/CSSStyleSelector.cpp:
1075         (WebCore::CSSStyleSelector::addMatchedDeclaration):
1076         (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
1077         * css/CSSStyleSelector.h:
1078         * css/CSSValueList.h:
1079         (WebCore::CSSValueList::isValueList):
1080         * css/CSSVariablesDeclaration.cpp:
1081         (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
1082         (WebCore::CSSVariablesDeclaration::getVariableValue):
1083         (WebCore::CSSVariablesDeclaration::removeVariable):
1084         (WebCore::CSSVariablesDeclaration::addParsedVariable):
1085         (WebCore::CSSVariablesDeclaration::getParsedSimpleVariable):
1086         (WebCore::CSSVariablesDeclaration::getParsedComplexVariable):
1087         * css/CSSVariablesDeclaration.h:
1088         (WebCore::CSSVariablesDeclaration::create):
1089         * css/StyleBase.cpp:
1090         (WebCore::StyleBase::cssText):
1091         * css/StyleBase.h:
1092         (WebCore::StyleBase::isValueList):
1093         (WebCore::StyleBase::isMutableStyleDeclaration):
1094
1095 2008-07-28  Anders Carlsson  <andersca@apple.com>
1096
1097         Reviewed by Sam.
1098
1099         <rdar://problem/6098335>
1100         https://bugs.webkit.org/show_bug.cgi?id=20150
1101         
1102         Handle willSendRequest correctly.
1103
1104         * loader/SubresourceLoader.cpp:
1105         (WebCore::SubresourceLoader::willSendRequest):
1106         Make sure to keep the previous URL around so we know when to call willSendRequest.
1107         
1108         * xml/XMLHttpRequest.cpp:
1109         (WebCore::XMLHttpRequest::processSyncLoadResults):
1110         Abort if we don't have access to the response URL.
1111         
1112         (WebCore::XMLHttpRequest::willSendRequest):
1113         Dispatch a network error if we can't access the new URL.
1114
1115 2008-07-28  Geoffrey Garen  <ggaren@apple.com>
1116
1117         Reviewed by Sam Weinig.
1118
1119         Renamed "ConstructTypeNative" => "ConstructTypeHost".
1120         
1121 2008-07-28  Anders Carlsson  <andersca@apple.com>
1122
1123         Reviewed by Kevin Decker.
1124
1125         Based on a patch by Dimcho Balev.
1126
1127         https://bugs.webkit.org/show_bug.cgi?id=18676
1128         <rdar://problem/6106578>
1129         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
1130         
1131         * bridge/npapi.h:
1132         Add new enum values.
1133         
1134         * loader/NetscapePlugInStreamLoader.cpp:
1135         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
1136         When the plug-in indicates that it wants all streams to be delivered, don't cancel the stream
1137         if an error occurs.
1138         
1139         * loader/NetscapePlugInStreamLoader.h:
1140         (WebCore::NetscapePlugInStreamLoaderClient::wantsAllStreams):
1141         Add new client method.
1142
1143 2008-07-27  Sam Weinig  <sam@webkit.org>
1144
1145         Reviewed by Oliver Hunt.
1146
1147         Fix for https://bugs.webkit.org/show_bug.cgi?id=20176
1148         querySelectorAll id optimization no longer working
1149
1150         Turn the querySelector/querySelectorAll id optimization back on
1151         for only strict and almost strict mode.  In quirks mode, the optimiztion
1152         won't work as the id match is not case sensitive.
1153
1154         Tests: fast/dom/SelectorAPI/caseID-almost-strict.html
1155                fast/dom/SelectorAPI/caseID-strict.html
1156                fast/dom/SelectorAPI/caseID.html
1157
1158         * dom/Node.cpp:
1159         (WebCore::Node::querySelector):
1160         (WebCore::Node::querySelectorAll):
1161         * dom/SelectorNodeList.cpp:
1162         (WebCore::createSelectorNodeList):
1163         * dom/SelectorNodeList.h:
1164
1165 2008-07-27  Anatoli Papirovski  <apapirovski@mac.com>
1166
1167         Reviewed by Dave Hyatt.
1168
1169         Fix for https://bugs.webkit.org/show_bug.cgi?id=14346
1170         Modified the css parser:
1171         - not to fail when closing braces are not found for 
1172           a declaration at the end of the file
1173         - not to accept "!important fail" as valid
1174         - to keep accepting @import when it comes after invalid @ rules
1175         - not to drop the whole @media block when there's an error before the 
1176           closing brace
1177         + some other minor css parsing revisions.
1178
1179         CSSGrammar.y tweaked by David Kilzer to fix Tiger builds.
1180
1181         * css/CSSGrammar.y:
1182
1183 2008-07-27  Jan Michael Alonzo  <jmalonzo@webkit.org>
1184
1185         Reviewed by Eric Seidel.
1186
1187         Use --outputDir instead of --output when invoking make_names.pl
1188         There's no option named "output" in make_names.pl
1189
1190         * GNUmakefile.am:
1191         * WebCore.pro:
1192         * DerivedSources.make: Remove --output. Not necessary here.
1193         * bindings/scripts/generate-bindings.pl: Rename --outputdir to
1194           --outputDir for consistency with make_names.pl
1195
1196 2008-07-26  Dirk Schulze  <vbs85@gmx.de>
1197
1198         Reviewed by Eric Seidel.
1199
1200         http://bugs.webkit.org/show_bug.cgi?id=18694
1201         [CAIRO] Problem with rotation in a given matrix in SVG
1202
1203         Changed values given to AffineTransform.
1204
1205         * platform/graphics/cairo/AffineTransformCairo.cpp:
1206         (WebCore::AffineTransform::AffineTransform):
1207         (WebCore::AffineTransform::setMatrix):
1208
1209 2008-07-26  Jan Michael Alonzo  <jmalonzo@webkit.org>
1210
1211         Reviewed by Mark Rowe.
1212
1213         Call curl_global_cleanup() to release resources acquired by curl_global_init()
1214
1215         * platform/network/curl/ResourceHandleManager.cpp:
1216         (WebCore::ResourceHandleManager::~ResourceHandleManager):
1217
1218 2008-07-26  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>
1219
1220         Reviewed by Simon Hausmann.
1221
1222         Bug 18938: [GTK] Plugins not resized
1223         https://bugs.webkit.org/show_bug.cgi?id=18938
1224
1225         * plugins/PluginView.cpp:
1226         (WebCore::PluginView::setFrameGeometry): When viewing a full-page
1227         plugin in unix, geometry changes have to be passed to the plugin.
1228
1229 2008-07-26  Keishi Hattori  <casey.hattori@gmail.com>
1230
1231         Reviewed by Adam Roben.
1232
1233         Add console.time/timeEnd.
1234         https://bugs.webkit.org/show_bug.cgi?id=19159
1235
1236         * manual-tests/inspector/console-time.html: Added. Test cases for console.time/timeEnd.
1237         * page/Console.cpp:
1238         (WebCore::Console::time): Added.
1239         (WebCore::Console::timeEnd): Added.
1240         * page/Console.h:
1241         * page/Console.idl: Added console.time/timeEnd.
1242         * page/InspectorController.cpp:
1243         (WebCore::InspectorController::startTiming): Added.
1244         (WebCore::InspectorController::stopTiming): Added.
1245         * page/InspectorController.h:
1246
1247 2008-07-26  Dirk Schulze  <vbs85@gmx.de>
1248
1249         Reviewed by Nikolas Zimmermann.
1250
1251         Fixes rendering issues with gradients in SVG/Cairo.
1252
1253         * platform/graphics/cairo/PathCairo.cpp:
1254         (WebCore::Path::boundingRect):
1255         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
1256         (WebCore::applyStrokeStyleToContext):
1257         (WebCore::SVGPaintServerGradient::setup):
1258
1259 2008-07-26  Dirk Schulze  <vbs85@gmx.de>
1260
1261         Reviewed by Nikolas Zimmermann.
1262
1263         Added pattern-support for SVG in Cairo.
1264
1265         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
1266         (WebCore::applyStrokeStyleToContext):
1267         (WebCore::SVGPaintServerPattern::setup):
1268
1269 2008-07-26  Keishi Hattori  <casey.hattori@gmail.com>
1270
1271         Reviewed by Adam Roben.
1272
1273         Fixed bug 18540: console.log('multiple', 'strings') quotes all strings after the first
1274         <https://bugs.webkit.org/show_bug.cgi?id=18540>
1275
1276         * page/inspector/Console.js:
1277         (WebInspector.ConsoleMessage.prototype._format): String arguments are appended without formatting.
1278
1279 2008-07-26  Anthony Ricaud  <rik24d@gmail.com>
1280
1281         Reviewed by Tim Hatcher.
1282
1283         <https://bugs.webkit.org/show_bug.cgi?id=17589> Line highlighting should last longer
1284
1285         Restore the fade out effect after highlighting.
1286
1287         * page/inspector/SourceFrame.js: Add a class for fade-out effects and sets it at the end of highlighting time.
1288
1289 2008-07-26  Michelangelo De Simone  <michelangelo@me.com>
1290
1291         Reviewed by Adele Petersen.
1292
1293         Added the simple willValidate attribute to form controls according to
1294         WebForms 2 spec.
1295
1296         URL: http://www.w3.org/TR/web-forms-2/#willvalidate
1297
1298         Tests: fast/forms/willvalidate-000.html
1299                fast/forms/willvalidate-001.html
1300                fast/forms/willvalidate-002.html
1301                fast/forms/willvalidate-003.html
1302                fast/forms/willvalidate-004.html
1303                fast/forms/willvalidate-005.html
1304                fast/forms/willvalidate-006.html
1305                fast/forms/willvalidate-007.html
1306                fast/forms/willvalidate-008.html
1307                fast/forms/willvalidate-009.html
1308
1309         * html/HTMLButtonElement.h: Added willValidate(), always false.
1310         * html/HTMLButtonElement.idl: willValidate attribute exposed.
1311         * html/HTMLFieldSetElement.h: Added willValidate(), always false.
1312         * html/HTMLFieldSetElement.idl: willValidate attribute exposed.
1313         * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::willValidate):
1314         Added base willValidate() implementation.
1315         * html/HTMLFormControlElement.h: Added willValidate().
1316         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::willValidate):
1317         Added willValidate(), checks for input type.
1318         * html/HTMLInputElement.h: Added willValidate()
1319         * html/HTMLInputElement.idl: willValidate attribute exposed.
1320         * html/HTMLSelectElement.idl: willValidate attribute exposed.
1321         * html/HTMLTextAreaElement.idl: willValidate attribute exposed.
1322
1323 2008-07-26  Mark Rowe  <mrowe@apple.com>
1324
1325         Build fix.
1326
1327         * loader/FrameLoader.cpp:
1328         (WebCore::FrameLoader::load): Use 0 rather than nil as this is a C++ file.
1329
1330 2008-07-26  Mark Rowe  <mrowe@apple.com>
1331
1332         Build fix.
1333
1334         * loader/FrameLoader.h: Use 0 rather than nil as this is a C++ header.
1335
1336 2008-07-26  Daniel Jalkut  <jalkut@red-sweater.com>
1337
1338         Reviewed by Geoff Garen.
1339
1340         Revised the FrameLoader class to clean up a variety of load methods, and hopefully
1341         move things closer to integrating into a smaller set of load methods. To this
1342         end, I renamed many of the overloaded load() methods to have more meaningful and 
1343         easier to search names.  I added comments to the header file to provide clues as 
1344         to how many of the load methods are being used, and how they fit into the loading 
1345         process. I suspect that the renamed methods and comments indicating their present 
1346         usage will facilitate easier cleanup by myself and others as inspiration strikes.
1347
1348         Updated clients of FrameLoader where necessary to adapt to the new method names and signatures.
1349
1350         Combined the 3 canLoad() methods into a single canLoad which expresses the 
1351         intended logic of the 3 with a single method interface.
1352
1353         Removed unnecessary "treatAsLocal" attribute of CachedResource. It was only called from
1354         one place in FrameLoader.cpp, and it derived at initialization time by calling back to FrameLoader.
1355
1356         Removed unused userGesture parameter to one variant of the urlSelected method, and 
1357         moved one of the urlSelected methods so that it lives nearer to its overloaded 
1358         sibling.
1359
1360         * WebCore.base.exp:
1361         * loader/Cache.cpp:
1362         (WebCore::Cache::requestResource):
1363         * loader/CachedResource.cpp:
1364         (WebCore::CachedResource::CachedResource):
1365         * loader/CachedResource.h:
1366         (WebCore::CachedResource::errorOccurred):
1367         * loader/FrameLoader.cpp:
1368         (WebCore::FrameLoader::createWindow):
1369         (WebCore::FrameLoader::urlSelected):
1370         (WebCore::FrameLoader::loadURLIntoChildFrame):
1371         (WebCore::FrameLoader::loadPlugin):
1372         (WebCore::FrameLoader::loadFrameRequestWithFormState):
1373         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
1374         (WebCore::FrameLoader::loadURL):
1375         (WebCore::FrameLoader::loadWithNavigationAction):
1376         (WebCore::FrameLoader::load):
1377         (WebCore::FrameLoader::loadWithDocumentLoader):
1378         (WebCore::FrameLoader::canLoad):
1379         (WebCore::FrameLoader::reloadAllowingStaleData):
1380         (WebCore::FrameLoader::reload):
1381         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
1382         (WebCore::FrameLoader::submitForm):
1383         (WebCore::FrameLoader::loadPostRequest):
1384         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
1385         (WebCore::FrameLoader::loadItem):
1386         * loader/FrameLoader.h:
1387         * loader/SubresourceLoader.cpp:
1388         (WebCore::SubresourceLoader::create):
1389         * page/ContextMenuController.cpp:
1390         (WebCore::ContextMenuController::contextMenuItemSelected):
1391
1392 2008-07-26  Sam Weinig  <sam@webkit.org>
1393
1394         Reviewed by Dan Bernstein.
1395
1396         Fix https://bugs.webkit.org/show_bug.cgi?id=20122
1397         <rdar://problem/6089522>
1398         REGRESSION (r35075-r35110): Cannot enlarge images at Apple Store product page
1399
1400         Use strict parsing when in AlmostStrict mode.
1401
1402         Tests: fast/dom/SelectorAPI/dumpNodeList-almost-strict.html
1403                fast/dom/SelectorAPI/id-fastpath-almost-strict.html
1404                fast/dom/SelectorAPI/id-fastpath-strict.html
1405
1406         * dom/Node.cpp:
1407         (WebCore::Node::querySelector):
1408         (WebCore::Node::querySelectorAll):
1409
1410 2008-07-25  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1411
1412         Reviewed by Simon.
1413
1414         Switch off QPainter's anti aliasing when painting the widgets using QStyle
1415         because otherwise the widgets will look blurry and not crisp.
1416
1417         * platform/qt/RenderThemeQt.cpp:
1418         (WebCore::StylePainter::StylePainter):
1419         (WebCore::StylePainter::~StylePainter):
1420         * platform/qt/RenderThemeQt.h:
1421
1422 2008-07-25  Dan Bernstein  <mitz@apple.com>
1423
1424         Reviewed by Anders Carlsson.
1425
1426         - fix crash due to re-entering purgeInactiveFontData() now that it is
1427           called by releaseFontData()
1428
1429         Not testable in DumpRenderTree
1430
1431         * platform/graphics/FontCache.cpp:
1432         (WebCore::FontCache::purgeInactiveFontData): Added a reentry guard.
1433
1434 2008-07-25  Brady Eidson  <beidson@apple.com>
1435
1436         Reviewed by Sam
1437
1438         Test: security/set-form-autocomplete-attribute.html
1439
1440         Part of the fix for <rdar://problem/6093281> - Improper handling of autocomplete
1441
1442         The autocomplete attribute works on both <form> and <input> elements, but was not
1443         inherited properly when someone asked an <input> if it should autocomplete.
1444
1445         I fixed this up based on the rules in the current WF2 spec so if the <input> element
1446         has its own autocomplete attribute set, it will follow that but otherwise it will
1447         inherit from its parent <form>
1448
1449         * WebCore.base.exp:
1450
1451         * html/HTMLInputElement.cpp:
1452         (WebCore::HTMLInputElement::init):
1453         (WebCore::HTMLInputElement::autoComplete):
1454         (WebCore::HTMLInputElement::parseMappedAttribute):
1455         * html/HTMLInputElement.h:
1456         (WebCore::HTMLInputElement::):
1457
1458 2008-07-25  Wouter Bolsterlee  <uws+webkit@xs4all.nl>
1459
1460         Reviewed by Holger Freyther.
1461
1462         https://bugs.webkit.org/show_bug.cgi?id=20078
1463         [GTK] Use G_* macros instead of deprecated GTK_* macros in gtk2xtbin.h
1464
1465         * plugins/gtk/gtk2xtbin.h:
1466
1467 2008-07-25  Anders Carlsson  <andersca@apple.com>
1468
1469         Reviewed by Sam.
1470
1471         Add workaround for a Leopard bug which causes webarchive/test-xml-stylesheet.xml to fail.
1472
1473         * platform/network/mac/WebCoreURLResponse.mm:
1474         (-[NSURLResponse _webcore_MIMEType]):
1475
1476 2008-07-25  chris fleizach  <cfleizach@apple.com>
1477
1478         Reviewed by Beth Dakin
1479
1480         <rdar://problem/6084806> AX: REGRESSION: returned line number from TextArea is incorrect
1481
1482         Tests: accessibility/textarea-insertion-point-line-number.html
1483                accessibility/textarea-line-for-index.html
1484
1485         * page/AccessibilityObject.cpp:
1486         (WebCore::AccessibilityObject::lineForPosition):
1487         * page/AccessibilityObject.h:
1488         * page/mac/AccessibilityObjectWrapper.mm:
1489         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1490         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1491
1492 2008-07-25  Jacob Refstrup  <jacob.refstrup@hp.com>
1493
1494         Reviewed by mitz.
1495
1496         - fix https://bugs.webkit.org/show_bug.cgi?id=17906
1497         <rdar://problem/5805741> white-space: pre-wrap or -webkit-line-break: after-white-space text can overlap float at end of line
1498         
1499         Test: fast/block/float/editable-text-overlapping-float.html
1500
1501         * rendering/RenderBlock.h:
1502         * rendering/bidi.cpp:
1503         (WebCore::RenderBlock::skipTrailingWhitespace):
1504         - renamed to reflect usage and removed call to position floats; 
1505           they only get added
1506         (WebCore::RenderBlock::skipLeadingWhitespace):
1507         - renamed to reflect usage
1508         (WebCore::RenderBlock::findNextLineBreak):
1509         - use skipTrailingWhitespace at end of line (as before but with new
1510           name)
1511
1512 2008-07-25  Dan Bernstein  <mitz@apple.com>
1513
1514         Reviewed by Sam Weinig.
1515
1516         - Finish fixing https://bugs.webkit.org/show_bug.cgi?id=17097
1517           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
1518
1519         * platform/graphics/FontCache.cpp:
1520         (WebCore::FontDataCacheKeyTraits): Changed needsDestruction to true because FontPlatformData
1521         instances hold references to the platform resources and release them in the destructor.
1522         (WebCore::cTargetInactiveFontData): Added, replacing cInactiveFontDataPurgeRatio with the
1523         number of inactive FontData instances to leave in the cache when automatically purging.
1524         (WebCore::FontCache::getCachedFontData): Moved the code that checks if there are too many
1525         inactive FontData instances and if so calls purgeInactiveFontData() from here...
1526         (WebCore::FontCache::releaseFontData): ... to here.
1527         (WebCore::FontCache::purgeInactiveFontData): Added code to also purge the platform font data
1528         cache. All FontPlatformData instances that do not have entries in the font data cache are
1529         removed, thus releasing the platform resources (such as HFONTs and NSFonts).
1530
1531 2008-07-24  David Hyatt  <hyatt@apple.com>
1532
1533         Add support for an alternate syntax for CSS variables.  Testers on www-style will be able to try out
1534         both versions of the syntax in WebKit to help us make a decision regarding which one to go with.
1535
1536         Reviewed by Dan
1537
1538         Added fast/css/variables/alternate-syntax/ (duplicated all existing CSS variables tests)
1539
1540         * css/CSSGrammar.y:
1541         * css/CSSParser.cpp:
1542         (WebCore::CSSParser::createVariablesRule):
1543         (WebCore::CSSParser::checkForVariables):
1544         * css/CSSParser.h:
1545         * css/CSSParserValues.cpp:
1546         (WebCore::CSSParserValue::isVariable):
1547         (WebCore::CSSParserValueList::addValue):
1548         (WebCore::CSSParserValueList::deleteValueAt):
1549         (WebCore::CSSParserValue::createCSSValue):
1550         * css/CSSParserValues.h:
1551         * css/CSSPrimitiveValue.cpp:
1552         (WebCore::CSSPrimitiveValue::cleanup):
1553         (WebCore::CSSPrimitiveValue::getStringValue):
1554         (WebCore::CSSPrimitiveValue::cssText):
1555         (WebCore::CSSPrimitiveValue::parserValue):
1556         * css/CSSPrimitiveValue.h:
1557         (WebCore::CSSPrimitiveValue::):
1558         (WebCore::CSSPrimitiveValue::isVariable):
1559         * css/CSSStyleSelector.cpp:
1560         (WebCore::CSSStyleSelector::addMatchedDeclaration):
1561         * css/CSSVariablesRule.cpp:
1562         (WebCore::CSSVariablesRule::CSSVariablesRule):
1563         (WebCore::CSSVariablesRule::cssText):
1564         * css/CSSVariablesRule.h:
1565         (WebCore::CSSVariablesRule::create):
1566         * css/maketokenizer:
1567         * css/tokenizer.flex:
1568
1569 2008-07-25  Maxime Britto  <britto@apple.com>
1570
1571         Reviewed by Anders Carlsson.
1572
1573         <rdar://6102387> "REGRESSION: horizontal scroll with the mouse wheel is inverted on some subframes"
1574
1575         * page/EventHandler.cpp:
1576         (WebCore::EventHandler::handleWheelEvent): Inverted the scroll direction relative to the delta value (positive scrolls left,negative scrolls right)
1577
1578 2008-07-25  Adele Peterson  <adele@apple.com>
1579
1580         Another build fix.
1581
1582         * platform/win/PlatformScrollBarSafari.cpp:
1583         (WebCore::PlatformScrollbar::paint):
1584
1585 2008-07-25  Adele Peterson  <adele@apple.com>
1586
1587         More build fixes.
1588
1589         * platform/win/PlatformScrollBarSafari.cpp:
1590         (WebCore::PlatformScrollbar::paint):
1591
1592 2008-07-25  Adele Peterson  <adele@apple.com>
1593
1594         Build fix.
1595
1596         * platform/win/PlatformScrollBarSafari.cpp:
1597
1598 2008-07-24  Tor Arne Vestbø  <tavestbo@trolltech.com>
1599
1600         Reviewed by Simon
1601
1602         Provide access to the underlying QKeyEvent in PlatformKeyboardEvent.
1603
1604         * platform/PlatformKeyboardEvent.h: add accessor and member.
1605         * platform/qt/PlatformKeyboardEventQt.cpp: copy pointer in ctor.
1606         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1607
1608 2008-07-25  Simon Hausmann  <hausmann@webkit.org>
1609
1610         Fix linking of QtWebKit against the statically built JavaScriptCore
1611         library, under Windows/Mac we may need _d/_debug suffixes.
1612
1613         * WebCore.pro:
1614
1615 2008-07-25  Simon Hausmann  <hausmann@webkit.org>
1616
1617         Rubber-stamped by Lars.
1618
1619         Fix the Qt build by adapting to the latest ArgList API changes and
1620         replacing the inclusion of npapi.h in MainThreadScheduler with a forward
1621         declaration of NPP to avoid an include conflict. npapi.h on X11 includes
1622         X headers, which include wonderful defines such as "#define Status" that
1623         cause conflicts.
1624
1625         * bridge/qt/qt_runtime.cpp:
1626         (KJS::Bindings::findMethodIndex):
1627         (KJS::Bindings::QtRuntimeConnectionMethod::call):
1628         * plugins/PluginMainThreadScheduler.h:
1629
1630 2008-07-25  Simon Hausmann  <hausmann@webkit.org>
1631
1632         Discussed with and rubber-stamped by Lars.
1633
1634         Fix the build system for the Qt port.
1635
1636         Recent JavaScriptCore changes require the addition of JavaScriptCore/API to the
1637         include search path. With a build process that combines JavaScriptCore and
1638         WebCore in one build process/Makefile the existance of
1639         JavaScriptCore/API/Node.h and WebCore/dom/Node.h causes include conflicts.
1640
1641         This commit solves this by introducing a separate build of JavaScriptCore into
1642         a static library.
1643
1644         As a result of the split-up a race-condition due to broken dependencies of
1645         regular source files to header files of generated sources showed up very
1646         frequently when doing parallel builds (which the buildbot does). This commit at
1647         the same time tries to address the dependency problem by making the
1648         addExtraCompiler() function also generate a pseudo extra compiler that
1649         represents the header file output, so that qmake is aware of the creation of
1650         the header file for dependency calculation.
1651
1652         At the same time I removed a lot of cruft from the pro files to ease maintenance.
1653
1654         * WebCore.pro:
1655
1656 2008-07-24  kevino  <kevino@theolliviers.com>
1657
1658         wx build fix on Win for plugins coode.
1659
1660         * plugins/PluginDatabase.cpp:
1661         * plugins/PluginView.cpp:
1662         (WebCore::PluginView::PluginView):
1663         * plugins/PluginView.h:
1664
1665 2008-07-24  Sam Weinig  <sam@webkit.org>
1666
1667         Reviewed by Anders Carlsson.
1668
1669         Make isElementNode() non-virtual for a speedup on many benchmarks
1670         including 20% on http://ejohn.org/apps/fragment/.
1671
1672         - Replace Node::m_attrWasSpecifiedOrElementHasRareData with bits in 
1673           Element and Attr where space was available.  Use the new free bit
1674           to represent if an node is an element or not.
1675
1676         * dom/Attr.cpp:
1677         (WebCore::Attr::Attr):
1678         * dom/Attr.h:
1679         (WebCore::Attr::specified):
1680         (WebCore::Attr::setSpecified):
1681         * dom/ContainerNode.cpp:
1682         (WebCore::ContainerNode::ContainerNode):
1683         * dom/ContainerNode.h:
1684         * dom/Element.cpp:
1685         (WebCore::Element::Element):
1686         * dom/Element.h:
1687         (WebCore::Element::hasRareData):
1688         (WebCore::Element::setHasRareData):
1689         * dom/EventTargetNode.cpp:
1690         (WebCore::EventTargetNode::EventTargetNode):
1691         * dom/EventTargetNode.h:
1692         * dom/Node.cpp:
1693         (WebCore::Node::Node):
1694         * dom/Node.h:
1695         (WebCore::Node::isElementNode):
1696
1697 2008-07-24  Dan Bernstein  <mitz@apple.com>
1698
1699         Reviewed by Dave Hyatt.
1700
1701         - fix <rdar://problem/6082111> REGRESSION (r31876): Root element with percent height does not resize when resizing the window vertically
1702
1703         Not testable in DumpRenderTree
1704
1705         * rendering/RenderView.cpp:
1706         (WebCore::RenderView::layout): Ensured that all children with percentage
1707         heights get laid out again if the height changes.
1708
1709 2008-07-24  kevino  <kevino@theolliviers.com>
1710
1711         Windows build fix for wx. wx doesn't implement pan scrolling yet. 
1712
1713         * page/EventHandler.cpp:
1714         (WebCore::EventHandler::handleAutoscroll):
1715         (WebCore::EventHandler::autoscrollTimerFired):
1716         (WebCore::EventHandler::stopAutoscrollTimer):
1717         (WebCore::EventHandler::handleMousePressEvent):
1718
1719 2008-07-24  David Hyatt  <hyatt@apple.com>
1720
1721         Fix for bug 18673, crash when using full page zoom on generated content.  Don't call
1722         intrinsicSizeChanged when we are first setting our style.
1723
1724         Reviewed by olliej
1725
1726         * ChangeLog:
1727         * rendering/RenderReplaced.cpp:
1728         (WebCore::RenderReplaced::setStyle):
1729
1730 2008-07-24  Julien Chaffraix  <jchaffraix@webkit.org>
1731
1732         Reviewed by Eric.
1733
1734         Bug 20053: .in files should use a custom format instead of XML
1735
1736         - Remove our XML parser perl module (XML::Tiny)
1737
1738         - Add a custom perl parser
1739
1740         - Move XML files to the new format
1741
1742         * bindings/scripts/InFilesParser.pm: Added.
1743         * bindings/scripts/XMLTiny.pm: Removed.
1744         * dom/make_names.pl: Switched to our new
1745         parser.
1746
1747         * html/HTMLAttributeNames.in: Switched to
1748         our custom format.
1749         * html/HTMLTagNames.in: Ditto.
1750         * svg/svgattrs.in: Ditto.
1751         * svg/svgtags.in: Ditto.
1752         * svg/xlinkattrs.in: Ditto.
1753         * xml/xmlattrs.in: Ditto.
1754
1755 2008-07-23  Julien Chaffraix  <jchaffraix@webkit.org>
1756
1757         Reviewed by Eric.
1758
1759         Bug 19588: CRASH doing open() on destroyed window
1760         https://bugs.webkit.org/show_bug.cgi?id=19588
1761
1762         Add frame's page null check as it could have been
1763         detached from the page.
1764
1765         Test: fast/frames/crash-removed-iframe.html
1766
1767         * bindings/js/JSDOMWindowBase.cpp:
1768         (WebCore::windowProtoFuncOpen):
1769         * page/FrameTree.cpp:
1770         (WebCore::FrameTree::find):
1771
1772 2008-07-23  Dan Bernstein  <mitz@apple.com>
1773
1774         Reviewed by Alexey Proskuryakov.
1775
1776         - fix a leak when using hex color values in CSS variables
1777
1778         - fix CSSOM access to hex color values in variables declarations
1779
1780         Test: fast/css/variables/color-hex-test.html
1781
1782         Added a new unit/type, CSS_PARSER_HEXCOLOR, which serves as the unit for
1783         CSSParserValues coming from colors in hex notation. CSSParserValues can
1784         no longer have CSS_RGBCOLOR as their unit. CSS_PARSER_HEXCOLOR is also
1785         used as the type for CSSValues in CSS variables declarations where the
1786         parser value was a hex color. However the type of all other color
1787         CSSValues remains CSS_RGBCOLOR.
1788
1789         * css/CSSGrammar.y: Changed to use the new CSS_PARSER_HEXCOLOR value
1790         for color values in hex notation.
1791         * css/CSSParser.cpp:
1792         (WebCore::CSSParser::parseColorFromValue): Updated for the new unit.
1793         * css/CSSParserValues.cpp:
1794         (WebCore::CSSParserValue::createCSSValue): Ditto.
1795         * css/CSSPrimitiveValue.cpp:
1796         (WebCore::CSSPrimitiveValue::cleanup): Fixed the leak by deref()ing the
1797         string containing the color.
1798         (WebCore::CSSPrimitiveValue::cssText): Added support for
1799         CSS_PARSER_HEXCOLOR for when serializing variable values.
1800         (WebCore::CSSPrimitiveValue::parserValue): Updated for the new unit.
1801         * css/CSSPrimitiveValue.h:
1802         (WebCore::CSSPrimitiveValue::): Added a new unti, CSS_PARSER_HEXCOLOR.
1803
1804 2008-07-23  Beth Dakin  <bdakin@apple.com>
1805
1806         Reviewed by Dan Bernstein.
1807
1808         Fix for <rdar://problem/5997215> display: table-row-group 
1809         for :before content causes a crash
1810  
1811         The actual bug fix here is to ddd the generated content container 
1812         as a child before adding any of the generated content to the 
1813         container. There are two correctness fixes as well that deal with 
1814         style changes and correctly.
1815
1816         This patch also makes Node::diff() a static function.
1817
1818         * dom/Node.cpp:
1819         (WebCore::Node::diff):
1820         * dom/Node.h:
1821         (WebCore::Node::):
1822         (WebCore::Node::recalcStyle):
1823         * rendering/RenderContainer.cpp:
1824         (WebCore::findBeforeAfterParent):
1825         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
1826         * svg/SVGUseElement.cpp:
1827         (WebCore::SVGUseElement::recalcStyle):
1828
1829 2008-07-23  Timothy Hatcher  <timothy@apple.com>
1830
1831         Updates the elements DOM tree when nodes are added or removed from
1832         the inspected document.
1833
1834         https://bugs.webkit.org/show_bug.cgi?id=6590
1835         <rdar://problem/5712921>
1836
1837         Reviewed by Adam Roben.
1838
1839         * loader/FrameLoader.cpp:
1840         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Added a call to
1841         InspectorController::inspectedWindowScriptObjectCleared.
1842         * page/InspectorController.cpp:
1843         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
1844         Calls the WebInspector.inspectedWindowCleared script function.
1845         * page/InspectorController.h:
1846         * page/inspector/ElementsPanel.js:
1847         (WebInspector.ElementsPanel): Create the event listener callback wrappers.
1848         (WebInspector.ElementsPanel.prototype.show): Call _updateModifiedNodes if
1849         there are any recently modified nodes.
1850         (WebInspector.ElementsPanel.prototype.reset): Remove previous mutation event listeners.
1851         Adds a check for InspectorController.isWindowVisible to prevent adding
1852         event listeners when the window isn't visible.
1853         (WebInspector.ElementsPanel.prototype.inspectedWindowCleared): 
1854         (WebInspector.ElementsPanel.prototype._addMutationEventListeners): Add DOMNodeInserted,
1855         DOMNodeRemoved and DOMContentLoaded event listeners to the passed in window or window's document.
1856         (WebInspector.ElementsPanel.prototype._removeMutationEventListeners): Removes the event listeners
1857         added in _addMutationEventListeners.
1858         (WebInspector.ElementsPanel.prototype.updateMutationEventListeners): Call _addMutationEventListeners
1859         again to reinstate the listners if the document changed or window cleared them.
1860         (WebInspector.ElementsPanel.prototype.registerMutationEventListeners): Append the window to
1861         _mutationMonitoredWindows and call _addMutationEventListeners.
1862         (WebInspector.ElementsPanel.prototype.unregisterMutationEventListeners): Remove the window from
1863         _mutationMonitoredWindows and call _removeMutationEventListeners.
1864         (WebInspector.ElementsPanel.prototype.unregisterAllMutationEventListeners): Call
1865         _removeMutationEventListeners for all windows in _mutationMonitoredWindows and
1866         clear _mutationMonitoredWindows.
1867         (WebInspector.ElementsPanel.prototype._contentLoaded): Append the node and parent
1868         to the recentlyModifiedNodes array. Call _updateModifiedNodesSoon if visible.
1869         (WebInspector.ElementsPanel.prototype._nodeInserted): Ditto.
1870         (WebInspector.ElementsPanel.prototype._nodeRemoved): Ditto.
1871         (WebInspector.ElementsPanel.prototype._updateModifiedNodesSoon): Call
1872         _updateModifiedNodes on a zero timeout.
1873         (WebInspector.ElementsPanel.prototype._updateModifiedNodes): Iterate over
1874         the recentlyModifiedNodes array and call updateChildren on all the parent
1875         elements that had changes. Only calls updateChildren once per parent element.
1876         (WebInspector.ElementsPanel.prototype._isAncestorIncludingParentFrames): Return
1877         false if the nodes are the same. Return true if the nodes are the same while
1878         looking at ancestor frame elements. THis use to return false, which was incorrect.
1879         (WebInspector.DOMNodeTreeElement.prototype.onpopulate): Call updateChildren.
1880         (WebInspector.DOMNodeTreeElement.prototype.updateChildren): Copied from
1881         onpopulate and changed to rebuild the children elements by adding new children,
1882         moving existing children and removed old children.
1883         (WebInspector.DOMNodeTreeElement.prototype.onexpand): If the node has a contentDocument
1884         call registerMutationEventListeners to track any mutations.
1885         * page/inspector/inspector.js:
1886         (WebInspector.inspectedWindowCleared): Call ElementsPanel.inspectedWindowCleared.
1887         * page/inspector/treeoutline.js:
1888         (TreeElement.prototype.get hasChildren): Return _hasChildren.
1889         (TreeElement.prototype.set hasChildren): Set _hasChildren and update the className.
1890         (TreeElement.prototype.hasAncestor): Return true if the element has the passed in ancestor.
1891         (TreeElement.prototype.expand): Fix an exception that can happen if expand is
1892         called before _attach.
1893         * WebCore/manual-tests/inspector/dom-mutation.html: Added.
1894         * WebCore/manual-tests/inspector/resources/mutate-frame-2.html: Added.
1895         * WebCore/manual-tests/inspector/resources/mutate-frame.html: Added.
1896
1897 2008-07-22  Timothy Hatcher  <timothy@apple.com>
1898
1899         Fix an exception that occurred when double clicking the closing tag
1900         of an element in the DOM tree.
1901
1902         Reviewed by Anders Carlsson.
1903
1904         * page/inspector/ElementsPanel.js:
1905         (WebInspector.ElementsPanel.prototype._ondblclick): Null check
1906         element.ondblclick.
1907
1908 2008-07-22  Timothy Hatcher  <timothy@apple.com>
1909
1910         Fix a regression where elements in subframes would not be revealed
1911         or selected when inspected from the context menu. This was caused by
1912         JavaScript equality is not being true for JSInspectedObjectWrappers
1913         of the same node wrapped with different global ExecStates. This change
1914         adds a helper function that uses isSameNode to compare wrapped nodes.
1915
1916         https://bugs.webkit.org/show_bug.cgi?id=19377
1917
1918         Reviewed by Adam Roben.
1919
1920         * page/inspector/ElementsPanel.js:
1921         (WebInspector.ElementsPanel.prototype.set rootDOMNode): Use objectsAreSame
1922         to compare nodes.
1923         (WebInspector.ElementsPanel.prototype.set focusedDOMNode): Ditto.
1924         (WebInspector.ElementsPanel.prototype.set hoveredDOMNode): Ditto. 
1925         (WebInspector.ElementsPanel.prototype._updateModifiedNodes): Ditto.
1926         (WebInspector.ElementsPanel.prototype.revealNode): Ditto.
1927         (WebInspector.ElementsPanel.prototype.updateBreadcrumb): Ditto.
1928         (WebInspector.DOMNodeTreeElement.prototype.updateChildren): Ditto.
1929         * page/inspector/treeoutline.js:
1930         (TreeOutline.prototype.findTreeElement): Add an equal argument
1931         to accept a functions to compare two representedObjects. Defaults
1932         to strict equal if not supplied. All current clients pass objectsAreSame.
1933         * page/inspector/utilities.js:
1934         (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray): Use objectsAreSame
1935         to compare nodes.
1936         (Node.prototype.enclosingNodeOrSelfWithClass): Ditto.
1937         (Element.prototype.query): Use the ownerDocument of the node, not document.
1938         (objectsAreSame): Added. Compares strict equal first, then uses isSameNode if
1939         it exists on both objects.
1940         (isAncestorNode): Use objectsAreSame to compare nodes.
1941         (firstCommonNodeAncestor): Ditto.
1942         (traverseNextNode): Ditto.
1943
1944 2008-07-21  Timothy Hatcher  <timothy@apple.com>
1945
1946         Added InspectorController.isWindowVisible to the JavaScript class
1947         for use in an upcoming change. This will allow the Inspector to not
1948         perform selective actions while the window is hidden.
1949
1950         Reviewed by Adam Roben.
1951
1952         * page/InspectorController.cpp:
1953         (WebCore::isWindowVisible): Call InspectorController::windowVisible.
1954         (WebCore::InspectorController::windowScriptObjectAvailable): Add
1955         the isWindowVisible function to the JavaScript class.
1956
1957 2008-07-21  Timothy Hatcher  <timothy@apple.com>
1958
1959         Added TreeOutline.removeChildAtIndex and TreeElement.removeChildAtIndex
1960         for efficiency of callers that know the index of the child. This
1961         will be used in an upcoming change.
1962
1963         Reviewed by Adam Roben.
1964
1965         * page/inspector/treeoutline.js:
1966         (TreeOutline._removeChildAtIndex): Renamed from _removeChild
1967         and modified to take an index.
1968         (TreeOutline._removeChild): Call _removeChildAtIndex with the
1969         child index found using indexOf.
1970         (TreeOutline.prototype.removeChildAtIndex): Added. Calls
1971         TreeOutline._removeChildAtIndex.
1972         (TreeElement.prototype.removeChildAtIndex): Ditto.
1973
1974 2008-07-21  Timothy Hatcher  <timothy@apple.com>
1975
1976         Fixes a regression where TreeOutline.findTreeElement would
1977         return the parent TreeElement of the representedObject instead
1978         of the TreeElement for the representedObject. Regressed with the
1979         fix for bug 19164.
1980
1981         Reviewed by Adam Roben.
1982
1983         * page/inspector/treeoutline.js:
1984         (TreeOutline.prototype.findTreeElement): When performing a slow search,
1985         do a final search for representedObject instead of returning item, which
1986         is the parent of representedObject.
1987
1988 2008-07-23  Adele Peterson  <adele@apple.com>
1989
1990         Reviewed by Adam.
1991
1992         WebCore part of fix for <rdar://problem/5698672>  Add drawing callback for a WebKit app to draw its own scrollbars
1993
1994         * WebCore.base.exp: Added symbols.
1995         * page/Chrome.cpp:
1996         (WebCore::ChromeClient::paintCustomScrollbar): Added. Calls up to WebKit, which will call a new delegate method.
1997         (WebCore::ChromeClient::paintCustomScrollCorner): ditto.
1998         * page/ChromeClient.h:
1999         * page/Settings.cpp:
2000         (WebCore::Settings::Settings): Added the ability to store whether or not the application has decided to draw its own scrollbars.
2001         (WebCore::Settings::setShouldPaintCustomScrollbars):
2002         * page/Settings.h: (WebCore::Settings::shouldPaintCustomScrollbars):
2003         * platform/ScrollBar.h: Moved ScrollbarControlSize enum to ScrollTypes.h
2004         * platform/ScrollTypes.h: (WebCore::): Moved some existing types, and added new ones to be used in WebCore in WebKit.
2005         * platform/win/PlatformScrollBar.h: Moved ScrollbarPart enum to ScrollTypes.h
2006         * platform/win/PlatformScrollBarSafari.cpp:
2007         (WebCore::ScrollbarPartToScrollBarPiece): Added helper function.
2008         (WebCore::ScrollBarPieceMaskToScrollbarControlPartMask): ditto.
2009         (WebCore::ScrollbarControlStateFromThemeState): ditto.
2010         (WebCore::PlatformScrollbar::paint): Consolidated painting so the logic for the individual pieces is all in one place.
2011          Added new code to paint the custom scrollbars if necessary.
2012         * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::paint): Added code to paint the custom scroll corner if necessary.
2013
2014 2008-07-23  Sam Weinig  <sam@webkit.org>
2015
2016         Reviewed by Anders Carlsson.
2017
2018         Cleanup and pack the member variables in Node.
2019
2020         * bindings/js/JSNodeCustom.cpp:
2021         (WebCore::JSNode::mark):
2022         * dom/Attr.cpp:
2023         (WebCore::Attr::Attr):
2024         * dom/Attr.h:
2025         (WebCore::Attr::specified):
2026         (WebCore::Attr::setSpecified):
2027         * dom/ContainerNode.cpp:
2028         (WebCore::ContainerNode::setFocus):
2029         * dom/Document.cpp:
2030         (WebCore::Document::adoptNode):
2031         * dom/Element.cpp:
2032         (WebCore::Element::~Element):
2033         (WebCore::Element::rareData):
2034         (WebCore::Element::createRareData):
2035         * dom/Element.h:
2036         (WebCore::Element::hasRareData):
2037         (WebCore::Element::setHasRareData):
2038         * dom/Node.h:
2039         (WebCore::Node::setIsLink):
2040         (WebCore::Node::inSubtreeMark):
2041         (WebCore::Node::setInSubtreeMark):
2042         (WebCore::Node::attrWasSpecifiedOrElementHasRareData):
2043         (WebCore::Node::setAttrWasSpecifiedOrElementHasRareData):
2044         * html/HTMLAnchorElement.cpp:
2045         (WebCore::HTMLAnchorElement::supportsFocus):
2046         (WebCore::HTMLAnchorElement::isFocusable):
2047         (WebCore::HTMLAnchorElement::defaultEventHandler):
2048         (WebCore::HTMLAnchorElement::parseMappedAttribute):
2049         (WebCore::HTMLAnchorElement::isLiveLink):
2050         * html/HTMLImageElement.cpp:
2051         (WebCore::HTMLImageElement::parseMappedAttribute):
2052         * html/HTMLInputElement.cpp:
2053         (WebCore::HTMLInputElement::setInputType):
2054         * html/HTMLTableElement.cpp:
2055         (WebCore::HTMLTableElement::attach):
2056         * svg/SVGAElement.cpp:
2057         (WebCore::SVGAElement::svgAttributeChanged):
2058         (WebCore::SVGAElement::defaultEventHandler):
2059
2060 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
2061
2062         Reviewed by Adele.
2063
2064         Follow-up fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
2065
2066         Associate MovieControllers with Movies to support all of the media types QuickTime is able to play in standalone media documents.
2067
2068         * platform/graphics/win/QTMovieWin.cpp:
2069         (QTMovieWinPrivate::QTMovieWinPrivate):
2070         (QTMovieWinPrivate::~QTMovieWinPrivate):
2071         (QTMovieWinPrivate::task):
2072         (QTMovieWinPrivate::createMovieController):
2073         (QTMovieWinPrivate::createGWorld):
2074         (QTMovieWinPrivate::setSize):
2075         (QTMovieWinPrivate::deleteGWorld):
2076         (QTMovieWin::play):
2077         (QTMovieWin::pause):
2078         (QTMovieWin::setRate):
2079         (QTMovieWin::setCurrentTime):
2080         (QTMovieWin::load):
2081
2082 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
2083
2084         Reviewed by Adele.
2085
2086         Added a debug mode for viewing frames per second for videos.  This is controlled by two 
2087         independent compiler flags DRAW_FRAME_RATE in MediaPlayerPrivateQTKit.h and MediaPlayerPrivateQuickTimeWin.h.
2088         Unless either flags is turned on there is no change to the code for video frame drawing.
2089
2090         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2091         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2092         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2093         (WebCore::MediaPlayerPrivate::play):
2094         (WebCore::MediaPlayerPrivate::pause):
2095         (WebCore::MediaPlayerPrivate::didEnd):
2096         (WebCore::MediaPlayerPrivate::repaint):
2097         (WebCore::MediaPlayerPrivate::paint):
2098         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2099         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2100         (WebCore::MediaPlayerPrivate::play):
2101         (WebCore::MediaPlayerPrivate::pause):
2102         (WebCore::MediaPlayerPrivate::didEnd):
2103         (WebCore::MediaPlayerPrivate::paint):
2104         (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
2105         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2106
2107 2008-07-23  Adele Peterson  <adele@apple.com>
2108
2109         Reviewed by Sam.
2110
2111         Fix for <rdar://problem/6080634> use lower quality CG interpolation in MediaPlayerPrivateQTKit to improve performance
2112
2113         * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage):
2114         Call setImageInterpolationQuality(InterpolationNone) instead of setUseLowQualityImageInterpolation(true).
2115         * platform/graphics/GraphicsContext.h:
2116         (WebCore::): Added InterpolationQuality enum.
2117         (WebCore::GraphicsContext::setImageInterpolationQuality): Renamed from setUseLowQualityImageInterpolation.
2118         The implementation was always setting the quality to "none", and now we want to distinguish between "none" and "low".
2119         (WebCore::GraphicsContext::imageInterpolationQuality): Renamed from useLowQualityImageInterpolation.
2120         * platform/graphics/cg/GraphicsContextCG.cpp:
2121         (WebCore::GraphicsContext::setImageInterpolationQuality): Added.
2122         (WebCore::GraphicsContext::imageInterpolationQuality): Added.
2123         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::paint):
2124         Calls setImageInterpolationQuality(InterpolationLow) which will improve the painting performance without degrading quality too much.
2125
2126 2008-07-23  Sam Weinig  <sam@webkit.org>
2127
2128         Reviewed by Anders Carlsson.
2129
2130         Remove extraneous allocations by using equalIgnoringCase rather than
2131         String::lower.
2132
2133         * dom/StyledElement.cpp:
2134         (WebCore::StyledElement::addCSSColor):
2135         * html/HTMLCollection.cpp:
2136         (WebCore::HTMLCollection::checkForNameMatch):
2137         * html/HTMLFormCollection.cpp:
2138         (WebCore::HTMLFormCollection::getNamedFormItem):
2139         * html/HTMLLinkElement.cpp:
2140         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2141         * html/HTMLObjectElement.cpp:
2142         (WebCore::HTMLObjectElement::containsJavaApplet):
2143         * html/PreloadScanner.cpp:
2144         (WebCore::PreloadScanner::emitCSSRule):
2145         * loader/FrameLoader.cpp:
2146         (WebCore::FrameLoader::createJavaAppletWidget):
2147         * page/DOMSelection.cpp:
2148         (WebCore::DOMSelection::modify):
2149         * rendering/RenderPartObject.cpp:
2150         (WebCore::RenderPartObject::updateWidget):
2151
2152 2008-07-23  Maxime Britto  <britto@apple.com>
2153
2154         Reviewed by Adam Roben.
2155
2156         <rdar://6092952> "REGRESSION: Crash beneath EventHandler::stopAutoscrollTimer() when closing Gmail"
2157         Add a check for the m_page member value before asking for page()->mainFrame()
2158
2159         * page/EventHandler.cpp:
2160         (WebCore::EventHandler::stopAutoscrollTimer):
2161
2162 2008-07-23  Kevin Calhoun  <kcalhoun@apple.com>
2163
2164        Reviewed by Adele.
2165
2166        Fix for <rdar://problem/5710065> QT movies should be inactive when opened
2167
2168        Implemented deferral of set-up of video rendering on Mac until the ready state is Loaded and 
2169        until after movie tracks of unsupported types have been disabled, to make sure they never draw.
2170
2171         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2172         (WebCore::MediaPlayerPrivate::load):
2173         (WebCore::MediaPlayerPrivate::updateStates):
2174         (WebCore::MediaPlayerPrivate::setVisible):
2175
2176 2008-07-22  Maxime Britto  <britto@apple.com>
2177
2178         Reviewed by John Sullivan.
2179
2180         <rdar://problem/6083116>
2181         When pan-scrolling, Back then Forward causes pan-scrolling to start again
2182
2183         * page/Frame.cpp:
2184         (WebCore::Frame::clearTimers): Ask to stop the autoscroll timer when we clear the timers from the frame
2185         * loader/FrameLoader.cpp:
2186         (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.
2187
2188 2008-07-22  Geoffrey Garen  <ggaren@apple.com>
2189
2190         Reviewed by Oliver Hunt and Sam Weinig.
2191
2192         Next step toward putting doubles in registers: Prepare the Register class
2193         and its clients for registers that don't contain JSValue*s.
2194         
2195 2008-07-22  Sam Weinig  <sam@webkit.org>
2196
2197         Reviewed by Mark Rowe.
2198
2199         <rdar://problem/5788451> toDataURL not implemented for Windows (need mapping of MIME type to UTI)
2200         Add additional support for JPEG and GIF for toDataURL encoding canvases.
2201
2202         * platform/MIMETypeRegistry.cpp:
2203         (WebCore::initializeSupportedImageMIMETypesForEncoding):
2204         * platform/graphics/cg/ImageBufferCG.cpp:
2205         (WebCore::utiFromMIMEType):
2206
2207 2008-07-22  Chris Fleizach  <cfleizach@apple.com>
2208
2209         Reviewed by Dave Hyatt.
2210
2211         <rdar://problem/6004877> internal anchors on this page are not showing up in the AXLinkedUIElements
2212         Test: accessibility/internal-link-anchors2.html
2213
2214         * page/AccessibilityRenderObject.cpp:
2215         (WebCore::AccessibilityRenderObject::internalLinkElement):
2216
2217 2008-07-22  Anders Carlsson  <andersca@apple.com>
2218
2219         Reviewed by Adam.
2220
2221         Allocate the empty StringImpl from the heap.
2222         
2223         * platform/text/StringImpl.cpp:
2224         (WebCore::StringImpl::empty):
2225
2226 2008-07-21  Kevin McCullough  <kmccullough@apple.com>
2227
2228         Reviewed by Tim.
2229
2230         <rdar://problem/5951532> JSProfiler: Implement heavy (or bottom-up)
2231         view (19228)
2232         - Implement UI for Heavy (Bottom Up) view.
2233
2234         * English.lproj/localizedStrings.js:
2235         * page/JavaScriptProfile.cpp: Expose the ability to get a heavy/tree
2236         profile from a profile to the Web Inspector's JavaScript.
2237         (WebCore::getHeavyProfileCallback):
2238         (WebCore::getTreeProfileCallback):
2239         (WebCore::ProfileClass):
2240         * page/inspector/ProfileView.js: Implement the dropdown for changing
2241         profile views.
2242         * page/inspector/inspector.css:
2243
2244 2008-07-22  Alexey Proskuryakov  <ap@webkit.org>
2245
2246         Reviewed by Adam Roben.
2247
2248         <rdar://problem/5955602> WebKit should support charset name x-windows-949
2249
2250         Test: fast/encoding/char-decoding.html
2251
2252         * platform/text/TextCodecICU.cpp:
2253         (WebCore::TextCodecICU::registerExtendedEncodingNames): Added support for this name for
2254         Firefox compatibility.
2255
2256 2008-07-22  Gavin Barraclough  <barraclough@apple.com>
2257
2258         Reviewed by Alexey Proskuryakov.
2259
2260         New test to check that arrays fail gracefully (throw an out of memory exception)
2261         when the vector grows to large.
2262
2263         * manual-tests/array-out-of-memory.html: Added.
2264
2265 2008-07-21  Alexey Proskuryakov  <ap@webkit.org>
2266
2267         Reviewed by Dan Bernstein.
2268
2269         https://bugs.webkit.org/show_bug.cgi?id=20117
2270         setBaseAndExtent fails to reverse the current selection
2271
2272         Test: editing/selection/setBaseAndExtent-revert-selection.html
2273
2274         * editing/Selection.h: (WebCore::operator==): Compare direction, too.
2275
2276 2008-07-21  Julien Chaffraix  <jchaffraix@webkit.org>
2277
2278         Reviewed by Sam Weinig.
2279
2280         Bug 19919: Add selectors' string parsing in CSSParser
2281         https://bugs.webkit.org/show_bug.cgi?id=19919
2282
2283         No functional change.
2284
2285         * css/CSSGrammar.y: Added entry for parsing only a selector.
2286         * css/CSSParser.cpp:
2287         (WebCore::CSSParser::CSSParser):
2288         (WebCore::CSSParser::parseSelector):
2289         * css/CSSParser.h: Added m_floatingSelector to hold the
2290         Selector parsed in parseSelector.
2291
2292         * css/tokenizer.flex: Added "@-webkit-selector" token.
2293         * dom/Node.cpp:
2294         (WebCore::Node::querySelector):
2295         (WebCore::Node::querySelectorAll): Switched to parseSelector
2296         method.
2297
2298 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
2299
2300         Reviewed by Adele.
2301
2302         Fix for <rdar://problem/6081160> REGRESSION: Hang loading many pages if QuickTime isn't installed
2303
2304         * platform/graphics/win/QTMovieWin.cpp:
2305         (initializeSupportedTypes): Do a Quicktime version minimum version check.
2306         (QTMovieWin::initializeQuickTime): Store the Quicktime version globally so in can be used in initializeSupportedTypes as well.
2307
2308 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
2309
2310         Reviewed by Adele.
2311
2312         Fix for <rdar://problem/5713336> <video> and <audio> elements that use a autoplay attribute fail to start playing when returning back to page
2313
2314         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::willSaveToCache): Reset the ready state to DATA_UNAVAILABLE when saving to the cache
2315         so that everything starts back up normally when the page is retrieved from the cache.
2316
2317 2008-07-21  Sam Weinig  <sam@webkit.org>
2318
2319         Reviewed by Mark Rowe.
2320
2321         Remove unused interface declaration.
2322
2323         * platform/network/mac/ResourceHandleMac.mm:
2324
2325 2008-07-21  Mark Rowe  <mrowe@apple.com>
2326
2327         Reviewed by Sam Weinig.
2328
2329         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
2330
2331         * Configurations/Version.xcconfig:
2332         * Info.plist:
2333
2334 2008-07-21  Kevin Calhoun  <kcalhoun@apple.com>
2335
2336         Reviewed by Adele.
2337
2338         Fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
2339
2340         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::inMediaDocument): Added.
2341         * platform/graphics/MediaPlayer.h:
2342         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates):
2343         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::updateStates):
2344
2345 2008-07-21  Anders Carlsson  <andersca@apple.com>
2346
2347         Reviewed by Jon.
2348
2349         Don't allow requests to be made when the document loader is stopping all loaders.
2350
2351         * plugins/PluginView.cpp:
2352         (WebCore::PluginView::load):
2353
2354 2008-07-20  Maxime Britto  <britto@apple.com>
2355
2356         Reviewed by John Sullivan.
2357
2358         [PFR] <rdar://problem/6080639> New middle click scrolling speed seems much slower than in FF
2359         Accelerate and enhance the smoothness of the pan scrollling.
2360
2361         * page/EventHandler.cpp: Changed the TimerInterval from 0.1 to 0.05. The scrolling is way more fluid like this.
2362         * rendering/RenderLayer.cpp: 
2363         (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.
2364
2365 2008-07-18  David Hyatt  <hyatt@apple.com>
2366
2367         Change the cached clip rects to not assume they should be infinite when the root layer has been
2368         shifted as the result of a transformation.
2369
2370         Reviewed by Maciej
2371
2372         Added fast/transforms/overflow-with-transform.html
2373
2374         * rendering/RenderLayer.cpp:
2375         (WebCore::RenderLayer::calculateClipRects):
2376
2377 2008-07-21  Rob Buis  <buis@kde.org>
2378
2379         Reviewed by Mitz.
2380
2381         https://bugs.webkit.org/show_bug.cgi?id=19966
2382         CSS variables crash when using hex notation for colors
2383
2384         Support hex colors as values for the css variables.
2385
2386         Test: fast/css/variables/color-hex-test.html
2387
2388         * css/CSSParserValues.cpp:
2389         (WebCore::CSSParserValue::createCSSValue):
2390         * css/CSSPrimitiveValue.cpp:
2391         (WebCore::CSSPrimitiveValue::parserValue):
2392         * css/CSSVariablesRule.cpp:
2393
2394 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
2395
2396         Reviewed by Holger.
2397
2398         Fix drawing of windowless plugins on Windows with the Qt port by
2399         avoiding the reset of the translation of the HDC to 0, 0.
2400
2401         * plugins/win/PluginViewWin.cpp:
2402         (WebCore::PluginView::paint):
2403
2404 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
2405
2406         Reviewed by Holger.
2407
2408         Fix rendering of transparent windowless netscape plugins by passing
2409         the right conversion parameter to QPixmap::fromWinHBITMAP when
2410         converting from HBITMAP to QPixmap.
2411
2412         * platform/graphics/qt/GraphicsContextQt.cpp:
2413         (WebCore::GraphicsContext::releaseWindowsContext):
2414
2415 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
2416
2417         Reviewed by Holger.
2418
2419         In the implementation of getValue for NPNVnetscapeWindow treat
2420         windowHandleForPlatformWidget on the return value of
2421         containingWindow() to receive the correct HWND for the Qt port.
2422
2423         * plugins/win/PluginViewWin.cpp:
2424         (WebCore::PluginView::getValue):
2425
2426 2008-07-21  Simon Hausmann  <hausmann@webkit.org>
2427
2428         Reviewed by Holger.
2429
2430         Fix windowHandleForPlatformWidget to return 0 as HWND if we don't have
2431         a QWidget. This can happen on page/view destruction for example.
2432
2433         * plugins/win/PluginViewWin.cpp:
2434         (windowHandleForPlatformWidget):
2435
2436 2008-07-20  Steve Falkenburg  <sfalken@apple.com>
2437
2438         Touch file to force rebuild for vsprops change.
2439
2440         * WebCorePrefix.h:
2441
2442 2008-07-20  Sam Weinig  <sam@webkit.org>
2443
2444         Remove extra space Oliver Hunt left in.
2445
2446         * page/Console.cpp:
2447         (WebCore::Console::reportException):
2448         (WebCore::Console::reportCurrentException):
2449
2450 2008-07-20  Oliver Hunt  <oliver@apple.com>
2451
2452         Reviewed by Dan Bernstein.
2453
2454         Bug 19757: Crash when an ondragstart handler hides the element
2455         <https://bugs.webkit.org/show_bug.cgi?id=19757>
2456
2457         The solution to this is problem is just to null check the renderer
2458         immediately before launching the system drag, and terminate the
2459         drag if the renderer is gone.
2460
2461         * page/EventHandler.cpp:
2462         (WebCore::EventHandler::handleDrag):
2463
2464 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
2465
2466         Reviewed by Oliver.
2467
2468         Fixes: https://bugs.webkit.org/show_bug.cgi?id=12171
2469
2470         Remove manual SVG property <-> XML attribute synchronization in SVGPolyElement.
2471         Added svg/custom/poly-points-attribute-changes.svg (testcase from Rob)
2472
2473         * svg/SVGPointList.cpp:
2474         (WebCore::SVGPointList::valueAsString):
2475         * svg/SVGPointList.h:
2476         (WebCore::SVGPointList::create):
2477         * svg/SVGPolyElement.cpp:
2478         (WebCore::SVGPolyElement::SVGPolyElement):
2479         (WebCore::SVGPolyElement::svgAttributeChanged):
2480         (WebCore::SVGPolyElement::updateAnimatedSVGAttribute):
2481         * svg/SVGPolyElement.h:
2482
2483 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
2484
2485         Reviewed by Oliver.
2486
2487         Cleanup JSSVGPODTypeWrapper code.
2488
2489         Rename: JSSVGPODTypeWrapperCreatorReadOnly -> JSSVGStaticPODTypeWrapper
2490                 JSSVGPODTypeWrapperReadWrite       -> JSSVGDynamicPODTypeWrapper
2491                 JSSVGPODTypeWrapperCache           -> JSSVGDynamicPODTypeWrapperCacheCache
2492
2493         No functional changes.
2494
2495         * bindings/js/JSSVGMatrixCustom.cpp:
2496         (WebCore::JSSVGMatrix::multiply):
2497         (WebCore::JSSVGMatrix::inverse):
2498         (WebCore::JSSVGMatrix::translate):
2499         (WebCore::JSSVGMatrix::scale):
2500         (WebCore::JSSVGMatrix::scaleNonUniform):
2501         (WebCore::JSSVGMatrix::rotate):
2502         (WebCore::JSSVGMatrix::rotateFromVector):
2503         (WebCore::JSSVGMatrix::flipX):
2504         (WebCore::JSSVGMatrix::flipY):
2505         (WebCore::JSSVGMatrix::skewX):
2506         (WebCore::JSSVGMatrix::skewY):
2507         * bindings/js/JSSVGPODTypeWrapper.h:
2508         (WebCore::JSSVGDynamicPODTypeWrapper::create):
2509         (WebCore::JSSVGDynamicPODTypeWrapper::operator PODType):
2510         (WebCore::JSSVGDynamicPODTypeWrapper::JSSVGDynamicPODTypeWrapper):
2511         (WebCore::JSSVGStaticPODTypeWrapper::create):
2512         (WebCore::JSSVGStaticPODTypeWrapper::operator PODType):
2513         (WebCore::JSSVGStaticPODTypeWrapper::JSSVGStaticPODTypeWrapper):
2514         (WebCore::JSSVGPODTypeWrapperCreatorForList::create):
2515         (WebCore::JSSVGPODTypeWrapperCreatorForList::operator PODType):
2516         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
2517         (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo):
2518         (WebCore::PODTypeWrapperCacheInfo::operator==):
2519         (WebCore::PODTypeWrapperCacheInfoHash::hash):
2520         (WebCore::PODTypeWrapperCacheInfoHash::equal):
2521         (WebCore::PODTypeWrapperCacheInfoTraits::emptyValue):
2522         (WebCore::PODTypeWrapperCacheInfoTraits::constructDeletedValue):
2523         (WebCore::PODTypeWrapperCacheInfoTraits::isDeletedValue):
2524         (WebCore::JSSVGDynamicPODTypeWrapperCache::dynamicWrapperHashMap):
2525         (WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
2526         (WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
2527         * bindings/js/JSSVGPointListCustom.cpp:
2528         (WebCore::finishGetter):
2529         (WebCore::finishSetter):
2530         (WebCore::finishSetterReadOnlyResult):
2531         (WebCore::JSSVGPointList::initialize):
2532         (WebCore::JSSVGPointList::insertItemBefore):
2533         (WebCore::JSSVGPointList::replaceItem):
2534         (WebCore::JSSVGPointList::appendItem):
2535         * bindings/js/JSSVGTransformListCustom.cpp:
2536         (WebCore::finishGetter):
2537         (WebCore::finishSetter):
2538         (WebCore::finishSetterReadOnlyResult):
2539         (WebCore::JSSVGTransformList::initialize):
2540         (WebCore::JSSVGTransformList::getItem):
2541         (WebCore::JSSVGTransformList::insertItemBefore):
2542         (WebCore::JSSVGTransformList::replaceItem):
2543         (WebCore::JSSVGTransformList::removeItem):
2544         (WebCore::JSSVGTransformList::appendItem):
2545         * bindings/scripts/CodeGeneratorJS.pm:
2546
2547 2008-07-19  Oliver Hunt  <oliver@apple.com>
2548
2549         Reviewed by Mark Rowe.
2550
2551         Bug 15979: Console logs in a database callback lose line number information
2552         <https://bugs.webkit.org/show_bug.cgi?id=15979>
2553
2554         The problem was that there were multiple versions of the logic to
2555         log an exception to the console, many of which were incorrect.  We
2556         resolve this by making one single shared reportException method,
2557         which handles the exceptions correctly.
2558
2559         This improves fidelity of callback errors, and ensures that
2560         exceptions thrown in timer callbacks correctly report line numbers,
2561         etc.
2562
2563         Test: fast/js/exceptions-thrown-in-callbacks.html
2564
2565         * bindings/js/JSCustomSQLStatementCallback.cpp:
2566         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2567         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2568         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2569         * bindings/js/JSCustomSQLTransactionCallback.cpp:
2570         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2571         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2572         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2573         * bindings/js/JSCustomVoidCallback.cpp:
2574         (WebCore::JSCustomVoidCallback::handleEvent):
2575         * bindings/js/JSCustomXPathNSResolver.cpp:
2576         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2577         * bindings/js/JSEventListener.cpp:
2578         (WebCore::JSAbstractEventListener::handleEvent):
2579         * bindings/js/ScheduledAction.cpp:
2580         (WebCore::ScheduledAction::execute):
2581         * bindings/js/ScriptController.cpp:
2582         (WebCore::ScriptController::evaluate):
2583         * bindings/objc/WebScriptObject.mm:
2584         (WebCore::addExceptionToConsole):
2585         * page/Console.cpp:
2586         (WebCore::Console::reportException):
2587         * page/Console.h:
2588
2589 2008-07-20  Nikolas Zimmermann  <zimmermann@kde.org>
2590
2591         Rubber stamped by Oliver.
2592
2593         Another attempt to fix the win build.
2594
2595         * svg/SVGAnimatedProperty.h:
2596
2597 2008-07-20  Alexey Proskuryakov  <ap@webkit.org>
2598
2599         Reviewed by David Kilzer.
2600
2601         Fix high CPU usage on testmyiphone.com.
2602
2603         - Made the logic for determining when to stop looking for meta charset more strainghtforward.
2604         Previously, this happened if a tag that's disallowed in HEAD was seen past the first 512
2605         bytes. Now, the algorithm bails out at the boundary if we are lo longer in HEAD (i.e, an
2606         offending tag was seen at any point before).
2607
2608         - The above change made one of our regression tests fail, because it had its <meta>
2609         declaration past the 512 byte boundary. Fixed it by raising the boundary to 1024 bytes.
2610
2611         - Made the algorithm bail out quickly if a comment that's not in HEAD crosses the boundary.
2612
2613         - Moved a check for XML content type out of the loop.
2614
2615         * loader/TextResourceDecoder.cpp:
2616         (WebCore::TextResourceDecoder::checkForHeadCharset): 
2617
2618 2008-07-20  Oliver Hunt  <oliver@apple.com>
2619
2620         Reviewed by NOBODY (build fix).
2621
2622         Attempt to fix windows build
2623
2624         * svg/SVGAnimatedProperty.h:
2625
2626 2008-07-19  Nikolas Zimmermann  <zimmermann@kde.org>
2627
2628         Reviewed by Oliver & parts by Eric.
2629
2630         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20051
2631
2632         Rewrite animated property concept without heavy macro usage, replace by a templatified solution.
2633         Fewer virtual function calls, no more usage of the tear-off's within internal code (synchronization needed it before.)
2634
2635         * dom/Element.cpp:
2636         (WebCore::Element::attributes):
2637         (WebCore::Element::getAttribute):
2638         (WebCore::Element::hasAttributes):
2639         * dom/Element.h:
2640         (WebCore::Element::updateAnimatedSVGAttribute): Take const String&, not StringImpl*.
2641         * svg/SVGAElement.cpp:
2642         (WebCore::SVGAElement::SVGAElement):
2643         * svg/SVGAElement.h:
2644         * svg/SVGAltGlyphElement.h:
2645         * svg/SVGAnimatedProperty.h: Added.
2646         * svg/SVGAnimatedTemplate.h:
2647         (WebCore::lookupOrCreateWrapper):
2648         * svg/SVGAnimationElement.h:
2649         * svg/SVGCircleElement.cpp:
2650         (WebCore::SVGCircleElement::SVGCircleElement):
2651         * svg/SVGCircleElement.h:
2652         * svg/SVGClipPathElement.cpp:
2653         (WebCore::SVGClipPathElement::SVGClipPathElement):
2654         * svg/SVGClipPathElement.h:
2655         * svg/SVGComponentTransferFunctionElement.cpp:
2656         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2657         * svg/SVGComponentTransferFunctionElement.h:
2658         * svg/SVGCursorElement.cpp:
2659         (WebCore::SVGCursorElement::SVGCursorElement):
2660         * svg/SVGCursorElement.h:
2661         * svg/SVGDefsElement.h:
2662         (WebCore::SVGDefsElement::contextElement):
2663         * svg/SVGElement.cpp:
2664         (WebCore::SVGElement::updateAnimatedSVGAttribute):
2665         * svg/SVGElement.h:
2666         (WebCore::SVGElement::supplementalTransform):
2667         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
2668         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
2669         (WebCore::SVGElement::addSVGPropertySynchronizer):
2670         * svg/SVGEllipseElement.cpp:
2671         (WebCore::SVGEllipseElement::SVGEllipseElement):
2672         * svg/SVGEllipseElement.h:
2673         * svg/SVGExternalResourcesRequired.cpp:
2674         (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
2675         * svg/SVGExternalResourcesRequired.h:
2676         * svg/SVGFEBlendElement.cpp:
2677         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
2678         * svg/SVGFEBlendElement.h:
2679         * svg/SVGFEColorMatrixElement.cpp:
2680         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2681         * svg/SVGFEColorMatrixElement.h:
2682         * svg/SVGFEComponentTransferElement.cpp:
2683         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
2684         * svg/SVGFEComponentTransferElement.h:
2685         * svg/SVGFECompositeElement.cpp:
2686         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
2687         * svg/SVGFECompositeElement.h:
2688         * svg/SVGFEDiffuseLightingElement.cpp:
2689         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
2690         * svg/SVGFEDiffuseLightingElement.h:
2691         * svg/SVGFEDisplacementMapElement.cpp:
2692         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
2693         * svg/SVGFEDisplacementMapElement.h:
2694         * svg/SVGFEFloodElement.h:
2695         * svg/SVGFEGaussianBlurElement.cpp:
2696         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
2697         * svg/SVGFEGaussianBlurElement.h:
2698         * svg/SVGFEImageElement.cpp:
2699         (WebCore::SVGFEImageElement::SVGFEImageElement):
2700         * svg/SVGFEImageElement.h:
2701         * svg/SVGFELightElement.cpp:
2702         (WebCore::SVGFELightElement::SVGFELightElement):
2703         * svg/SVGFELightElement.h:
2704         (WebCore::SVGFELightElement::contextElement):
2705         * svg/SVGFEMergeElement.h:
2706         * svg/SVGFEMergeNodeElement.cpp:
2707         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
2708         * svg/SVGFEMergeNodeElement.h:
2709         * svg/SVGFEOffsetElement.cpp:
2710         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
2711         * svg/SVGFEOffsetElement.h:
2712         * svg/SVGFESpecularLightingElement.cpp:
2713         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
2714         * svg/SVGFESpecularLightingElement.h:
2715         * svg/SVGFETileElement.cpp:
2716         (WebCore::SVGFETileElement::SVGFETileElement):
2717         * svg/SVGFETileElement.h:
2718         * svg/SVGFETurbulenceElement.cpp:
2719         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
2720         * svg/SVGFETurbulenceElement.h:
2721         * svg/SVGFilterElement.cpp:
2722         (WebCore::SVGFilterElement::SVGFilterElement):
2723         * svg/SVGFilterElement.h:
2724         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2725         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
2726         * svg/SVGFilterPrimitiveStandardAttributes.h:
2727         * svg/SVGFitToViewBox.cpp:
2728         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
2729         * svg/SVGFitToViewBox.h:
2730         * svg/SVGFontElement.h:
2731         (WebCore::SVGFontElement::rendererIsNeeded):
2732         (WebCore::SVGFontElement::contextElement):
2733         * svg/SVGForeignObjectElement.cpp:
2734         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
2735         * svg/SVGForeignObjectElement.h:
2736         * svg/SVGGElement.h:
2737         * svg/SVGGradientElement.cpp:
2738         (WebCore::SVGGradientElement::SVGGradientElement):
2739         * svg/SVGGradientElement.h:
2740         (WebCore::SVGGradientElement::contextElement):
2741         * svg/SVGImageElement.cpp:
2742         (WebCore::SVGImageElement::SVGImageElement):
2743         * svg/SVGImageElement.h:
2744         * svg/SVGLineElement.cpp:
2745         (WebCore::SVGLineElement::SVGLineElement):
2746         * svg/SVGLineElement.h:
2747         * svg/SVGLinearGradientElement.cpp:
2748         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
2749         * svg/SVGLinearGradientElement.h:
2750         * svg/SVGMarkerElement.cpp:
2751         (WebCore::SVGMarkerElement::SVGMarkerElement):
2752         (WebCore::SVGMarkerElement::canvasResource):
2753         * svg/SVGMarkerElement.h:
2754         * svg/SVGMaskElement.cpp:
2755         (WebCore::SVGMaskElement::SVGMaskElement):
2756         * svg/SVGMaskElement.h:
2757         * svg/SVGPathElement.cpp:
2758         (WebCore::SVGPathElement::SVGPathElement):
2759         (WebCore::SVGPathElement::parseMappedAttribute):
2760         * svg/SVGPathElement.h:
2761         * svg/SVGPatternElement.cpp:
2762         (WebCore::SVGPatternElement::SVGPatternElement):
2763         * svg/SVGPatternElement.h:
2764         (WebCore::SVGPatternElement::contextElement):
2765         * svg/SVGPolyElement.h:
2766         * svg/SVGPreserveAspectRatio.cpp:
2767         * svg/SVGRadialGradientElement.cpp:
2768         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
2769         * svg/SVGRadialGradientElement.h:
2770         * svg/SVGRectElement.cpp:
2771         (WebCore::SVGRectElement::SVGRectElement):
2772         * svg/SVGRectElement.h:
2773         * svg/SVGSVGElement.cpp:
2774         (WebCore::SVGSVGElement::SVGSVGElement):
2775         * svg/SVGSVGElement.h:
2776         * svg/SVGScriptElement.cpp:
2777         * svg/SVGScriptElement.h:
2778         * svg/SVGStopElement.cpp:
2779         (WebCore::SVGStopElement::SVGStopElement):
2780         * svg/SVGStopElement.h:
2781         * svg/SVGStyledElement.cpp:
2782         (WebCore::SVGStyledElement::SVGStyledElement):
2783         * svg/SVGStyledElement.h:
2784         * svg/SVGStyledTransformableElement.cpp:
2785         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
2786         * svg/SVGStyledTransformableElement.h:
2787         * svg/SVGSwitchElement.h:
2788         * svg/SVGSymbolElement.h:
2789         (WebCore::SVGSymbolElement::contextElement):
2790         * svg/SVGTRefElement.h:
2791         * svg/SVGTSpanElement.h:
2792         * svg/SVGTextContentElement.cpp:
2793         (WebCore::SVGTextContentElement::SVGTextContentElement):
2794         * svg/SVGTextContentElement.h:
2795         (WebCore::SVGTextContentElement::contextElement):
2796         * svg/SVGTextElement.cpp:
2797         (WebCore::SVGTextElement::SVGTextElement):
2798         * svg/SVGTextElement.h:
2799         * svg/SVGTextPathElement.cpp:
2800         (WebCore::SVGTextPathElement::SVGTextPathElement):
2801         * svg/SVGTextPathElement.h:
2802         * svg/SVGTextPositioningElement.cpp:
2803         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
2804         * svg/SVGTextPositioningElement.h:
2805         * svg/SVGTransformable.h:
2806         * svg/SVGURIReference.cpp:
2807         (WebCore::SVGURIReference::SVGURIReference):
2808         * svg/SVGURIReference.h:
2809         * svg/SVGUseElement.cpp:
2810         (WebCore::SVGUseElement::SVGUseElement):
2811         * svg/SVGUseElement.h:
2812         * svg/SVGViewElement.h:
2813         * svg/SVGViewSpec.h:
2814
2815 2008-07-18  Maxime Britto  <britto@apple.com>
2816
2817         Reviewed by Adele.
2818         
2819         Fixed <rdar://problem/6049803>
2820         Prevent the autoscroll to trigger in WebClips when starting or hovering on an editable field.
2821
2822         Test: fast/events/autoscroll-with-non-scrollable-parent.html
2823
2824         * ChangeLog:
2825         * page/EventHandler.cpp: Edited
2826         (WebCore::EventHandler::handleMousePressEvent): changed the name of the funtion called to canBeProgramaticallyScrolled()
2827         (WebCore::EventHandler::handleMouseDraggedEvent): prevent the autoscroll to keep looking for a renderer when it's already triggered
2828         * rendering/RenderLayer.cpp:
2829         (WebCore::RenderLayer::scrollRectToVisible): verifies that the top layer can be programmatically scrolled before asking him to make the rect visible
2830         * rendering/RenderListBox.h:
2831         (WebCore::RenderListBox::canBeProgramaticallyScrolled):
2832         * rendering/RenderObject.cpp:
2833         (WebCore::RenderObject::canBeProgramaticallyScrolled): Edited : For the 3rd case we want document's renderer to have scrollbar as it's the top layer   
2834         (WebCore::RenderObject::hasScrollableView): Verifies that the Object has a view with scrollBars
2835         * rendering/RenderObject.h: Renamed shouldAutosroll() for canBeProgramaticallyScrolled()
2836         * rendering/RenderTextControl.h:
2837         (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
2838
2839 2008-07-18  Sam Weinig  <sam@webkit.org>
2840
2841         Reviewed by Anders Carlsson.
2842
2843         <rdar://problem/6087283> Add support for uploading files via XMLHttpRequest
2844
2845         - Overload XMLHttpRequests send() method to accept File tokens.
2846
2847         * bindings/js/JSXMLHttpRequestCustom.cpp:
2848         (WebCore::JSXMLHttpRequest::send): 
2849         * xml/XMLHttpRequest.cpp:
2850         (WebCore::XMLHttpRequest::send):
2851         * xml/XMLHttpRequest.h:
2852
2853 2008-07-18  Geoffrey Garen  <ggaren@apple.com>
2854
2855         Reviewed by Cameron Zwarich.
2856         
2857         Three renames:
2858         
2859         "CallTypeNative" => "CallTypeHost"
2860         "code" => "byteCode"
2861         "generatedCode" => "generatedByteCode"
2862
2863 2008-07-18  Adele Peterson  <adele@apple.com>
2864
2865         Reviewed by Dan Bernstein.
2866
2867         I recently made a change to avoid fading media controls in and out if a video element actually only contains audio,
2868         which broke the code that did the same thing for audio elements that contain video (but don't actually display that video).
2869         This change will now check both the media element and the player to decide whether or not to make the controls persistent.
2870
2871         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControlVisibility):
2872
2873 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
2874
2875         Reviewed by mitz
2876
2877         Remove braces around single-line conditional.
2878         
2879         * css/CSSComputedStyleDeclaration.cpp:
2880         (WebCore::computedTransform):
2881
2882 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
2883
2884         Reviewed by Dave Hyatt
2885
2886         getComputedStyle() for -webkit-transform should return 
2887         'none' for elements with no renderer, or those with no
2888         transform.
2889
2890         https://bugs.webkit.org/show_bug.cgi?id=20008
2891
2892         Testcase: LayoutTests/fast/css/computed-style-without-renderer
2893                   LayoutTests/fast/css/computed-style-expected.txt
2894
2895         * css/CSSComputedStyleDeclaration.cpp:
2896         (WebCore::computedTransform):
2897
2898 2008-07-18  Simon Fraser  <simon.fraser@apple.com>
2899
2900         Reviewed by Dave Hyatt
2901
2902         Fix assertion about creating Length values with percentage types
2903         when blending transforms.
2904         https://bugs.webkit.org/show_bug.cgi?id=20086
2905
2906         * rendering/style/RenderStyle.cpp:
2907         (WebCore::TranslateTransformOperation::blend):
2908
2909 2008-07-17  Jacob Refstrup  <jacob.refstrup@hp.com>
2910
2911         Reviewed by rwlbuis@gmail.com
2912
2913         https://bugs.webkit.org/show_bug.cgi?id=19965
2914
2915         - Added "@"{ident} rule (below other @-rules) to use flex for longest match
2916           (if an earlier rule - e.g. @media - also matches then flex chooses that one
2917            however, if a longer match - e.g. @mediaall matches flex will choose that)
2918         - Updated grammar to defined ATKEYWORD token and to use that instead of '@'
2919           in the error recovery grammar. 
2920
2921         Test: css2.1/atrule_longest_match.html
2922
2923         * ChangeLog:
2924         * css/CSSGrammar.y:
2925         * css/tokenizer.flex:
2926
2927 2008-07-17  David Hyatt  <hyatt@apple.com>
2928
2929         Make sure the check to see if a frame/iframe is being rendered inside a transparency layer is
2930         recursive (and checks for transparency layers all the way up the ancestor document chain back to
2931         the top-level frame).
2932
2933         Reviewed by Dan
2934
2935         * rendering/RenderView.cpp:
2936         (WebCore::RenderView::paintBoxDecorations):
2937
2938 2008-07-16  Jon Honeycutt  <jhoneycutt@apple.com>
2939
2940         REGRESSION: Can't create windowless plug-in with Flash 9
2941         https://bugs.webkit.org/show_bug.cgi?id=20070
2942
2943         Reviewed by Mark Rowe.
2944
2945         * plugins/win/PluginPackageWin.cpp:
2946         (WebCore::PluginPackage::determineQuirks): Reverse argument order;
2947         PlatformModuleVersion constructor takes leastSig, mostSig.
2948
2949 2008-07-16  Eric Seidel  <eric@webkit.org>
2950
2951         Reviewed by mitz.
2952
2953         Attempt to make initializeATSUStyle human-readable by
2954         splitting it out into better-named static inline functions.
2955
2956         No functional changes, thus no tests.
2957
2958         * platform/graphics/mac/FontMac.mm:
2959         (WebCore::fontHasMirroringInfo):
2960         (WebCore::disableLigatures):
2961         (WebCore::initializeATSUStyle):
2962
2963 2008-07-16  Eric Seidel  <eric@webkit.org>
2964
2965         No review, build fix only.
2966
2967         Attempt to fix Mac build
2968
2969         * WebCore.xcodeproj/project.pbxproj: Make TextRun.h a private header.
2970
2971 2008-07-16  Eric Seidel  <eric@webkit.org>
2972
2973         Reviewed by mitz.
2974
2975         Make ATSULayoutParameters a real C++ class
2976         (Give it a destructor to clean up after itself)
2977         (Also use OwnArrayPtr instead of manual member cleanup)
2978
2979         * platform/graphics/mac/FontMac.mm:
2980         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
2981         (WebCore::ATSULayoutParameters::~ATSULayoutParameters):
2982         (WebCore::overrideLayoutOperation):
2983         (WebCore::ATSULayoutParameters::initialize):
2984         (WebCore::Font::selectionRectForComplexText):
2985         (WebCore::Font::drawComplexText):
2986         (WebCore::Font::floatWidthForComplexText):
2987         (WebCore::Font::offsetForPositionForComplexText):
2988
2989 2008-07-16  Eric Seidel  <eric@webkit.org>
2990
2991         Reviewed by mitz.
2992
2993         Make ownership of copied UChar buffer clearer
2994         (and more leak-proof) by using a OwnArrayPtr.
2995
2996         No functional changes, thus no tests.
2997
2998         * platform/graphics/mac/FontMac.mm:
2999         (WebCore::copyRunForDirectionalOverrideIfNecessary):
3000         (WebCore::Font::selectionRectForComplexText):
3001         (WebCore::Font::drawComplexText):
3002         (WebCore::Font::offsetForPositionForComplexText):
3003
3004 2008-07-16  Eric Seidel  <eric@webkit.org>
3005
3006         Reviewed by Sam.
3007
3008         Split out TextRun into its own header file.
3009         Re-order members to place all bools together
3010         (to allow compilers to better pack the struct)
3011
3012         No functional changes, thus no tests.
3013
3014         * WebCore.vcproj/WebCore.vcproj:
3015         * WebCore.xcodeproj/project.pbxproj:
3016         * platform/graphics/Font.h: Moved TextRun into its own file.
3017         * platform/graphics/TextRun.h: Split out from Font.h
3018
3019 2008-07-16  Simon Fraser  <simon.fraser@apple.com>
3020
3021         Reviewed by Dave Hyatt
3022
3023         AnimationController needs to adjust z-index in the blended
3024         style in case opacity or transform were changed by blending.
3025
3026         https://bugs.webkit.org/show_bug.cgi?id=20047
3027         
3028         Test: transitions/opacity-transition-zindex.html
3029
3030         * page/AnimationController.cpp:
3031         (WebCore::AnimationController::updateImplicitAnimations):
3032
3033 2008-07-16  Nikolas Zimmermann  <zimmermann@kde.org>
3034
3035         Reviewed by Sam.
3036
3037         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20052 
3038         Prepare SVGAnimatedProperty introduction.
3039
3040         Export the tag & attribute names as string literals for SVGNames/XLinkNames and one property in HTMLNames. SVGAnimatedProperty
3041         contains two string literal template parameters, and we're using these exported string literals from {SVG,HTML,XLink}Names as input paramters.
3042         See https://bugs.webkit.org/show_bug.cgi?id=20051 for details.
3043
3044         * dom/make_names.pl: Handle new params "exportString" / "exportStrings".
3045         * html/HTMLAttributeNames.in: Expose just the single "class" attribute, as string.
3046         * svg/svgattrs.in: Export all SVG attributes as strings.
3047         * svg/svgtags.in: Export all SVG tags as strings.
3048         * svg/xlinkattrs.in: Expose all XLink attributes as strings.
3049
3050 2008-07-16  Nikolas Zimmermann  <zimmermann@kde.org>
3051
3052         Reviewed by Eric.
3053
3054         Fixes: https://bugs.webkit.org/show_bug.cgi?id=10745 (SVGLength object needs some weight loss)
3055         Don't store a context pointer in SVGLength, saving memory. Let the caller of the value() & convertToSpecifiedUnits() pass it.
3056
3057         Remove some uneeded contextElement() functions, by moving into approriate shared base classes.
3058
3059         * GNUmakefile.am:
3060         * WebCore.pro:
3061         * WebCore.vcproj/WebCore.vcproj:
3062         * WebCore.xcodeproj/project.pbxproj:
3063         * bindings/js/JSSVGLengthCustom.cpp: Added.
3064         (WebCore::JSSVGLength::value):
3065         (WebCore::JSSVGLength::convertToSpecifiedUnits):
3066         * bindings/scripts/CodeGeneratorObjC.pm:
3067         * css/CSSCursorImageValue.cpp:
3068         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
3069         * rendering/RenderForeignObject.cpp:
3070         (WebCore::RenderForeignObject::translationForAttributes):
3071         * rendering/RenderSVGImage.cpp:
3072         (WebCore::RenderSVGImage::layout):
3073         * rendering/RenderSVGRoot.cpp:
3074         (WebCore::RenderSVGRoot::calcViewport):
3075         * rendering/RenderSVGText.cpp:
3076         (WebCore::RenderSVGText::layout):
3077         * rendering/RenderSVGViewportContainer.cpp:
3078         (WebCore::RenderSVGViewportContainer::calcViewport):
3079         * rendering/SVGCharacterLayoutInfo.cpp:
3080         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
3081         (WebCore::SVGCharacterLayoutInfo::addStackContent):
3082         * rendering/SVGCharacterLayoutInfo.h:
3083         * rendering/SVGRootInlineBox.cpp:
3084         (WebCore::SVGRootInlineBox::buildTextChunks):
3085         * svg/SVGAnimateElement.h:
3086         * svg/SVGAnimateMotionElement.h:
3087         * svg/SVGAnimateTransformElement.h:
3088         * svg/SVGAnimationElement.h:
3089         (WebCore::SVGAnimationElement::contextElement):
3090         * svg/SVGCircleElement.cpp:
3091         (WebCore::SVGCircleElement::SVGCircleElement):
3092         (WebCore::SVGCircleElement::parseMappedAttribute):
3093         (WebCore::SVGCircleElement::toPathData):
3094         * svg/SVGCursorElement.cpp:
3095         (WebCore::SVGCursorElement::SVGCursorElement):
3096         (WebCore::SVGCursorElement::parseMappedAttribute):
3097         * svg/SVGEllipseElement.cpp:
3098         (WebCore::SVGEllipseElement::SVGEllipseElement):
3099         (WebCore::SVGEllipseElement::parseMappedAttribute):
3100         (WebCore::SVGEllipseElement::toPathData):
3101         * svg/SVGFilterElement.cpp:
3102         (WebCore::SVGFilterElement::SVGFilterElement):
3103         (WebCore::SVGFilterElement::parseMappedAttribute):
3104         (WebCore::SVGFilterElement::canvasResource):
3105         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3106         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
3107         (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
3108         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
3109         * svg/SVGForeignObjectElement.cpp:
3110         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
3111         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
3112         * svg/SVGImageElement.cpp:
3113         (WebCore::SVGImageElement::SVGImageElement):
3114         (WebCore::SVGImageElement::parseMappedAttribute):
3115         * svg/SVGLength.cpp:
3116         (WebCore::SVGLength::SVGLength):
3117         (WebCore::SVGLength::value):
3118         (WebCore::SVGLength::convertToSpecifiedUnits):
3119         (WebCore::SVGLength::PercentageOfViewport):
3120         * svg/SVGLength.h:
3121         * svg/SVGLength.idl:
3122         * svg/SVGLengthList.cpp:
3123         (WebCore::SVGLengthList::parse):
3124         * svg/SVGLengthList.h:
3125         * svg/SVGLineElement.cpp:
3126         (WebCore::SVGLineElement::SVGLineElement):
3127         (WebCore::SVGLineElement::parseMappedAttribute):
3128         (WebCore::SVGLineElement::toPathData):
3129         * svg/SVGLinearGradientElement.cpp:
3130         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
3131         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
3132         * svg/SVGMarkerElement.cpp:
3133         (WebCore::SVGMarkerElement::SVGMarkerElement):
3134         (WebCore::SVGMarkerElement::parseMappedAttribute):
3135         (WebCore::SVGMarkerElement::canvasResource):
3136         * svg/SVGMaskElement.cpp:
3137         (WebCore::SVGMaskElement::SVGMaskElement):
3138         (WebCore::SVGMaskElement::parseMappedAttribute):
3139         (WebCore::SVGMaskElement::drawMaskerContent):
3140         * svg/SVGPatternElement.cpp:
3141         (WebCore::SVGPatternElement::SVGPatternElement):
3142         (WebCore::SVGPatternElement::parseMappedAttribute):
3143         (WebCore::SVGPatternElement::buildPattern):
3144         * svg/SVGRadialGradientElement.cpp:
3145         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
3146         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
3147         * svg/SVGRectElement.cpp:
3148         (WebCore::SVGRectElement::SVGRectElement):
3149         (WebCore::SVGRectElement::parseMappedAttribute):
3150         (WebCore::SVGRectElement::toPathData):
3151         * svg/SVGSVGElement.cpp:
3152         (WebCore::SVGSVGElement::SVGSVGElement):
3153         (WebCore::SVGSVGElement::viewport):
3154         (WebCore::SVGSVGElement::parseMappedAttribute):
3155         (WebCore::SVGSVGElement::getCTM):
3156         (WebCore::SVGSVGElement::getScreenCTM):
3157         * svg/SVGTextContentElement.cpp:
3158         (WebCore::SVGTextContentElement::SVGTextContentElement):
3159         (WebCore::SVGTextContentElement::parseMappedAttribute):
3160         * svg/SVGTextPathElement.cpp:
3161         (WebCore::SVGTextPathElement::SVGTextPathElement):
3162         (WebCore::SVGTextPathElement::parseMappedAttribute):
3163         * svg/SVGTextPositioningElement.cpp:
3164         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
3165         * svg/SVGUseElement.cpp:
3166         (WebCore::SVGUseElement::SVGUseElement):
3167         (WebCore::SVGUseElement::parseMappedAttribute):
3168         (WebCore::SVGUseElement::buildPendingResource):
3169         (WebCore::SVGUseElement::buildInstanceTree):
3170         (WebCore::SVGUseElement::handleDeepUseReferencing):
3171         (WebCore::SVGUseElement::alterShadowTreeForSVGTag):
3172         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
3173         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
3174         * svg/SVGUseElement.h:
3175         * svg/SynchronizableTypeWrapper.h:
3176         * svg/graphics/SVGImage.cpp:
3177         (WebCore::SVGImage::size):
3178
3179 2008-07-16  Geoffrey Garen  <ggaren@apple.com>
3180
3181         Reviewed by Oliver Hunt.
3182
3183         Support for JavaScriptCore's first step toward putting doubles in
3184         registers: Treat ArgList iterators as Register*'s, not JSValue*'s.
3185
3186         * bindings/js/ScheduledAction.cpp:
3187         (WebCore::ScheduledAction::ScheduledAction):
3188
3189 2008-07-15  Maxime Britto  <britto@apple.com>
3190
3191         Reviewed by Eric.
3192
3193         https://bugs.webkit.org/show_bug.cgi?id=17589
3194         <rdar://problem/5770893>
3195         Retrieve the wheel sensitivity setting from windows system settings for the horizontal and the vertical scrolling.
3196         Allows the page scrolling with the wheel (if activated in windows settings) on both horizontal and vertical ways
3197         For the other platforms, nothing is changed but if someone want to activate this feature 
3198         he/she has to retrieve the settings and fill out the m_lineScrollSensitivity and/or m_charScrollSensitivity in his/her PlatformWheelEvent constructor.
3199
3200         * ChangeLog:
3201         * page/EventHandler.cpp:
3202         (WebCore::scrollAndAcceptEvent): static inline function to avoid copy/paste in the member functions
3203         (WebCore::EventHandler::handleWheelEvent): Call to the above mentionned static inline function with the right parameters 
3204         * platform/PlatformWheelEvent.h:
3205         (WebCore::PlatformWheelEvent::deltaX): Now returns the delta multiplied by the user settings for the number of lines to scroll
3206         (WebCore::PlatformWheelEvent::deltaY): Now returns the delta multiplied by the user settings for the number of chars to scroll
3207         (WebCore::PlatformWheelEvent::isPageXScrollModeEnabled):
3208         (WebCore::PlatformWheelEvent::isPageYScrollModeEnabled):
3209         * platform/gtk/WheelEventGtk.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
3210         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3211         * platform/mac/WheelEventMac.mm: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
3212         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3213         * platform/qt/WheelEventQt.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
3214         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3215         * 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
3216         (WebCore::adjustDeltaForPageScrollMode): static inline function to avoid copy/paste in the member functions
3217         (WebCore::ScrollView::updateScrollbars):
3218         (WebCore::ScrollView::wheelEvent):
3219         * platform/win/WheelEventWin.cpp: Retrieves the new values by using the win32 API.
3220         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3221         * platform/wx/MouseWheelEventWx.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
3222         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3223
3224 2008-07-15  Kevin Ollivier  <kevino@theolliviers.com>
3225
3226         wx build fix - adding AccessibilityImageMapLink.cpp to the wx build.
3227
3228         * WebCoreSources.bkl:
3229
3230 2008-07-15  Kevin McCullough  <kmccullough@apple.com>
3231
3232         Reviewed by Dan.
3233
3234         <rdar://problem/5620273> REGRESSION: Apparent caching between form
3235         submits twice (on Maconomy) (18401)
3236
3237         Frames did not set the createdByParser flag even when they were.
3238
3239         * html/HTMLElementFactory.cpp:
3240         (WebCore::frameConstructor):
3241         (WebCore::iframeConstructor):
3242
3243 2008-07-15  Dan Bernstein  <mitz@apple.com>
3244
3245         Reviewed by Dave Hyatt.
3246
3247         - fix https://bugs.webkit.org/show_bug.cgi?id=19525
3248           <rdar://problem/5961768> -webkit-box-reflect in hyperlink causes webkit to crash
3249
3250         Test: fast/reflections/inline-crash.html
3251
3252         * rendering/RenderInline.cpp:
3253         (WebCore::RenderInline::setStyle): Added setHasReflection(false).
3254         Inline flows never have reflections.
3255
3256 2008-07-14  David Hyatt  <hyatt@apple.com>
3257
3258         Allow <style> and <link> pretty much anywhere.  They will still be moved to the <head> if
3259         no <body> exists yet though.
3260
3261         Reviewed by Sam
3262
3263         Added fast/css/style-parsed-outside-of-head.html
3264
3265         * html/HTMLElement.cpp:
3266         (WebCore::inlineTagList):
3267
3268 2008-07-15  Kevin McCullough  <kmccullough@apple.com>
3269
3270         Reviewed by Geoff.
3271
3272         Rename pageGroupIdentifier to profileGroup to keep mention of a
3273         pageGroup out of JavaScriptCore.
3274
3275         * bindings/js/JSQuarantinedObjectWrapper.cpp:
3276         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
3277         * bindings/js/ScriptController.cpp:
3278         (WebCore::ScriptController::clear):
3279         (WebCore::ScriptController::initScript):
3280         * history/CachedPage.cpp:
3281         (WebCore::CachedPage::restore):
3282
3283 2008-07-15  Adam Roben  <aroben@apple.com>
3284
3285         WebCore part of adding WebKit[Set]ShouldUseFontSmoothing functions
3286
3287         <rdar://6059127>
3288
3289         Reviewed by John Sullivan.
3290
3291         * platform/graphics/win/FontCGWin.cpp:
3292         (WebCore::Font::drawGlyphs): Pass the result of
3293         WebCoreShouldUseFontSmoothing() into wkSetFontSmoothingStyle.
3294         * platform/win/WebCoreTextRenderer.cpp:
3295         (WebCore::WebCoreSetShouldUseFontSmoothing):
3296         (WebCore::WebCoreShouldUseFontSmoothing):
3297         Added.
3298         * platform/win/WebCoreTextRenderer.h:
3299
3300 2008-07-15  Adam Roben  <aroben@apple.com>
3301
3302         Windows build fix
3303
3304         * WebCore.vcproj/WebCore.vcproj: Add AccessibilityImageMapLink.{cpp,h}
3305         to the project.
3306
3307 2008-07-15  Holger Hans Peter Freyther  <zecke@selfish.org>
3308
3309         Build fix for the Gtk+ and Qt platform.
3310
3311         * GNUmakefile.am: Add AccessibilityImageMapLink.cpp to the build
3312         * WebCore.pro: Add AccessibilityImageMapLink.cpp to the build
3313
3314 2008-07-14  Dan Bernstein  <mitz@apple.com>
3315
3316         - Tiger build fix
3317
3318         * platform/mac/WidgetMac.mm:
3319         (WebCore::Widget::paint):
3320
3321 2008-07-14  Dan Bernstein  <mitz@apple.com>
3322
3323         Reviewed by John Sullivan.
3324
3325         - WebCore part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
3326
3327         * platform/mac/WidgetMac.mm:
3328         (WebCore::Widget::paint): Changed to account for the case of drawing
3329         into a bitmap context that is not a window's backing store. In that
3330         case, -displayRectIgnoringOpacity:inContext: is used to redirect the
3331         drawing to the correct context, after setting up the right transform
3332         on it. For subframes, additional code ensures that the scroll view will
3333         not paint the background behind a transparent frame.
3334
3335 2008-07-14  chris fleizach  <cfleizach@apple.com>
3336
3337         Reviewed by Beth Dakin
3338
3339         <rdar://problem/6038106> AXChildren returned for this web area is null
3340         Accessibility of image maps needed to be updated
3341
3342         Tests: accessibility/image-map1.html
3343                accessibility/image-map2.html
3344
3345         * WebCore.xcodeproj/project.pbxproj:
3346         * page/AXObjectCache.cpp:
3347         (WebCore::AXObjectCache::get):
3348         * page/AccessibilityImageMapLink.cpp: Added.
3349         (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
3350         (WebCore::AccessibilityImageMapLink::~AccessibilityImageMapLink):
3351         (WebCore::AccessibilityImageMapLink::create):
3352         (WebCore::AccessibilityImageMapLink::parentObject):
3353         (WebCore::AccessibilityImageMapLink::anchorElement):
3354         (WebCore::AccessibilityImageMapLink::accessibilityDescription):
3355         (WebCore::AccessibilityImageMapLink::title):
3356         (WebCore::AccessibilityImageMapLink::elementRect):
3357         (WebCore::AccessibilityImageMapLink::size):
3358         * page/AccessibilityImageMapLink.h: Added.
3359         (WebCore::AccessibilityImageMapLink::setHTMLAreaElement):
3360         (WebCore::AccessibilityImageMapLink::setHTMLMapElement):
3361         (WebCore::AccessibilityImageMapLink::roleValue):
3362         (WebCore::AccessibilityImageMapLink::accessibilityIsIgnored):
3363         (WebCore::AccessibilityImageMapLink::isLink):
3364         * page/AccessibilityListBoxOption.h:
3365         * page/AccessibilityObject.cpp:
3366         (WebCore::AccessibilityObject::selectedChildren):
3367         (WebCore::AccessibilityObject::visibleChildren):
3368         * page/AccessibilityObject.h:
3369         (WebCore::):
3370         * page/AccessibilityRenderObject.cpp:
3371         (WebCore::AccessibilityRenderObject::parentObject):
3372         (WebCore::AccessibilityRenderObject::isAnchor):
3373         (WebCore::AccessibilityRenderObject::anchorElement):
3374         (WebCore::AccessibilityRenderObject::helpText):
3375         (WebCore::AccessibilityRenderObject::intValue):
3376         (WebCore::AccessibilityRenderObject::stringValue):
3377         (WebCore::AccessibilityRenderObject::title):
3378         (WebCore::AccessibilityRenderObject::accessibilityDescription):
3379         (WebCore::AccessibilityRenderObject::elementRect):
3380         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3381         (WebCore::AccessibilityRenderObject::roleValue):
3382         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
3383         (WebCore::AccessibilityRenderObject::addChildren):
3384         * page/AccessibilityRenderObject.h:
3385         * page/mac/AccessibilityObjectWrapper.mm:
3386         (convertToNSArray):
3387         (RoleEntry::):
3388
3389 2008-07-14  Sam Weinig  <sam@webkit.org>
3390
3391         Rubber-stamped by David Hyatt.
3392
3393         Remove unused ExceptionCode parameter from compareDocumentPosition.
3394
3395         * dom/Document.cpp:
3396         (WebCore::Document::addStyleSheetCandidateNode):
3397         * dom/Node.cpp:
3398         (WebCore::Node::compareDocumentPosition):
3399         * dom/Node.h:
3400         * dom/Node.idl:
3401
3402 2008-07-14  David Hyatt  <hyatt@apple.com>
3403
3404         Fix for bugzilla bug 5476, link and style elements should be allowed outside the <head>.
3405
3406         Reviewed by Sam
3407
3408         Added fast/css/style-outside-head.html
3409         Added fast/css/link-outside-head.html
3410
3411         * dom/Document.cpp:
3412         (WebCore::Document::addStyleSheetCandidateNode):
3413         (WebCore::Document::removeStyleSheetCandidateNode):
3414         (WebCore::Document::recalcStyleSelector):
3415         * dom/Document.h:
3416         * dom/Node.cpp:
3417         (WebCore::Node::compareDocumentPosition):
3418         * dom/ProcessingInstruction.cpp:
3419         (WebCore::ProcessingInstruction::checkStyleSheet):
3420         (WebCore::ProcessingInstruction::insertedIntoDocument):
3421         (WebCore::ProcessingInstruction::removedFromDocument):
3422         (WebCore::ProcessingInstruction::finishParsingChildren):
3423         * dom/ProcessingInstruction.h:
3424         (WebCore::ProcessingInstruction::setCreatedByParser):
3425         * dom/StyleElement.cpp:
3426         (WebCore::StyleElement::removedFromDocument):
3427         * dom/XMLTokenizer.cpp:
3428         (WebCore::XMLTokenizer::startElementNs):
3429         (WebCore::XMLTokenizer::processingInstruction):
3430         (WebCore::):
3431         * html/HTMLElementFactory.cpp:
3432         (WebCore::linkConstructor):
3433         * html/HTMLLinkElement.cpp:
3434         (WebCore::HTMLLinkElement::HTMLLinkElement):
3435         (WebCore::HTMLLinkElement::insertedIntoDocument):
3436         (WebCore::HTMLLinkElement::removedFromDocument):
3437         (WebCore::HTMLLinkElement::finishParsingChildren):
3438         * html/HTMLLinkElement.h:
3439         (WebCore::HTMLLinkElement::setCreatedByParser):
3440         * html/HTMLStyleElement.cpp:
3441         (WebCore::HTMLStyleElement::insertedIntoDocument):
3442         (WebCore::HTMLStyleElement::removedFromDocument):
3443         * svg/SVGStyleElement.cpp:
3444         (WebCore::SVGStyleElement::insertedIntoDocument):
3445         (WebCore::SVGStyleElement::removedFromDocument):
3446
3447 2008-07-14  Sam Weinig  <sam@webkit.org>
3448
3449         Reviewed by Mark Rowe.
3450
3451         Sort interface extended attributes to appease *the* Mark Rowe.
3452
3453         * page/DOMWindow.idl:
3454
3455 2008-07-14  Anders Carlsson  <andersca@apple.com>
3456
3457         Reviewed by Geoff.
3458
3459         <rdar://problem/6073974>
3460         https://bugs.webkit.org/show_bug.cgi?id=18106
3461         The "onscroll" event bubbles, which is inconsistent with Firefox and IE
3462
3463         Don't bubble the scroll event.
3464         
3465         * rendering/RenderLayer.cpp:
3466         (WebCore::RenderLayer::scrollToOffset):
3467         * rendering/RenderListBox.cpp:
3468         (WebCore::RenderListBox::valueChanged):
3469
3470 2008-07-14  Adele Peterson  <adele@apple.com>
3471
3472         Reviewed by Geoff.
3473
3474         Fix for <rdar://problem/5784890> REGRESSION (Safari 3): Can't edit SpeedStream 4100 DSL modem settings
3475
3476         The web server on this particular piece of hardware doesn't handle "text/xml" in the 
3477         Accept header if the headers are sent in a certain order.  Safari 2 used to send "*/*" in 
3478         the Accept header.  Firefox 2 sent "text/xml" but in an acceptable order for the web 
3479         server.  And Firefox 3 doesn't send "text/xml" at all in the Accept header since it 
3480         is being deprecated in favor of "application/xml".  We decided that the best solution is 
3481         to match Firefox 3 and stop sending "text/xml" in the Accept header.
3482
3483         No test.  There appears to be no way to get the raw headers in the original order in perl/php.
3484
3485         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
3486
3487 2008-07-14  Sam Weinig  <sam@webkit.org>
3488
3489         Reviewed by Adele Peterson.
3490
3491         Fix for <rdar://problem/5769819>
3492
3493         Test: http/tests/security/cross-frame-access-object-prototype.html
3494
3495         * bindings/js/JSDOMWindowCustom.cpp:
3496         (WebCore::JSDOMWindow::getPropertyAttributes): Perform security check.
3497         (WebCore::JSDOMWindow::defineGetter): Ditto.
3498         (WebCore::JSDOMWindow::defineSetter): Ditto.
3499         (WebCore::JSDOMWindow::lookupGetter): Ditto.
3500         (WebCore::JSDOMWindow::lookupSetter): Ditto.
3501         * bindings/scripts/CodeGeneratorJS.pm: Add support for custom versions
3502         of all the core JSObject functionality.
3503         * page/DOMWindow.idl: Override remaining core JSObject functionality,
3504         to inject security checks.
3505
3506 2008-07-14  Adam Roben  <aroben@apple.com>
3507
3508         Windows build fixes
3509
3510         * WebCore.vcproj/WebCore.vcproj: Add include/pthreads to the include
3511         path.
3512         * bindings/scripts/CodeGeneratorCOM.pm: Touched this to force COM
3513         bindings to regenerate.
3514         * loader/FTPDirectoryDocument.cpp:
3515         * loader/FTPDirectoryParser.cpp:
3516         Fixed some duplicate macro definitions now that we're including
3517         pthread.h again.
3518
3519 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
3520
3521         Reviewed by Kevin McCullough.
3522
3523         Make JSGlobalData refcounted in preparation to adding a way to create contexts that share
3524         global data.
3525
3526         * bindings/js/JSDOMWindowBase.cpp:
3527         (WebCore::JSDOMWindowBase::commonJSGlobalData): Create JSGlobalData with create() method.
3528
3529 2008-07-14  Simon Hausmann  <hausmann@webkit.org>
3530
3531         Reviewed by Holger.
3532
3533         Make listDirectory() in the Qt port work with empty namefilters.
3534         Don't include . and .. to avoid scanning the parent directory.
3535
3536         * platform/qt/FileSystemQt.cpp:
3537         (WebCore::listDirectory):
3538
3539 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
3540
3541         Reviewed by Geoff Garen.
3542
3543         Eliminate per-thread JavaScript global data instance support and make arbitrary
3544         global data/global object combinations possible.
3545
3546         * bindings/js/JSDOMWindowBase.h:
3547         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData): Added.
3548         WebCore uses its own instance of JSGlobalData, as JSC no longer provides a per-thread one.
3549
3550         * bindings/js/JSDOMWindowShell.cpp:
3551         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
3552         (WebCore::JSDOMWindowShell::operator new):
3553         * bindings/js/ScriptController.cpp:
3554         (WebCore::ScriptController::clear):
3555         * bindings/scripts/CodeGeneratorJS.pm:
3556         Pass commonJSGlobalData() as an allocator.
3557
3558         * bridge/c/c_utility.cpp:
3559         (KJS::Bindings::identifierFromNPIdentifier):
3560         * bridge/jni/jni_class.cpp:
3561         (JavaClass::JavaClass):
3562         * history/CachedPage.cpp:
3563         (WebCore::CachedPage::restore):
3564         * storage/Database.cpp:
3565         (WebCore::Database::Database):
3566         * bindings/js/GCController.cpp:
3567         (WebCore::collect):
3568         (WebCore::GCController::gcTimerFired):
3569         (WebCore::GCController::garbageCollectNow):
3570         Use JSDOMWindow::commonJSGlobalData().
3571
3572         * ForwardingHeaders/wtf/ThreadSpecific.h: Added (collector.h now includes this header, so
3573         it need to be accesible outside of JSC).
3574
3575         * WebCore.base.exp: Export JSDOMWindowBase::commonJSGlobalData().
3576
3577 2008-07-14  Ariya Hidayat  <ariya.hidayat@trolltech.com>
3578
3579         Reviewed by Simon.
3580
3581         MinGW build fixes
3582
3583         *&