cb7f7cc746b979ef3faf951c7c2cd69ba4e1402e
[WebKit-https.git] / WebCore / ChangeLog
1 2008-08-18  Jon Honeycutt  <jhoneycutt@apple.com>
2
3         Add SPI to make a Windows WebView transparent.
4
5         Reviewed by Dan Bernstein.
6
7         * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
8         determines whether the created context has an alpha channel.
9         * platform/graphics/win/GraphicsContextCGWin.cpp:
10         (WebCore::CGContextWithHDC):
11
12 2008-08-22  Timothy Hatcher  <timothy@apple.com>
13
14         Rolls out r35834 because it caused a regression in the Inspector's
15         Console where some expressions always threw a syntax error.
16
17         https://bugs.webkit.org/show_bug.cgi?id=20487
18
19         * page/inspector/Console.js:
20         (Console.prototype._evalInInspectedWindow): Removes parenthesis
21         around the expression.
22
23 2008-08-22  Timothy Hatcher  <timothy@apple.com>
24
25         Makes getStyleProperty return a value for the overflow property
26         when overflow-x and overflow-y are equal.
27
28         https://bugs.webkit.org/show_bug.cgi?id=20485
29
30         Reviewed by Dan Bernstein.
31
32         Test: fast/css/overflow-property.html
33
34         * css/CSSMutableStyleDeclaration.cpp:
35         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
36
37 2008-08-22  Timothy Hatcher  <timothy@apple.com>
38
39         Fixes a bug where while editing in the Inspector the
40         sidebar scroll position would jump to the top.
41
42         https://bugs.webkit.org/show_bug.cgi?id=20484
43
44         Reviewed by Darin Adler.
45
46         * page/inspector/treeoutline.js:
47         (TreeOutline._removeChildren): Remove the offsetTop call that
48         was forcing a layout, since layout causes scroll positions
49         to be clamped to the new scrollHeight/Width. Layout will happen
50         normally when needed.
51
52 2008-08-22  Kevin Ollivier  <kevino@theolliviers.com>
53
54         wx build fix. Add AccessibilityTable sources.
55
56         * WebCoreSources.bkl:
57
58 2008-08-21  Dan Bernstein  <mitz@apple.com>
59
60         Reviewed by Jon Honeycutt and Alexey Proskuryakov.
61
62         - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
63
64         Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
65
66         * platform/graphics/mac/SimpleFontDataMac.mm:
67         (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
68         ascent and 100% to its reported descent.
69
70 2008-08-21  Kalle Vahlman  <kalle.vahlman@movial.com>
71
72         Reviewed by Darin Adler.
73
74         https://bugs.webkit.org/show_bug.cgi?id=20267
75         [GTK] Crash on some pages due to a plugin
76
77         Fix handling of badly formatted and empty plugin mime descriptions
78
79         * plugins/gtk/PluginPackageGtk.cpp:
80         (WebCore::PluginPackage::fetchInfo):
81
82 2008-08-21  Kevin Watters  <kevinwatters@gmail.com>
83
84         Reviewed by Darin Adler.
85
86         Follow other ports (and IE) in ImageSourceWx.cpp never to return an
87         animated GIF frame duration of less than 50ms.
88
89         * platform/graphics/wx/ImageSourceWx.cpp:
90         (WebCore::ImageSource::frameDurationAtIndex):
91
92 2008-08-21  Maxime Britto  <britto@apple.com>
93
94         Reviewed by Kevin McCullough.
95
96         Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
97         https://bugs.webkit.org/show_bug.cgi?id=20451
98    
99         rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
100         When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
101         This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
102
103         * page/EventHandler.cpp:
104         (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
105
106         (WebCore::EventHandler::handleMousePressEvent): ditto
107
108 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
109
110         Small optimization for when the dividers in the Inspector's
111         Resources panel are updated.
112
113         Reviewed by Tim Hatcher.
114
115         * page/inspector/ResourcesPanel.js:
116         (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
117         Combind a for loop and clone the divider element.
118
119 2008-08-21  Chris Marrin  <cmarrin@apple.com>
120
121         Allow 0 (without units) for Time eg. duration
122         Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
123
124         Reviewed by Dave Hyatt.
125
126         Test: css1/units/zero-duration-without-units.html
127
128         * css/CSSParser.cpp:
129         (WebCore::CSSParser::validUnit):
130
131 2008-08-21  Timothy Hatcher  <timothy@apple.com>
132
133         Make deleting all text while editing a DOM attribute in
134         the Inspector delete the attribute. This also fixes
135         an exception that would happen before.
136
137         https://bugs.webkit.org/show_bug.cgi?id=20472
138
139         Reviewed by Kevin McCullough.
140
141         * page/inspector/ElementsPanel.js:
142         (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
143         Don't check for hasAttributes on the parseElement, continuing
144         through the function will correctly remove the attribute.
145         If the parseElement is null, call _editingCancelled not
146         editingCancelled, this fixes an exception.
147
148 2008-08-21  Timothy Hatcher  <timothy@apple.com>
149
150         Update the Inspector's Metrics pane when editing in
151         the Styles pane. This makes sure the metrics shown
152         always match what the Styles pane shows.
153
154         https://bugs.webkit.org/show_bug.cgi?id=20470
155
156         Reviewed by Kevin McCullough.
157
158         * page/inspector/ElementsPanel.js:
159         (WebInspector.ElementsPanel): Add event listeners for
160         the "style edited" and "style property toggled" events,
161         so the Metrics pane is updated.
162         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
163         Update the Metrics pane.
164         * page/inspector/StylesSidebarPane.js:
165         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
166         Dispatch the "style property toggled" event.
167         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
168         Dispatch the "style edited" event when the CSS text is restored.
169         (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
170         Dispatch the "style edited" event.
171
172 2008-08-21  Timothy Hatcher  <timothy@apple.com>
173
174         Make the Inspector's Metrics sidebar pane editable.
175
176         https://bugs.webkit.org/show_bug.cgi?id=17218
177         rdar://problem/5732818
178
179         Reviewed by Kevin McCullough.
180
181         * page/inspector/ElementsPanel.js:
182         (WebInspector.ElementsPanel): Add an event listener for
183         the "metrics edited" event, so the Styles pane is updated.
184         * page/inspector/MetricsSidebarPane.js:
185         (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
186         so future updates work. Add a double click event listener for the
187         metric values to start editing.
188         (WebInspector.MetricsSidebarPane.prototype.startEditing):
189         Call WebInspector.startEditing with some context.
190         (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
191         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
192         Set the user input on the elements inline style. Fire the
193         "metrics edited" event.
194
195 2008-08-21  Steve Falkenburg  <sfalken@apple.com>
196
197         Fix a race condition in Windows timer code.
198         Timer function could end up being called with a 0 timer, leading to a Windows exception.
199         
200         Don't post a timer message if one is already pending.
201         
202         Reviewed by Ada Chan.
203
204         * platform/win/SharedTimerWin.cpp:
205         (WebCore::TimerWindowWndProc):
206         (WebCore::clearTimer):
207         (WebCore::queueTimerProc):
208         (WebCore::setSharedTimerFireTime):
209
210 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
211
212         After trying to add the expression, try again with quotes for
213         easier edition.
214
215         https://bugs.webkit.org/show_bug.cgi?id=20466
216
217         Reviewed by Tim Hatcher.
218
219         * page/inspector/ObjectPropertiesSection.js: Added an
220         evaluateExpression function.
221
222 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
223
224         Perform Inspector searches on search event to clear results when
225         clicking the cross to empty it. Delete the lastQuery when the field
226         is emptied in order to perform the search if exactly the same query
227         is entered next.
228
229         https://bugs.webkit.org/show_bug.cgi?id=20462
230
231         Reviewed by Tim Hatcher.
232
233         * page/inspector/inspector.js:
234
235 2008-08-21  Marco Barisione  <marco.barisione@collabora.co.uk>
236
237         Reviewed by Mark Rowe.
238
239         http://bugs.webkit.org/show_bug.cgi?id=19656
240         [SOUP] The gio code should call didFail() instead of
241         didFinishLoading() in case of error
242
243         In case of error call didFail() instead of didReceiveResponse() and
244         didFinishLoading().
245
246         * platform/network/soup/ResourceHandleSoup.cpp:
247         (WebCore::networkErrorForFile):
248         (WebCore::readCallback):
249         (WebCore::openCallback):
250         (WebCore::queryInfoCallback):
251
252 2008-08-20  Mark Rowe  <mrowe@apple.com>
253
254         Reviewed by Jon Honeycutt.
255
256         Fix build failure.
257
258         * bridge/c/c_instance.cpp:
259         (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
260         as that is what NPEnumerationFunctionPtr is declared as accepting.
261
262 2008-08-20  Mark Rowe  <mrowe@apple.com>
263
264         Reviewed by Dan Bernstein.
265
266         Build fix.  Handle kCGInterpolationMedium in switch statements if it is available.
267
268         * platform/graphics/GraphicsContext.h:
269         (WebCore::):
270         * platform/graphics/cg/GraphicsContextCG.cpp:
271         (WebCore::GraphicsContext::setImageInterpolationQuality):
272         (WebCore::GraphicsContext::imageInterpolationQuality):
273
274 2008-08-20  Dan Bernstein  <mitz@apple.com>
275
276         Rubber-stamped by John Sullivan.
277
278         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
279           rename related methods and variables accordingly.
280
281         * WebCore.base.exp:
282         * page/FrameView.cpp:
283         (WebCore::FrameViewPrivate::FrameViewPrivate):
284         (WebCore::FrameView::shouldUpdateWhileOffscreen):
285         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
286         * page/FrameView.h:
287         * platform/ScrollView.h:
288         * platform/mac/ScrollViewMac.mm:
289         (WebCore::ScrollView::updateContents):
290
291 2008-08-20  Brady Eidson  <beidson@apple.com>
292
293         Reviewed by Mitzpettel
294
295         <rdar://problem/6163636> - Many images broken in Mail
296
297         This can be traced back to the preload scanner.  With that change, CachedResources are created a lot 
298         sooner than before and confuse the WebArchive machinery.  
299
300         When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore 
301         such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate 
302         machinery and nothing is known about where the data will eventually come from.
303
304         * loader/DocumentLoader.cpp:
305         (WebCore::DocumentLoader::subresource):  Ignore a CachedResource if its preloadResult is 
306           CachedResource::PreloadReferenced.
307
308 2008-08-20  Holger Hans Peter Freyther  <zecke@selfish.org>
309
310         Unreviewed compile fix
311
312         Catch up with the JSValue::type elimination.
313
314         * bridge/qt/qt_instance.cpp:
315         (KJS::Bindings::QtRuntimeObjectImp::construct):
316         (KJS::Bindings::QtInstance::defaultValue):
317         * bridge/qt/qt_runtime.cpp:
318         (KJS::Bindings::QtRuntimeConnectionMethod::call):
319
320 2008-08-20  Chris Teague  <chris.teague@gmail.com>
321
322         Reviewed by Mark Rowe.
323
324         Fix https://bugs.webkit.org/show_bug.cgi?id=20449
325         Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
326
327         * ChangeLog:
328         * loader/FrameLoader.cpp:
329         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
330
331 2008-08-20  Simon Fraser  <simon.fraser@apple.com>
332
333         Reviewed by Dave Hyatt
334
335         getComputedStyle() for webkitTransform should return a transform
336         that does not have the transform origin baked into it.
337         https://bugs.webkit.org/show_bug.cgi?id=20464
338         
339         Test: fast/css/getComputedStyle-transform.html
340
341         * css/CSSComputedStyleDeclaration.cpp:
342         (WebCore::computedTransform):
343         * rendering/style/RenderStyle.cpp:
344         (WebCore::RenderStyle::applyTransform):
345         * rendering/style/RenderStyle.h:
346
347 2008-08-20  Josh Aas  <joshmoz@gmail.com>
348
349         Reviewed and landed by Anders.
350
351         <rdar://problem/6163636> 
352         rename NPCocoaEvent's "event" struct to "data" (20446)
353         
354         * bridge/npapi.h:
355         (_NPCocoaEvent::):
356
357 2008-08-20  Beth Dakin  <bdakin@apple.com>
358
359         Reviewed by Darin.
360
361         Fix for <rdar://problem/6145626> 
362         This patch fixes a number of remaining problems getting 
363         disconnected frames to work correctly with markAllMatchesForText() 
364         and findString(). Details inline. 
365
366         This was a static helper function in Frame, but this patch requires 
367         the same functionality in Editor, so I just added it as a function 
368         on Node.
369         * dom/Node.cpp:
370         (WebCore::Node::isInShadowTree):
371         * dom/Node.h:
372
373         * editing/Editor.cpp:
374         (WebCore::Editor::insideVisibleArea): Returns false if 
375         excludeFromTextSearch() is true.
376
377         In a normal (non-disconnected) frame, findString returns a range of 
378         the document node if the text is not found in the frame. I changed 
379         firstVisibleRange and lastVisibleRange to match that behavior when 
380         the text is not found
381         (WebCore::Editor::firstVisibleRange):
382         (WebCore::Editor::lastVisibleRange):
383
384         Here are the bulk of the changes in the patch. A lot of text was 
385         not being found in disconnected frames because I failed to account 
386         for all of the possible problems associated with shadow trees. That 
387         is fixed here.
388         (WebCore::Editor::nextVisibleRange):
389         * editing/Editor.h:
390
391         excludeFromTextSearch() is new. It allows a WebKit client to mark a 
392         frame as not-text-searchable through SPI. 
393         * WebCore.base.exp:
394         * page/Frame.cpp:
395         (WebCore::Frame::excludeFromTextSearch):
396         (WebCore::Frame::setExcludeFromTextSearch):
397         (WebCore::FramePrivate::FramePrivate):
398         * page/Frame.h:
399         * page/FramePrivate.h:
400
401         (WebCore::Frame::findString):
402         (WebCore::Frame::markAllMatchesForText):  I kept running into an 
403         assertion failure in paining code because of the forced paint on 
404         empty visible rects.
405
406 2008-08-20  Timothy Hatcher  <timothy@apple.com>
407
408         Adds a positon box to the Inspector's Metrics sidebar
409         pane. When an element is not statically positioned, there
410         is now a position box that show top, right, bottom and
411         left computed values.
412
413         Reviewed by Kevin McCullough.
414
415         * English.lproj/localizedStrings.js: Updated the strings.
416         * page/inspector/MetricsSidebarPane.js:
417         (WebInspector.MetricsSidebarPane.prototype.update):
418         Renamed the boxPartValue function to createBoxPartElement
419         and made it create the entire element. Made it understand
420         how to get position style properties. Don't use the figure dash
421         when 0px is used for positions, since the 0 is meaningful there.
422         Instead use the figure dash when a position is auto.
423         * page/inspector/inspector.css: Added a new rule for position.
424
425 2008-08-20  chris fleizach  <cfleizach@apple.com>
426
427         Reviewed by Beth Dakin
428
429         Qt build fix
430
431         * WebCore.pro:
432
433 2008-08-20  Dan Bernstein  <mitz@apple.com>
434
435         Reviewed by Anders Carlsson.
436
437         - avoid using a deprecated NSScroller method on Leopard
438
439         * platform/mac/PlatformScrollBarMac.mm:
440         (WebCore::PlatformScrollbar::updateThumbPosition):
441         (WebCore::PlatformScrollbar::updateThumbProportion):
442
443 2008-08-20  Jan Michael Alonzo  <jmalonzo@webkit.org>
444
445         Reviewed by Oliver Hunt.
446
447         Gtk build fix
448
449         * GNUmakefile.am:
450         * page/AccessibilityTable.cpp: Change nil to 0
451         (WebCore::AccessibilityTable::cellForColumnAndRow):
452
453 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
454
455         Reviewed by Geoff Garen.
456
457         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
458
459         * ForwardingHeaders/kjs/JSLock.h: Added.
460         * WebCore.vcproj/WebCore.vcproj:
461         * bindings/js/GCController.cpp:
462         (WebCore::collect):
463         (WebCore::GCController::gcTimerFired):
464         (WebCore::GCController::garbageCollectNow):
465         * bindings/js/JSCustomSQLStatementCallback.cpp:
466         (WebCore::JSCustomSQLStatementCallback::handleEvent):
467         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
468         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
469         * bindings/js/JSCustomSQLTransactionCallback.cpp:
470         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
471         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
472         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
473         * bindings/js/JSCustomVoidCallback.cpp:
474         (WebCore::JSCustomVoidCallback::handleEvent):
475         * bindings/js/JSCustomXPathNSResolver.cpp:
476         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
477         * bindings/js/JSDOMWindowBase.cpp:
478         (WebCore::DOMWindowTimer::~DOMWindowTimer):
479         (WebCore::JSDOMWindowBase::clear):
480         (WebCore::JSDOMWindowBase::timerFired):
481         * bindings/js/JSEventCustom.cpp:
482         (WebCore::toJS):
483         * bindings/js/JSEventListener.cpp:
484         (WebCore::JSAbstractEventListener::handleEvent):
485         * bindings/js/JSNSResolver.cpp:
486         (WebCore::JSNSResolver::lookupNamespaceURI):
487         * bindings/js/JSNodeFilterCondition.cpp:
488         (WebCore::JSNodeFilterCondition::acceptNode):
489         * bindings/js/ScheduledAction.cpp:
490         (WebCore::ScheduledAction::execute):
491         * bindings/js/ScriptController.cpp:
492         (WebCore::ScriptController::evaluate):
493         (WebCore::ScriptController::clearWindowShell):
494         (WebCore::ScriptController::createHTMLEventHandler):
495         (WebCore::ScriptController::createSVGEventHandler):
496         (WebCore::ScriptController::initScript):
497         (WebCore::ScriptController::updateDocument):
498         (WebCore::ScriptController::bindingRootObject):
499         (WebCore::ScriptController::windowScriptNPObject):
500         (WebCore::ScriptController::createScriptObjectForPluginElement):
501         (WebCore::ScriptController::clearScriptObjects):
502         * bindings/js/ScriptControllerMac.mm:
503         (WebCore::ScriptController::windowScriptObject):
504         * bindings/objc/WebScriptObject.mm:
505         (_didExecute):
506         (-[WebScriptObject callWebScriptMethod:withArguments:]):
507         (-[WebScriptObject evaluateWebScript:]):
508         (-[WebScriptObject setValue:forKey:]):
509         (-[WebScriptObject valueForKey:]):
510         (-[WebScriptObject removeWebScriptKey:]):
511         (-[WebScriptObject stringRepresentation]):
512         (-[WebScriptObject webScriptValueAtIndex:]):
513         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
514         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
515         * bridge/NP_jsobject.cpp:
516         (_NPN_InvokeDefault):
517         (_NPN_Invoke):
518         (_NPN_Evaluate):
519         (_NPN_GetProperty):
520         (_NPN_SetProperty):
521         (_NPN_RemoveProperty):
522         (_NPN_HasProperty):
523         (_NPN_HasMethod):
524         (_NPN_Enumerate):
525         * bridge/c/c_class.cpp:
526         (KJS::Bindings::CClass::~CClass):
527         (KJS::Bindings::CClass::methodsNamed):
528         (KJS::Bindings::CClass::fieldNamed):
529         * bridge/c/c_instance.cpp:
530         (KJS::Bindings::CInstance::invokeMethod):
531         (KJS::Bindings::CInstance::invokeDefaultMethod):
532         (KJS::Bindings::CInstance::getPropertyNames):
533         * bridge/c/c_runtime.cpp:
534         (KJS::Bindings::CField::valueFromInstance):
535         (KJS::Bindings::CField::setValueToInstance):
536         * bridge/c/c_utility.cpp:
537         (KJS::Bindings::convertValueToNPVariant):
538         (KJS::Bindings::convertNPVariantToValue):
539         * bridge/jni/jni_class.cpp:
540         (JavaClass::JavaClass):
541         (JavaClass::~JavaClass):
542         * bridge/jni/jni_instance.cpp:
543         (JavaInstance::stringValue):
544         * bridge/jni/jni_jsobject.mm:
545         (JavaJSObject::call):
546         (JavaJSObject::eval):
547         (JavaJSObject::getMember):
548         (JavaJSObject::setMember):
549         (JavaJSObject::removeMember):
550         (JavaJSObject::getSlot):
551         (JavaJSObject::setSlot):
552         (JavaJSObject::toString):
553         (JavaJSObject::convertValueToJObject):
554         (JavaJSObject::convertJObjectToValue):
555         * bridge/jni/jni_objc.mm:
556         (KJS::Bindings::dispatchJNICall):
557         * bridge/jni/jni_runtime.cpp:
558         (appendClassName):
559         (JavaMethod::signature):
560         * bridge/jni/jni_runtime.h:
561         (KJS::Bindings::JavaString::JavaString):
562         (KJS::Bindings::JavaString::_commonInit):
563         (KJS::Bindings::JavaString::~JavaString):
564         (KJS::Bindings::JavaString::UTF8String):
565         * bridge/jni/jni_utility.cpp:
566         (KJS::Bindings::convertValueToJValue):
567         * bridge/npruntime.cpp:
568         (_NPN_GetStringIdentifier):
569         * bridge/objc/objc_instance.mm:
570         (ObjcInstance::moveGlobalExceptionToExecState):
571         (ObjcInstance::invokeMethod):
572         (ObjcInstance::invokeDefaultMethod):
573         (ObjcInstance::setValueOfUndefinedField):
574         (ObjcInstance::getValueOfUndefinedField):
575         * bridge/objc/objc_runtime.mm:
576         (ObjcField::valueFromInstance):
577         (ObjcField::setValueToInstance):
578         * bridge/objc/objc_utility.mm:
579         (KJS::Bindings::convertValueToObjcValue):
580         (KJS::Bindings::convertNSStringToString):
581         (KJS::Bindings::convertObjcValueToValue):
582         * bridge/qt/qt_instance.cpp:
583         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
584         (KJS::Bindings::QtInstance::~QtInstance):
585         (KJS::Bindings::QtInstance::getQtInstance):
586         (KJS::Bindings::QtInstance::getRuntimeObject):
587         * bridge/qt/qt_runtime.cpp:
588         (KJS::Bindings::convertValueToQVariant):
589         (KJS::Bindings::convertQVariantToValue):
590         (KJS::Bindings::QtRuntimeMetaMethod::call):
591         (KJS::Bindings::QtRuntimeConnectionMethod::call):
592         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
593         (KJS::Bindings::QtConnectionObject::execute):
594         * bridge/runtime.cpp:
595         (KJS::Bindings::Instance::createRuntimeObject):
596         * bridge/testbindings.cpp:
597         (main):
598         * bridge/testbindings.mm:
599         (main):
600         * bridge/testqtbindings.cpp:
601         (main):
602         * dom/Document.cpp:
603         (WebCore::Document::~Document):
604         * dom/Node.cpp:
605         (WebCore::Node::setDocument):
606         * history/CachedPage.cpp:
607         (WebCore::CachedPage::CachedPage):
608         (WebCore::CachedPage::restore):
609         (WebCore::CachedPage::clear):
610         * loader/FrameLoader.cpp:
611         (WebCore::getString):
612         * page/InspectorController.cpp:
613         (WebCore::ConsoleMessage::ConsoleMessage):
614         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
615         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
616         (WebCore::getResourceDocumentNode):
617         (WebCore::search):
618         (WebCore::inspectedWindow):
619         (WebCore::wrapCallback):
620         (WebCore::currentCallFrame):
621         (WebCore::profiles):
622         (WebCore::InspectorController::focusNode):
623         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
624         (WebCore::InspectorController::addDatabaseScriptResource):
625         (WebCore::InspectorController::addScriptProfile):
626         * page/JavaScriptCallFrame.cpp:
627         (WebCore::JavaScriptCallFrame::evaluate):
628         * page/JavaScriptProfileNode.cpp:
629         (WebCore::getTotalTime):
630         (WebCore::getSelfTime):
631         (WebCore::getTotalPercent):
632         (WebCore::getSelfPercent):
633         (WebCore::getNumberOfCalls):
634         (WebCore::getChildren):
635         (WebCore::getVisible):
636         * page/Page.cpp:
637         * page/mac/FrameMac.mm:
638         * plugins/PluginView.cpp:
639         (WebCore::PluginView::start):
640         (WebCore::getString):
641         (WebCore::PluginView::performRequest):
642         (WebCore::PluginView::bindingInstance):
643         * plugins/gtk/PluginViewGtk.cpp:
644         (WebCore::PluginView::paint):
645         (WebCore::PluginView::handleKeyboardEvent):
646         (WebCore::PluginView::handleMouseEvent):
647         (WebCore::PluginView::setNPWindowRect):
648         (WebCore::PluginView::stop):
649         (WebCore::PluginView::init):
650         * plugins/qt/PluginViewQt.cpp:
651         (WebCore::PluginView::setNPWindowRect):
652         (WebCore::PluginView::stop):
653         (WebCore::PluginView::init):
654         * plugins/win/PluginViewWin.cpp:
655         (WebCore::PluginView::dispatchNPEvent):
656         (WebCore::PluginView::handleKeyboardEvent):
657         (WebCore::PluginView::handleMouseEvent):
658         (WebCore::PluginView::setNPWindowRect):
659         (WebCore::PluginView::stop):
660         * xml/XMLHttpRequest.cpp:
661         (WebCore::XMLHttpRequest::clearResponse):
662         (WebCore::XMLHttpRequest::didFinishLoading):
663         (WebCore::XMLHttpRequest::didReceiveData):
664
665 2008-08-19  Eric Seidel  <eric@webkit.org>
666
667         Reviewed by Geoff Garen.
668
669         Add the beginnings of Skia graphics support to WebCore
670         as I try to begin the long process of un-forking the changes
671         needed to WebCore to make Andriod's WebCore build.
672
673         I'll follow this up with actual *Skia.cpp files in a separate patch.
674
675         * platform/graphics/AffineTransform.h:
676         * platform/graphics/FloatPoint.h:
677         * platform/graphics/FloatRect.h:
678         * platform/graphics/Gradient.h:
679         * platform/graphics/GraphicsContext.h:
680         * platform/graphics/Image.h:
681         * platform/graphics/ImageBuffer.h:
682         * platform/graphics/ImageSource.h:
683         * platform/graphics/IntPoint.h:
684         * platform/graphics/IntRect.h:
685         * platform/graphics/Path.h:
686         * platform/graphics/Pattern.h:
687         * svg/graphics/SVGPaintServerPattern.h:
688         * svg/graphics/SVGPaintServerSolid.h:
689
690 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
691
692         Fix Windows build more.
693
694         * WebCore.vcproj/WebCore.vcproj:
695
696 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
697
698         Fix Windows build.
699
700         * page/AccessibilityRenderObject.cpp:
701         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
702
703 2008-08-19  chris fleizach  <cfleizach@apple.com>
704
705         Reviewed by Beth Dakin.
706
707         <rdar://problem/4003764> Expose tables as AXTables
708  
709         Tests: accessibility/table-attributes.html
710                accessibility/table-cell-spans.html
711                accessibility/table-cells.html
712                accessibility/table-detection.html
713                accessibility/table-sections.html
714                accessibility/table-with-rules.html
715
716         * WebCore.xcodeproj/project.pbxproj:
717         * page/AXObjectCache.cpp:
718         (WebCore::AXObjectCache::get):
719         * page/AccessibilityObject.h:
720         (WebCore::):
721         (WebCore::AccessibilityObject::isDataTable):
722         (WebCore::AccessibilityObject::isTableRow):
723         (WebCore::AccessibilityObject::isTableColumn):
724         (WebCore::AccessibilityObject::isTableCell):
725         * page/AccessibilityRenderObject.cpp:
726         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
727         * page/AccessibilityTable.cpp: Added.
728         (WebCore::AccessibilityTable::AccessibilityTable):
729         (WebCore::AccessibilityTable::~AccessibilityTable):
730         (WebCore::AccessibilityTable::create):
731         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
732         (WebCore::AccessibilityTable::clearChildren):
733         (WebCore::AccessibilityTable::addChildren):
734         (WebCore::AccessibilityTable::headerContainer):
735         (WebCore::AccessibilityTable::columns):
736         (WebCore::AccessibilityTable::rows):
737         (WebCore::AccessibilityTable::rowHeaders):
738         (WebCore::AccessibilityTable::columnHeaders):
739         (WebCore::AccessibilityTable::cells):
740         (WebCore::AccessibilityTable::columnCount):
741         (WebCore::AccessibilityTable::rowCount):
742         (WebCore::AccessibilityTable::cellForColumnAndRow):
743         (WebCore::AccessibilityTable::roleValue):
744         (WebCore::AccessibilityTable::accessibilityIsIgnored):
745         (WebCore::AccessibilityTable::title):
746         (WebCore::AccessibilityTable::isDataTable):
747         * page/AccessibilityTable.h: Added.
748         * page/AccessibilityTableCell.cpp: Added.
749         (WebCore::AccessibilityTableCell::AccessibilityTableCell):
750         (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
751         (WebCore::AccessibilityTableCell::create):
752         (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
753         (WebCore::AccessibilityTableCell::rowIndexRange):
754         (WebCore::AccessibilityTableCell::columnIndexRange):
755         * page/AccessibilityTableCell.h: Added.
756         (WebCore::AccessibilityTableCell::isTableCell):
757         (WebCore::AccessibilityTableCell::roleValue):
758         * page/AccessibilityTableColumn.cpp: Added.
759         (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
760         (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
761         (WebCore::AccessibilityTableColumn::create):
762         (WebCore::AccessibilityTableColumn::setParentTable):
763         (WebCore::AccessibilityTableColumn::elementRect):
764         (WebCore::AccessibilityTableColumn::size):
765         (WebCore::AccessibilityTableColumn::children):
766         (WebCore::AccessibilityTableColumn::headerObject):
767         (WebCore::AccessibilityTableColumn::headerObjectForSection):
768         (WebCore::AccessibilityTableColumn::addChildren):
769         * page/AccessibilityTableColumn.h: Added.
770         (WebCore::AccessibilityTableColumn::parentObject):
771         (WebCore::AccessibilityTableColumn::roleValue):
772         (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
773         (WebCore::AccessibilityTableColumn::isTableColumn):
774         (WebCore::AccessibilityTableColumn::setColumnIndex):
775         (WebCore::AccessibilityTableColumn::columnIndex):
776         * page/AccessibilityTableHeaderContainer.cpp: Added.
777         (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
778         (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
779         (WebCore::AccessibilityTableHeaderContainer::create):
780         (WebCore::AccessibilityTableHeaderContainer::children):
781         (WebCore::AccessibilityTableHeaderContainer::elementRect):
782         (WebCore::AccessibilityTableHeaderContainer::size):
783         (WebCore::AccessibilityTableHeaderContainer::addChildren):
784         * page/AccessibilityTableHeaderContainer.h: Added.
785         (WebCore::AccessibilityTableHeaderContainer::roleValue):
786         (WebCore::AccessibilityTableHeaderContainer::setParentTable):
787         (WebCore::AccessibilityTableHeaderContainer::parentObject):
788         (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
789         * page/AccessibilityTableRow.cpp: Added.
790         (WebCore::AccessibilityTableRow::AccessibilityTableRow):
791         (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
792         (WebCore::AccessibilityTableRow::create):
793         (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
794         (WebCore::AccessibilityTableRow::headerObject):
795         * page/AccessibilityTableRow.h: Added.
796         (WebCore::AccessibilityTableRow::isTableRow):
797         (WebCore::AccessibilityTableRow::roleValue):
798         (WebCore::AccessibilityTableRow::setRowIndex):
799         (WebCore::AccessibilityTableRow::rowIndex):
800         * page/mac/AccessibilityObjectWrapper.mm:
801         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
802         (RoleEntry::):
803         (-[AccessibilityObjectWrapper roleDescription]):
804         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
805         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
806         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
807
808 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
809
810         Build fix.
811         Add buildfailed support to stop builds early (preventing inaccurate error messages).
812         Add missing post-build rule to Release.
813
814         * WebCore.vcproj/QTMovieWin.vcproj:
815
816 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
817
818         Added support for console.count in the inspector.
819
820         Reviewed by Geoff Garen.
821
822         * page/Console.cpp:
823         (WebCore::Console::count):
824         * page/Console.h:
825         * page/Console.idl: Added console.count.
826         * page/InspectorController.cpp:
827         (WebCore::InspectorController::didCommitLoad): Clears m_counts.
828         (WebCore::InspectorController::count): Updates the count number
829         sing "title@source:line" as the identifier, and adds a
830         message to the console.
831         * page/InspectorController.h: Added m_counts.
832
833 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
834
835         Clear console.time timers when changing page.
836
837         Reviewed by Geoff Garen.
838
839         * page/InspectorController.cpp:
840         (WebCore::InspectorController::didCommitLoad):
841
842 2008-08-19  Eric Carlson  <eric.carlson@apple.com>
843
844         Reviewed by Adele.
845
846         Fix for <rdar://problem/6154695> Full-page movies flicker while playing
847         https://bugs.webkit.org/show_bug.cgi?id=20404
848
849         Ignore setVisible() when visibility doesn't change.
850
851         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
852         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
853         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
854         (WebCore::MediaPlayerPrivate::setVisible):
855
856 2008-08-19  Timothy Hatcher  <timothy@apple.com>
857
858         Fixes a bug in the Profile view where switching sort order, then
859         switching from heavy to tree mode would show the tree in the
860         previous sort order.
861
862         https://bugs.webkit.org/show_bug.cgi?id=20441
863
864         Reviewed by Kevin McCullough.
865
866         * page/inspector/ProfileView.js:
867         (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
868         on the next profile before assigning it to this.profile.
869         (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
870         (WebInspector.ProfileView.prototype._sortProfile): Moves from
871         _sortData and takes a profile argument. If the profile passed in
872         matches the this.profile, then call refresh.
873
874 2008-08-18  Timothy Hatcher  <timothy@apple.com>
875
876         Changed the default sort order now that heavy view is the default.
877         Also fixes a bug where the heavy profile was not sorted at first.
878
879         https://bugs.webkit.org/show_bug.cgi?id=20440
880
881         Reviewed by Kevin McCullough.
882
883         * page/inspector/ProfileView.js:
884         (WebInspector.ProfileView): Changed the default sort column. Also assign
885         heavyProfile to profile, so the sortSelfTimeDescending call happens
886         on the heavy profile before assigning to this.profile.
887
888 2008-08-18  Timothy Hatcher  <timothy@apple.com>
889
890         Add support for editing DOM properties and scope variables by double
891         clicking a property to enter edit mode.
892
893         https://bugs.webkit.org/show_bug.cgi?id=20415
894
895         Reviewed by Kevin McCullough.
896
897         * page/inspector/ObjectPropertiesSection.js:
898         (WebInspector.ObjectPropertiesSection): Set editable to true by default.
899         (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
900         Factored out code into update, and calls update.
901         (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
902         Call removeChildren since this method can be called multiple times now.
903         (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
904         gets made later in onattach.
905         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
906         if shouldRefreshChildren is true. Call removeChildren since this method can be
907         called multiple times now.
908         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
909         (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
910         (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
911         this element (code moved from the constructor.)
912         (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
913         sibling property elements.
914         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
915         WebInspector.startEditing after rememebring some context.
916         (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
917         for the list element, since it might have scrolled during editing.
918         (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
919         then restore the state from the context. Then call update to restore the title.
920         (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
921         if the user input and the previous input are the same. Call editingEnded, then call applyExpression
922         to commit the user input.
923         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
924         and stores the result on the object for the property name of this element. If the expression is
925         empty, delete the property and remove the tree element.
926         * page/inspector/ScopeChainSidebarPane.js:
927         (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
928         property on each ObjectPropertiesSection.
929         (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
930         since it is now implemented.
931         * page/inspector/ScriptsPanel.js:
932         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
933         that defaults to true if omitted. It specifies whether to call update on the scope chain.
934         * page/inspector/inspector.css: New styles.
935         * page/inspector/treeoutline.js:
936         (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
937         change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
938
939 2008-08-18  Timothy Hatcher  <timothy@apple.com>
940
941         Surround the expression to be evaluated in parenthesis so the
942         result of the eval is the result of the whole expression not
943         the last potential sub-expression. So evaluating {x: 123}
944         will show the Object not 123.
945
946         https://bugs.webkit.org/show_bug.cgi?id=20428
947
948         Reviewed by Kevin McCullough.
949
950         * page/inspector/Console.js:
951         (Console.prototype._evalInInspectedWindow): Add parenthesis
952         around the expression. And add couple comments.
953
954 2008-08-19 Kevin McCullough <kmccullough@apple.com>
955
956         Reviewed by Geoff.
957
958         -Implement a page() function to extract a common code pattern.
959
960         * WebCore.xcodeproj/project.pbxproj:
961         * page/Console.cpp:
962         (WebCore::Console::addMessage):
963         (WebCore::Console::error):
964         (WebCore::Console::info):
965         (WebCore::Console::log):
966         (WebCore::Console::dir):
967         (WebCore::Console::assertCondition):
968         (WebCore::Console::time):
969         (WebCore::Console::timeEnd):
970         (WebCore::Console::group):
971         (WebCore::Console::groupEnd):
972         (WebCore::Console::finishedProfiling):
973         (WebCore::Console::warn):
974         (WebCore::Console::framePage):
975         * page/Console.h:
976
977 2008-08-12  Darin Adler  <darin@apple.com>
978
979         Reviewed by Geoff.
980
981         - eliminate JSValue::type()
982
983         * bridge/c/c_instance.cpp:
984         (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
985         argument instead of JSType argument. Removed unneeded code to handle
986         boolean, since that's never passed.
987         * bridge/c/c_instance.h: Ditto.
988
989         * bridge/c/c_utility.cpp:
990         (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
991         instead of JSValue::type(). Removed unneeded code to handle
992         "unspecified".
993
994         * bridge/jni/jni_instance.cpp:
995         (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
996         instead of JSType argument. Removed unneeded code to handle boolean.
997         * bridge/jni/jni_instance.h: Ditto.
998
999         * bridge/jni/jni_jsobject.mm:
1000         (JavaJSObject::convertValueToJObject): Use JSValue::is functions
1001         instead of JSValue::type().
1002
1003         * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
1004         instead of JSType argument. Removed unused argument.
1005         * bridge/objc/objc_instance.mm:
1006         (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
1007         (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
1008         instead of JSType argument. Removed unneeded code to handle boolean
1009         and another dead code path for unknown types.
1010
1011         * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
1012         instead of JSType argument. Removed override of type() that caused
1013         the fallback object to return "UndefinedType" when there is no
1014         invokeUndefinedMethodFromWebScript:withArguments: method defined.
1015         That didn't accomplish much, since most checks for undefined don't
1016         ever call type().
1017         * bridge/objc/objc_runtime.mm:
1018         (ObjcFallbackObjectImp::defaultValue): Ditto.
1019
1020         * bridge/qt/qt_instance.cpp:
1021         (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
1022         argument instead of JSType argument. Removed unneeded code to handle
1023         boolean.
1024         * bridge/qt/qt_instance.h: Ditto.
1025
1026         * bridge/runtime.h:
1027         (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
1028         unsed argument.
1029         * bridge/runtime_object.cpp:
1030         (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
1031         argument instead of JSType argument.
1032         * bridge/runtime_object.h: Ditto.
1033
1034 2008-08-18  Maxime Britto  <britto@apple.com>
1035
1036         Reviewed by Adele.
1037
1038         <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
1039         Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
1040         We shouldn't be able to create another window while we are in pan scrolling.
1041         Other browsers behaviors :
1042           FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
1043           IE7 : Keys are not disabled but stops immediately the panning.
1044         This patch matches FF3 behavior by disabling every key but the esc key.
1045
1046         * page/EventHandler.cpp:
1047         (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
1048         (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
1049
1050 2008-08-18  Dan Bernstein  <mitz@apple.com>
1051
1052         Reviewed by Dave Hyatt.
1053
1054         - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
1055
1056         Test: fast/replaced/max-width-percent.html
1057
1058         Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
1059         When false, max-width is not factored into the
1060         calculation.
1061         Changed RenderReplaced and subclasses' calcPrefWidths() to call
1062         calcReplacedWidth(false) and then apply max-width only if it has a
1063         fixed, positive value.
1064
1065         * rendering/RenderBox.cpp:
1066         (WebCore::RenderBox::calcReplacedWidth):
1067         * rendering/RenderBox.h:
1068         * rendering/RenderImage.cpp:
1069         (WebCore::RenderImage::calcReplacedWidth):
1070         (WebCore::RenderImage::calcPrefWidths): 
1071         * rendering/RenderImage.h:
1072         * rendering/RenderReplaced.cpp:
1073         (WebCore::RenderReplaced::calcPrefWidths):
1074         * rendering/RenderSVGRoot.cpp:
1075         (WebCore::RenderSVGRoot::calcPrefWidths):
1076         * rendering/RenderVideo.cpp:
1077         (WebCore::RenderVideo::calcReplacedWidth):
1078         (WebCore::RenderVideo::calcPrefWidths):
1079         * rendering/RenderVideo.h:
1080
1081 2008-08-18  Daniel Macks  <dmacks@netspace.org>
1082
1083         Reviewed by Mark Rowe.
1084
1085         https://bugs.webkit.org/show_bug.cgi?id=20410
1086         More portable/self-documenting replacement for SIZE_MAX.
1087
1088         * platform/network/curl/FormDataStreamCurl.cpp:
1089         (WebCore::FormDataStream::read):
1090
1091 2008-08-18  Simon Fraser  <simon.fraser@apple.com>
1092
1093         Reviewed by Dave Hyatt
1094
1095         Need to make sure we have an Animation in the AnimationList
1096         before setting the initial value.
1097         https://bugs.webkit.org/show_bug.cgi?id=20408
1098
1099         Test: fast/css/transition_shorthand_parsing.html
1100
1101         * css/CSSStyleSelector.cpp:
1102
1103 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
1104
1105         Reviewed by Tim.
1106
1107         <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
1108         is another profile.
1109
1110         * page/inspector/ProfilesPanel.js:
1111
1112 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
1113
1114         Reviewed by Geoff.
1115
1116         <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
1117         all console messages
1118
1119         * page/inspector/Console.js:
1120
1121 2008-08-18  Dirk Schulze  <vbs85@gmx.de>
1122
1123         Reviewed by Eric Seidel.
1124
1125         Fixed Canvas for Cairo. Stroke and fill colors didn't work after
1126         the canvas clean up.
1127
1128         https://bugs.webkit.org/show_bug.cgi?id=20405
1129
1130         * html/CanvasRenderingContext2D.cpp:
1131         (WebCore::CanvasRenderingContext2D::fill):
1132         (WebCore::CanvasRenderingContext2D::stroke):
1133         (WebCore::CanvasRenderingContext2D::fillRect):
1134
1135 2008-08-17  Timothy Hatcher  <timothy@apple.com>
1136
1137         Complete in scope variables in the Console when paused.
1138
1139         https://bugs.webkit.org/show_bug.cgi?id=19115
1140
1141         Reviewed by Geoffrey Garen.
1142
1143         * page/inspector/Console.js:
1144         (WebInspector.Console.prototype.completions): If the expressionString
1145         is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
1146         to get an object that declares all the in scope variables. That way
1147         "top level" expressions are completed.
1148         * page/inspector/ScriptsPanel.js:
1149         (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
1150         Return an object that has all the variables that are in scope for the
1151         selected call frame. The value of each property is just true.
1152         The return object is useful for quick lookups or auto completion.
1153
1154 2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1155
1156         Not reviewed.
1157
1158         Speculative Qt build fix.
1159
1160         * bridge/qt/qt_runtime.cpp:
1161         (KJS::Bindings::convertValueToQVariant):
1162         (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
1163
1164 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
1165
1166         Reviewed by Cameron Zwarich.
1167         
1168         Updated project files to XCode 3.1.
1169
1170         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
1171
1172 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
1173
1174         Reviewed by Cameron Zwarich.
1175
1176         Made room for a free word in JSCell.
1177         
1178         Changed JSDOMWindowBase to store its auxiliary data in a subclass of
1179         JSGlobalData, so the two could share a pointer.
1180         
1181         Added a bunch of ASSERTs, to help catch over-sized objects.
1182
1183 2008-08-15  Mark Rowe  <mrowe@apple.com>
1184
1185         Reviewed by Dan Bernstein.
1186
1187         Disable dead code stripping in debug builds.
1188
1189         * Configurations/Base.xcconfig:
1190         * WebCore.xcodeproj/project.pbxproj:
1191
1192 2008-08-15  Mark Rowe  <mrowe@apple.com>
1193
1194         Rubber-stamped by Geoff Garen.
1195
1196         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
1197
1198         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
1199         between the Debug configuration and debug Production variant.
1200         * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
1201
1202 2008-08-15  Antti Koivisto  <antti@apple.com>
1203
1204         Reviewed by Anders.
1205
1206         Don't start preloading body resources before the head is complete. This prevents
1207         body preloads from slowing down initial display when there is limited amount
1208         of bandwidth available.
1209         
1210         Works by queuing up found body preloads to DocLoader and only issuing them
1211         after document has rendering.
1212         
1213         With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
1214         without affecting complete load time.
1215
1216         * html/PreloadScanner.cpp:
1217         (WebCore::PreloadScanner::PreloadScanner):
1218         (WebCore::PreloadScanner::scanningBody):
1219         (WebCore::PreloadScanner::emitTag):
1220         (WebCore::PreloadScanner::emitCSSRule):
1221         * html/PreloadScanner.h:
1222         * loader/DocLoader.cpp:
1223         (WebCore::DocLoader::preload):
1224         (WebCore::DocLoader::checkForPendingPreloads):
1225         (WebCore::DocLoader::requestPreload):
1226         * loader/DocLoader.h:
1227         * loader/loader.cpp:
1228         (WebCore::Loader::Host::didFinishLoading):
1229         (WebCore::Loader::Host::didFail):
1230
1231 2008-08-15  Ada Chan  <adachan@apple.com>
1232
1233         Use item's computed style if the render style is 0 before falling back to the <select>'s style.
1234         This way style set on an <hr> within a <select> will be honored.
1235
1236         Reviewed by Dave Hyatt and Dan Bernstein.
1237
1238         * rendering/RenderMenuList.cpp:
1239         (WebCore::RenderMenuList::itemStyle):
1240
1241 2008-08-15  Antti Koivisto  <antti@apple.com>
1242
1243         Reviewed by Oliver.
1244
1245         Some loader performance tweaks:
1246         - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
1247           Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue 
1248           to not delay rendering.
1249         - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
1250           can take long time when latency is high so it is good to get started early.
1251         - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
1252           load queues. Issue remaining loads to the network layer.
1253
1254         * loader/loader.cpp:
1255         (WebCore::Loader::determinePriority):
1256         (WebCore::Loader::load):
1257         (WebCore::Loader::Host::servePendingRequests):
1258         * loader/loader.h:
1259
1260 2008-08-15  Timothy Hatcher  <timothy@apple.com>
1261
1262         Detach the script debugger when the Web Inspector's window closes.
1263         This has always been the intended design, but never fully implemented.
1264
1265         https://bugs.webkit.org/show_bug.cgi?id=20402
1266
1267         Reviewed by Adam Roben.
1268
1269         * page/InspectorController.cpp:
1270         (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
1271         if the window is no longer visible.
1272
1273 2008-08-15  Håvard Wall  <hwall@trolltech.com>
1274
1275         Reviewed by Simon.
1276
1277         Fixes:    compile with QT_NO_CONTEXTMENU
1278
1279         * platform/qt/PlatformMouseEventQt.cpp:
1280         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1281         * platform/qt/PlatformScrollBarQt.cpp:
1282         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
1283         (WebCore::PlatformScrollbar::handleContextMenuEvent):
1284
1285 2008-08-15  Håvard Wall  <hwall@trolltech.com>
1286
1287         Reviewed by Simon.
1288
1289         Fixes: compile with QT_NO_WHEELEVENT
1290
1291         * platform/qt/WheelEventQt.cpp:
1292         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1293
1294 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
1295
1296         Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
1297
1298         https://bugs.webkit.org/show_bug.cgi?id=20210
1299
1300         Reviewed by Tim Hatcher.
1301
1302         * page/Console.cpp:
1303         (WebCore::Console::group):
1304         (WebCore::Console::groupEnd):
1305         * page/Console.h:
1306         (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
1307         * page/InspectorController.cpp:
1308         (WebCore::InspectorController::startGroup): Increments group level by
1309         one and adds console message with StartGroupMessaageLevel.
1310         (WebCore::InspectorController::endGroup): Decrements group level by one
1311         and adds console message with EndGroupMessaageLevel.
1312         * page/InspectorController.h:
1313         * page/inspector/Console.js:
1314         (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
1315         if the message is StartGroupMessaageLevel.
1316         (WebInspector.ConsoleMessage.prototype.toMessageElement):
1317         (WebInspector.ConsoleGroup.prototype.addMessage):
1318         * page/inspector/inspector.js:
1319
1320 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
1321
1322         Adds support for console.dir to the Inspector
1323
1324         https://bugs.webkit.org/show_bug.cgi?id=19155
1325
1326         Reviewed by Tim Hatcher.
1327
1328         * bindings/js/JSConsoleCustom.cpp:
1329         (WebCore::JSConsole::dir):
1330         * page/Console.cpp:
1331         (WebCore::Console::dir):
1332         * page/Console.h: Added ObjectMessageLevel.
1333         * page/Console.idl: Added console.dir.
1334         * page/inspector/Console.js:
1335         (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
1336         ObjectPropertiesSection if the MessageLevel is Object.
1337         * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
1338         used on primitive data types.
1339         * page/inspector/inspector.css:
1340
1341 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
1342
1343         Adds support for clear() in the Inspector console.
1344
1345         https://bugs.webkit.org/show_bug.cgi?id=19873
1346
1347         Reviewed by Tim Hatcher.
1348
1349         * page/inspector/Console.js:
1350
1351 2008-08-15  Anthony Ricaud  <rik24d@gmail.com>
1352
1353         Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
1354
1355         Platform distinction and modifier key matching adjusted
1356         by Daniel Jalkut <jalkut@red-sweater.com>
1357
1358         Bug 16313: text search (find) keybindings should work in the Web Inspector
1359         https://bugs.webkit.org/show_bug.cgi?id=16313
1360
1361         Reviewed by Tim Hatcher.
1362
1363         * page/inspector/inspector.js: Added a case for the F key
1364
1365 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
1366
1367         Fix for error when the string doesn't contain a webkit-profile link.
1368
1369         https://bugs.webkit.org/show_bug.cgi?id=20399
1370
1371         Reviewed by Tim Hatcher.
1372
1373         * page/inspector/inspector.js:
1374
1375 2008-08-15  Timothy Hatcher  <timothy@apple.com>
1376
1377         Fixes two bugs where JavaScript could be executed from the page
1378         while the debugger is paused.
1379
1380         The first issue was JSLazyEventListener not checking the paused
1381         state before parsing the code.
1382
1383         The second issue was with the PageGroup version of
1384         JavaScriptDebugServer::setJavaScriptPaused always passing false
1385         to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
1386         and not the paused argument.
1387
1388         https://bugs.webkit.org/show_bug.cgi?id=20284
1389
1390         Reviewed by Adam Roben.
1391
1392         * bindings/js/JSEventListener.cpp:
1393         (WebCore::JSLazyEventListener::parseCode): Check the paused
1394         state of the ScriptController. Return early if paused.
1395         * manual-tests/inspector/debugger-execution-while-paused.html: Added.
1396         * page/JavaScriptDebugServer.cpp:
1397         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
1398         Pass the paused argument to the Page version of setJavaScriptPaused.
1399
1400 2008-08-15  Alexey Proskuryakov  <ap@webkit.org>
1401
1402         Reviewed by Geoff Garen.
1403
1404         JSStringRef is created context-free, but can get linked to one via an identifier table,
1405         breaking an implicit API contract.
1406
1407         * page/InspectorController.cpp:
1408         (WebCore::jsStringRef):
1409         (WebCore::InspectorController::didParseSource):
1410         (WebCore::InspectorController::failedToParseSource):
1411         * page/JavaScriptProfile.cpp:
1412         (WebCore::getTitleCallback):
1413         Updated for JavaScriptCore changes.
1414
1415 2008-08-14  Kevin Ollivier  <kevino@theolliviers.com>
1416
1417         wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
1418         an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
1419
1420         * platform/graphics/AffineTransform.h:
1421
1422 2008-08-14  Eric Carlson  <eric.carlson@apple.com>
1423
1424         Reviewed by Adele.
1425
1426         Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
1427         <video> elements on Windows never becomes visible when a page is restored from the cache
1428
1429         Always pass "set" calls down to MediaPlayerPrivate instead of only when the
1430         value is different from the cached value. Let the implementation decide when
1431         to avoid work because nothing has changed.
1432
1433         * platform/graphics/MediaPlayer.cpp:
1434         (WebCore::MediaPlayer::setVolume):
1435         (WebCore::MediaPlayer::setRate):
1436         (WebCore::MediaPlayer::setRect):
1437         (WebCore::MediaPlayer::setVisible):
1438
1439 2008-08-14  Keishi Hattori  <casey.hattori@gmail.com>
1440
1441         Make Firebug command line API respect predefined variables.
1442
1443         https://bugs.webkit.org/show_bug.cgi?id=20385
1444
1445         Reviewed by Tim Hatcher.
1446
1447         * page/inspector/Console.js:
1448
1449 2008-08-14  Sam Weinig  <sam@webkit.org>
1450
1451         Reviewed by Geoffrey Garen and Timothy Hatcher.
1452
1453         Allow programatically setting the HTMLTokenizers time delay and chunk size
1454         which are used for determining how aggressively we yield.
1455
1456         * WebCore.base.exp:
1457         * html/HTMLTokenizer.cpp:
1458         (WebCore::HTMLTokenizer::begin):
1459         (WebCore::HTMLTokenizer::continueProcessing):
1460         * html/HTMLTokenizer.h:
1461         * page/Page.cpp:
1462         (WebCore::Page::Page):
1463         (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
1464         (WebCore::Page::setCustomHTMLTokenizerChunkSize):
1465         * page/Page.h:
1466         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
1467         (WebCore::Page::customHTMLTokenizerTimeDelay):
1468         (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
1469         (WebCore::Page::customHTMLTokenizerChunkSize):
1470
1471 2008-08-14  Eric Seidel  <eric@webkit.org>
1472
1473         Reviewed by Beth.
1474
1475         Move us one step closer to cross-platform svg/graphics code
1476
1477         * WebCore.xcodeproj/project.pbxproj:
1478         * html/CanvasStyle.cpp:
1479         * platform/graphics/Color.cpp:
1480         (WebCore::colorWithOverrideAlpha):
1481         * platform/graphics/Color.h:
1482         * svg/graphics/cg/CgSupport.cpp:
1483         (WebCore::applyStrokeStyleToContext):
1484         (WebCore::strokeBoundingBox):
1485         * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
1486         (WebCore::SVGPaintServerSolid::setup):
1487
1488 2008-08-14  Eric Seidel  <eric@webkit.org>
1489
1490         Reviewed by Alexey.
1491
1492         Remove un-need includes from HTMLCanvas and use the
1493         Gradient platform abstraction in one place in CanvasStyle
1494
1495         * html/CanvasRenderingContext2D.cpp:
1496         (WebCore::CanvasRenderingContext2D::fillRect):
1497         * html/CanvasStyle.cpp:
1498         * html/HTMLCanvasElement.cpp:
1499
1500 2008-08-14  Eric Seidel  <eric@webkit.org>
1501
1502         Reviewed by Alexey.
1503
1504         Clean up GlyphBuffer.h, removing more #ifdefs
1505
1506         * platform/graphics/GlyphBuffer.h:
1507         (WebCore::GlyphBuffer::glyphAt):
1508         (WebCore::GlyphBuffer::advanceAt):
1509         (WebCore::GlyphBuffer::add):
1510
1511 2008-08-14  Eric Seidel  <eric@webkit.org>
1512
1513         Reviewed by Sam.
1514
1515         Clean up AffineTransform.h, removing #ifdefs
1516
1517         * platform/graphics/AffineTransform.h:
1518         * platform/graphics/cairo/AffineTransformCairo.cpp:
1519         * platform/graphics/cg/AffineTransformCG.cpp:
1520         * platform/graphics/qt/AffineTransformQt.cpp:
1521         * platform/graphics/wx/AffineTransformWx.cpp:
1522
1523 2008-08-14  Dan Bernstein  <mitz@apple.com>
1524
1525         - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
1526
1527         * platform/graphics/cairo/ImageSourceCairo.cpp:
1528         (WebCore::ImageSource::frameSizeAtIndex):
1529         * platform/graphics/qt/ImageSourceQt.cpp:
1530         (WebCore::ImageSource::frameSizeAtIndex):
1531         * platform/graphics/wx/ImageSourceWx.cpp:
1532         (WebCore::ImageSource::frameSizeAtIndex):
1533
1534 2008-08-14  Dan Bernstein  <mitz@apple.com>
1535
1536         Reviewed by Brady Eidson.
1537
1538         - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
1539
1540         * platform/graphics/BitmapImage.cpp: 
1541         (WebCore::BitmapImage::BitmapImage): Added initialization of
1542         m_hasUniformFrameSize.
1543         (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
1544         cached frame for use in decoded size computation and for setting
1545         m_hasUniformFrameSize.
1546         (WebCore::BitmapImage::currentFrameSize): Added.
1547         (WebCore::BitmapImage::dataChanged): Added code to reset
1548         m_hasUniformFrameSize.
1549         * platform/graphics/BitmapImage.h: Added currentFrameSize() and
1550         m_hasUniformFrameSize.
1551         * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
1552         * platform/graphics/cg/ImageCG.cpp:
1553         (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
1554         fixes the bug, which resulted from assuming that the frame being drawn 
1555         was the same size as the first frame.
1556         * platform/graphics/cg/ImageSourceCG.cpp:
1557         (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
1558         changed to get the size of the frame at the given index.
1559         (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
1560
1561 2008-08-13  Simon Fraser  <simon.fraser@apple.com>
1562
1563         Reviewed by Eric Seidel
1564
1565         Fix @font-face inside @media rule crash.
1566         https://bugs.webkit.org/show_bug.cgi?id=20367
1567
1568         Test: fast/css/font-face-in-media-rule.html
1569
1570         * css/CSSStyleSelector.cpp:
1571         (WebCore::CSSRuleSet::addRulesFromSheet):
1572
1573 2008-08-14  Kevin Ollivier  <kevino@theolliviers.com>
1574
1575         wx build fixes after recent changes to Canvas and Image classes.
1576
1577         * platform/graphics/Pattern.h:
1578         * platform/graphics/wx/GradientWx.cpp:
1579         (WebCore::Gradient::fill):
1580         * platform/graphics/wx/GraphicsContextWx.cpp:
1581         (WebCore::GraphicsContext::applyFillPattern):
1582         (WebCore::GraphicsContext::applyStrokePattern):
1583         * platform/graphics/wx/ImageBufferWx.cpp:
1584         (WebCore::ImageBuffer::image):
1585         * platform/graphics/wx/ImageWx.cpp:
1586         (WebCore::Image::loadPlatformResource):
1587
1588 2008-08-14  Maxime Britto  <britto@apple.com>
1589
1590         Reviewed by Sam Weinig.
1591
1592         rdar://6102511
1593         When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
1594         IE and FF are both preventing the keyboard event to interact with the page while scrolling.
1595         Some differences exist between them concerning the kind of key which is pressed :
1596         IE7 : every key leads to a stop of the panning
1597         FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
1598         For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
1599
1600         * page/EventHandler.cpp:
1601         (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
1602
1603 2008-08-14  Christian Dywan  <christian@twotoasts.de>
1604
1605         Gtk+/ Cairo build fix, patch by Dirk Schulze.
1606
1607         * html/CanvasStyle.cpp:
1608         * platform/graphics/cairo/PatternCairo.cpp:
1609         (WebCore::Pattern::createPlatformPattern):
1610         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
1611
1612 2008-08-14  Kevin McCullough  <kmccullough@apple.com>
1613
1614         Reviewed by Tim.
1615
1616         <rdar://problem/6115819> Notify of profile in console
1617
1618         * page/InspectorController.cpp:
1619         (WebCore::InspectorController::addProfile):
1620         (WebCore::InspectorController::addProfileMessageToConsole): Called by
1621         addProfile this is the function that adds a message to the console that
1622         a profile finished.
1623         * page/InspectorController.h:
1624         * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
1625         the console log to the profile in the web inspector.
1626         (WebCore::getUniqueIdCallback):
1627         (WebCore::ProfileClass):
1628         * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
1629         Id to bring up the requested profile.  Also select and reveal the
1630         profile in the profile panel.  And created displayTitleForProfileLink()
1631         which formats a title taking into account if it's user initiated or if
1632         there are multiples. Lasty, I put the user initiated profile in a
1633         variable.
1634         * page/inspector/inspector.js: Make the profile title be a clickable
1635         link that will take the user to the identified profile.  Also expose
1636         the count of user initiated profiles so they can be displayed in the
1637         console with the correct count.
1638
1639 2008-08-14  Timothy Hatcher  <timothy@apple.com>
1640
1641         Avoid formating ConsoleMessages twice unless the message will be
1642         displayed in bubbles of a SourceFrame.
1643
1644         Reviewed by Kevin McCullough.
1645
1646         * page/inspector/Console.js:
1647         (WebInspector.ConsoleMessage): Only format the plain text message
1648         if the URL and line are valid and the level is error or warning.
1649         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
1650         Helper to test for error or warning level.
1651         * page/inspector/SourceFrame.js:
1652         (WebInspector.SourceFrame.prototype.addMessage): Don't add the
1653         message if there is no message or valid line or if the msg
1654         isn't an error or warning.
1655
1656 2008-08-14  Jan Michael Alonzo  <jmalonzo@webkit.org>
1657
1658         partial Gtk build fix, not reviewed
1659
1660         * platform/graphics/cairo/PatternCairo.cpp:
1661
1662 2008-08-13  Sam Weinig  <sam@webkit.org>
1663
1664         Reviewed by Anders Carlson.
1665
1666         Fix style issue.
1667
1668         * html/HTMLMediaElement.cpp:
1669         (WebCore::HTMLMediaElement::pickMedia):
1670
1671 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
1672
1673         Build fix for Cairo, not reviewed. (exposed by gtk build slave)
1674         Continue Erics build fixes, after the Image cleanup.
1675
1676         * platform/graphics/cairo/ImageBufferCairo.cpp:
1677         (WebCore::ImageBuffer::image):
1678
1679 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
1680
1681         Build fix for Qt, not reviewed.
1682         Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
1683
1684         * dom/XMLTokenizer.cpp:
1685         (WebCore::eventuallyMarkAsParserCreated): Was erre
1686
1687 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
1688
1689         Build fix, not reviewed.
1690         Add ScriptElement.cpp to Gtk build.
1691
1692         * GNUmakefile.am:
1693
1694 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
1695
1696         Reviewed by Eric.
1697
1698         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
1699
1700         Refactor HTMLScriptElement's code into a common base class: ScriptElement.
1701         SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
1702
1703         This resolves code duplications and allows us to completly replace the old
1704         SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
1705
1706         As ScriptElement, doesn't actually inherit from Element, we may want to rename
1707         it, though StyleElement uses the same naming convention, so I left it as is for now.
1708         Eventually we'll rename both files in future.
1709
1710         No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
1711
1712         * WebCore.pro: Add new ScriptElement.cpp to build.
1713         * WebCore.vcproj/WebCore.vcproj: Ditto.
1714         * WebCore.xcodeproj/project.pbxproj: Ditto.
1715         * WebCoreSources.bkl: Dutto.
1716         * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
1717         (WebCore::ScriptElement::insertedIntoDocument):
1718         (WebCore::ScriptElement::removedFromDocument):
1719         (WebCore::ScriptElement::childrenChanged):
1720         (WebCore::ScriptElement::finishParsingChildren):
1721         (WebCore::ScriptElement::handleSourceAttribute):
1722         (WebCore::isSupportedJavaScriptLanguage):
1723         (WebCore::ScriptElementData::ScriptElementData):
1724         (WebCore::ScriptElementData::~ScriptElementData):
1725         (WebCore::ScriptElementData::requestScript):
1726         (WebCore::ScriptElementData::evaluateScript):
1727         (WebCore::ScriptElementData::stopLoadRequest):
1728         (WebCore::ScriptElementData::notifyFinished):
1729         (WebCore::ScriptElementData::ignoresLoadRequest):
1730         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
1731         (WebCore::ScriptElementData::scriptCharset):
1732         (WebCore::ScriptElementData::scriptContent):
1733         * dom/ScriptElement.h: Added.
1734         (WebCore::ScriptElement::ScriptElement):
1735         (WebCore::ScriptElement::~ScriptElement):
1736         (WebCore::ScriptElementData::element):
1737         (WebCore::ScriptElementData::createdByParser):
1738         (WebCore::ScriptElementData::setCreatedByParser):
1739         * dom/XMLTokenizer.cpp:
1740         (WebCore::isScriptElement):
1741         (WebCore::castToScriptElement):
1742         (WebCore::eventuallyMarkAsParserCreated):
1743         (WebCore::XMLTokenizer::startElementNs):
1744         (WebCore::XMLTokenizer::endElementNs):
1745         (WebCore::createXHTMLParserErrorHeader):
1746         (WebCore::XMLTokenizer::insertErrorMessageBlock):
1747         * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
1748         (WebCore::HTMLScriptElement::HTMLScriptElement):
1749         (WebCore::HTMLScriptElement::~HTMLScriptElement):
1750         (WebCore::HTMLScriptElement::isURLAttribute):
1751         (WebCore::HTMLScriptElement::setCreatedByParser):
1752         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
1753         (WebCore::HTMLScriptElement::childrenChanged):
1754         (WebCore::HTMLScriptElement::parseMappedAttribute):
1755         (WebCore::HTMLScriptElement::finishParsingChildren):
1756         (WebCore::HTMLScriptElement::insertedIntoDocument):
1757         (WebCore::HTMLScriptElement::removedFromDocument):
1758         (WebCore::HTMLScriptElement::text):
1759         (WebCore::HTMLScriptElement::setText):
1760         (WebCore::HTMLScriptElement::setHtmlFor):
1761         (WebCore::HTMLScriptElement::setEvent):
1762         (WebCore::HTMLScriptElement::charset):
1763         (WebCore::HTMLScriptElement::src):
1764         (WebCore::HTMLScriptElement::type):
1765         (WebCore::HTMLScriptElement::scriptCharset):
1766         (WebCore::HTMLScriptElement::scriptContent):
1767         (WebCore::HTMLScriptElement::sourceAttributeValue):
1768         (WebCore::HTMLScriptElement::charsetAttributeValue):
1769         (WebCore::HTMLScriptElement::typeAttributeValue):
1770         (WebCore::HTMLScriptElement::languageAttributeValue):
1771         (WebCore::HTMLScriptElement::dispatchLoadEvent):
1772         (WebCore::HTMLScriptElement::dispatchErrorEvent):
1773         * html/HTMLScriptElement.h:
1774         * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
1775         * svg/SVGScriptElement.cpp:
1776         (WebCore::SVGScriptElement::SVGScriptElement):
1777         (WebCore::SVGScriptElement::scriptContent):
1778         (WebCore::SVGScriptElement::sourceAttributeValue):
1779         (WebCore::SVGScriptElement::charsetAttributeValue):
1780         (WebCore::SVGScriptElement::typeAttributeValue):
1781         (WebCore::SVGScriptElement::languageAttributeValue):
1782         (WebCore::SVGScriptElement::dispatchLoadEvent):
1783         (WebCore::SVGScriptElement::dispatchErrorEvent):
1784         * svg/SVGScriptElement.h:
1785         (WebCore::SVGScriptElement::setCreatedByParser):
1786
1787 2008-08-13  Eric Seidel  <eric@webkit.org>
1788
1789         Attempt to fix the Gtk build, no review.
1790
1791         I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
1792
1793         * platform/graphics/GraphicsContext.h:
1794         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1795         * platform/graphics/qt/GradientQt.cpp:
1796         * platform/graphics/qt/GraphicsContextQt.cpp:
1797         * platform/gtk/RenderThemeGtk.cpp:
1798         (WebCore::paintMozWidget):
1799
1800 2008-08-13  Eric Seidel  <eric@webkit.org>
1801
1802         Yet another attempt to fix the Qt build, no review.
1803
1804         * platform/graphics/qt/GradientQt.cpp:
1805         * platform/graphics/qt/GraphicsContextQt.cpp:
1806         (WebCore::GraphicsContext::applyStrokePattern):
1807         (WebCore::GraphicsContext::applyFillPattern):
1808
1809 2008-08-13  Eric Seidel  <eric@webkit.org>
1810
1811         Attempt to fix the Windows build, no review.
1812
1813         * platform/win/CursorWin.cpp:
1814         (WebCore::loadCursorByName):
1815         * platform/win/ScrollViewWin.cpp:
1816         (WebCore::ScrollView::paint):
1817
1818 2008-08-13  Eric Seidel  <eric@webkit.org>
1819
1820         Attempt to fix the Windows build, no review.
1821
1822         * platform/win/CursorWin.cpp:
1823         (WebCore::loadCursorByName):
1824         * platform/win/ScrollViewWin.cpp:
1825         (WebCore::ScrollView::paint):
1826
1827 2008-08-13  Eric Seidel  <eric@webkit.org>
1828
1829         Attempt to fix the Qt build, no review.
1830
1831         * platform/graphics/qt/ImageBufferQt.cpp:
1832         (WebCore::ImageBuffer::image):
1833
1834 2008-08-13  Eric Seidel  <eric@webkit.org>
1835
1836         Attempt to fix the Windows build, no review.
1837
1838         * platform/graphics/win/ImageWin.cpp:
1839         (WebCore::Image::loadPlatformResource):
1840         * plugins/win/PluginViewWin.cpp:
1841         (WebCore::PluginView::paintMissingPluginIcon):
1842
1843 2008-08-13  Eric Seidel  <eric@webkit.org>
1844
1845         Another attempt to fix the Qt build, no review.
1846
1847         * platform/graphics/qt/ImageQt.cpp:
1848         * platform/graphics/qt/StillImageQt.h:
1849
1850 2008-08-13  Eric Seidel  <eric@webkit.org>
1851
1852         No review, build fix only.
1853
1854         Fix mac build, due to change in new code since my patch was written.
1855
1856         * svg/graphics/cg/SVGResourceMaskerCg.mm:
1857         (WebCore::SVGResourceMasker::applyMask):
1858
1859 2008-08-13  Eric Seidel  <eric@webkit.org>
1860
1861         Build fix only, no review.
1862
1863         Attempt to fix the Qt build.
1864
1865         * platform/graphics/qt/ImageBufferQt.cpp:
1866         * platform/graphics/qt/StillImageQt.h:
1867         (WebCore::StillImage::create):
1868         (WebCore::StillImage::destroyDecodedData):
1869         (WebCore::StillImage::decodedSize):
1870
1871 2008-08-13  Eric Seidel  <eric@webkit.org>
1872
1873         Build fix only, no review.
1874
1875         Attempt to fix the Qt build.
1876
1877         * html/CanvasStyle.cpp:
1878         (WebCore::CanvasStyle::applyStrokeColor):
1879         (WebCore::CanvasStyle::applyFillColor):
1880
1881 2008-08-13  Eric Seidel  <eric@webkit.org>
1882
1883         Reviewed by Sam.
1884
1885         Match HTML5 spec by throwing INVALID_STATE_ERR when
1886         createPattern is called and the HTMLImageElement is not
1887         yet done loading the image (!isComplete)
1888         https://bugs.webkit.org/show_bug.cgi?id=20351
1889
1890         Test: http/misc/canvas-pattern-from-incremental-image.html
1891
1892         * html/CanvasRenderingContext2D.cpp:
1893         (WebCore::CanvasRenderingContext2D::createPattern):
1894
1895 2008-08-13  Eric Seidel  <eric@webkit.org>
1896
1897         Reviewed by Niko.
1898
1899         Split out a Pattern class from CanvasPattern
1900         and remove all the Pattern-related #ifdefs
1901         (This will break non-mac platforms!  I will fix them.)
1902         https://bugs.webkit.org/show_bug.cgi?id=20351
1903
1904         * GNUmakefile.am:
1905         * WebCore.pro:
1906         * WebCore.vcproj/WebCore.vcproj:
1907         * WebCore.xcodeproj/project.pbxproj:
1908         * WebCoreSources.bkl:
1909         * html/CanvasPattern.cpp:
1910         (WebCore::CanvasPattern::parseRepetitionType):
1911         (WebCore::CanvasPattern::CanvasPattern):
1912         * html/CanvasPattern.h:
1913         (WebCore::CanvasPattern::create):
1914         (WebCore::CanvasPattern::pattern):
1915         (WebCore::CanvasPattern::originClean):
1916         * html/CanvasRenderingContext2D.cpp:
1917         (WebCore::CanvasRenderingContext2D::createPattern):
1918         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
1919         (WebCore::CanvasRenderingContext2D::applyFillPattern):
1920         * html/CanvasRenderingContext2D.h:
1921         * html/HTMLCanvasElement.cpp:
1922         * html/HTMLCanvasElement.h:
1923         * loader/FrameLoader.cpp:
1924         (WebCore::FrameLoader::createHistoryItem):
1925         * platform/graphics/GraphicsContext.h:
1926         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1927         (WebCore::GraphicsContext::applyStrokePattern):
1928         (WebCore::GraphicsContext::applyFillPattern):
1929         * platform/graphics/cg/GraphicsContextCG.cpp:
1930         (WebCore::GraphicsContext::clipToImageBuffer):
1931         (WebCore::GraphicsContext::applyStrokePattern):
1932         (WebCore::GraphicsContext::applyFillPattern):
1933
1934 2008-08-13  Eric Seidel  <eric@webkit.org>
1935
1936         Reviewed by Niko.
1937
1938         Make Images RefCounted (and clean up callers)
1939         https://bugs.webkit.org/show_bug.cgi?id=20351
1940
1941         * editing/DeleteButtonController.cpp:
1942         (WebCore::DeleteButtonController::createDeletionUI):
1943         * loader/CachedImage.cpp:
1944         (WebCore::CachedImage::CachedImage):
1945         (WebCore::brokenImage):
1946         (WebCore::nullImage):
1947         (WebCore::CachedImage::image):
1948         (WebCore::CachedImage::notifyObservers):
1949         (WebCore::CachedImage::createImage):
1950         * loader/CachedImage.h:
1951         * loader/icon/IconRecord.cpp:
1952         (WebCore::IconRecord::setImageData):
1953         (WebCore::IconRecord::loadImageFromResource):
1954         * loader/icon/IconRecord.h:
1955         * platform/graphics/BitmapImage.h:
1956         (WebCore::BitmapImage::create):
1957         * platform/graphics/GeneratedImage.h:
1958         * platform/graphics/Gradient.cpp:
1959         * platform/graphics/Gradient.h:
1960         * platform/graphics/Image.cpp:
1961         (WebCore::Image::nullImage):
1962         * platform/graphics/Image.h:
1963         * platform/graphics/ImageBuffer.h:
1964         * platform/graphics/cairo/ImageBufferCairo.cpp:
1965         (WebCore::ImageBuffer::image):
1966         * platform/graphics/cg/ImageBufferCG.cpp:
1967         (WebCore::ImageBuffer::image):
1968         (WebCore::ImageBuffer::getImageData):
1969         (WebCore::ImageBuffer::putImageData):
1970         * platform/graphics/cg/PDFDocumentImage.h:
1971         (WebCore::PDFDocumentImage::create):
1972         (WebCore::PDFDocumentImage::destroyDecodedData):
1973         (WebCore::PDFDocumentImage::decodedSize):
1974         * platform/graphics/gtk/ImageGtk.cpp:
1975         (WebCore::Image::loadPlatformResource):
1976         * platform/graphics/mac/ImageMac.mm:
1977         (WebCore::Image::loadPlatformResource):
1978         * rendering/RenderImage.cpp:
1979         * rendering/RenderLayer.cpp:
1980         (WebCore::RenderLayer::paintOverflowControls):
1981         * svg/graphics/SVGImage.cpp:
1982         (WebCore::SVGImage::nativeImageForCurrentFrame):
1983         * svg/graphics/SVGImage.h:
1984         (WebCore::SVGImage::create):
1985         (WebCore::SVGImage::destroyDecodedData):
1986         (WebCore::SVGImage::decodedSize):
1987         (WebCore::SVGImage::frameAtIndex):
1988         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
1989         (WebCore::SVGPaintServerPattern::setup):
1990         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
1991         (WebCore::SVGResourceMasker::applyMask):
1992         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
1993         (WebCore::patternCallback):
1994         * svg/graphics/cg/SVGResourceMaskerCg.mm:
1995         (WebCore::SVGResourceMasker::applyMask):
1996
1997 2008-08-13  Eric Seidel  <eric@webkit.org>
1998
1999         Reviewed by Niko.
2000
2001         Remove #ifdefs from CanvasStyle by using platform/Color.h
2002         https://bugs.webkit.org/show_bug.cgi?id=20351
2003
2004         There are some down-sides to this commit.
2005         This commit limits us to 255 levels of grey for calls like:
2006         context.setStrokeStyle(.37, 1.0)
2007         previously CG might have used up to 32bits to store the grey level
2008         Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
2009
2010         Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
2011         to RGBA32 (like all the rest of colors in WebCore), thus:
2012         context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
2013         context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
2014
2015         If this is a problem for Dashboard, we can either roll out this commit
2016         or add a beefier Color abstraction, which can be used internally by GraphicsContext
2017         when keeping state, and then GraphicsContext can grow some additional set* routines
2018         for setting the a grey/float/whatever fill and stroke.
2019
2020         * html/CanvasRenderingContext2D.cpp:
2021         (WebCore::CanvasRenderingContext2D::setFillStyle):
2022         * html/CanvasStyle.cpp:
2023         (WebCore::CanvasStyle::CanvasStyle):
2024         (WebCore::colorWithOverrideAlpha):
2025         (WebCore::CanvasStyle::applyStrokeColor):
2026         (WebCore::CanvasStyle::applyFillColor):
2027         * html/CanvasStyle.h:
2028         * platform/graphics/Color.cpp:
2029         (WebCore::colorFloatToRGBAByte):
2030         (WebCore::makeRGBA32FromFloats):
2031         * platform/graphics/Color.h:
2032
2033 2008-08-13  Eric Carlson  <eric.carlson@apple.com>
2034
2035         Reviewed by Adele Peterson.
2036
2037         Fix for <rdar://problem/6137931>
2038         https://bugs.webkit.org/show_bug.cgi?id=20360
2039         Remove all parameters from the MIME type before checking with the MIME type registry
2040
2041         Tests: media/video-source-type-params.html
2042
2043         * html/HTMLMediaElement.cpp:
2044         (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';' 
2045         to isSupportedMediaMIMEType()
2046
2047 2008-08-13  Beth Dakin  <bdakin@apple.com>
2048
2049         Reviewed by Sam Weinig.
2050
2051         Fix for <rdar://problem/6141345>
2052
2053         This patch refines findString and markAllMatchesForText functions' 
2054         interactions with disconnected frames. They no longer rely on 
2055         knowing where a range is relative to the visible region and work 
2056         with disconnected frames that contain frames.
2057
2058         * editing/Editor.cpp:
2059         (WebCore::Editor::insideVisibleArea): Now returns a bool instead of 
2060         the visiblity enum.
2061         (WebCore::Editor::firstVisibleRange): This now returns the very 
2062         first visible range in the document. It's no longer dependent on 
2063         searching forward.
2064         (WebCore::Editor::lastVisibleRange): This now returns the very last 
2065         visible range in the document. It's no longer dependent on 
2066         searching backwards.
2067         (WebCore::Editor::nextVisibleRange): This returns the next visible 
2068         range in the appropriate direction from the current range.
2069         * editing/Editor.h:
2070         * page/Frame.cpp:
2071         (WebCore::Frame::findString):
2072         (WebCore::Frame::markAllMatchesForText):
2073
2074 2008-08-13  Kevin Ollivier  <kevino@theolliviers.com>
2075
2076         wx build fix for case-sensitive platforms, like Linux.
2077
2078         * WebCoreSources.bkl:
2079
2080 2008-08-13  Marco Barisione  <marco.barisione@collabora.co.uk>
2081
2082         Reviewed by Holger Freyther.
2083
2084         http://bugs.webkit.org/show_bug.cgi?id=16881
2085         [GTK] PlatformScreenGtk is unimplemented
2086
2087         Original patch by Christian Dywan.
2088
2089         * platform/gtk/PlatformScreenGtk.cpp:
2090         (WebCore::screenDepth):
2091         (WebCore::screenDepthPerComponent):
2092         (WebCore::screenIsMonochrome):
2093         (WebCore::screenRect):
2094         (WebCore::screenAvailableRect):
2095
2096 2008-08-13  Jan Michael Alonzo  <jmalonzo@webkit.org>
2097
2098         Reviewed by Holger Freyther.
2099
2100         http://bugs.webkit.org/show_bug.cgi?id=20318
2101         SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
2102
2103         g_idle_add is the same as g_idle_add_full with a priority of
2104         G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
2105
2106         * platform/gtk/SharedTimerGtk.cpp:
2107         (WebCore::setSharedTimerFireTime):
2108
2109 2008-08-13  Timothy Hatcher  <timothy@apple.com>
2110
2111         Changed the InspectorController so it can be notified when the
2112         attached state of the Inspector changes in WebKit.
2113
2114         Reviewed by Kevin McCullough.
2115
2116         * WebCore.base.exp: Updated the symbol for setWindowVisible.
2117         * page/InspectorController.cpp:
2118         (WebCore::InspectorController::setWindowVisible): Added an attached argument,
2119         that defaults to false.Call setAttachedWindow with the attached argument.
2120         (WebCore::InspectorController::setAttachedWindow): Call the script version
2121         of setAttachedWindow.
2122         * page/InspectorController.h:
2123         * page/inspector/inspector.js:
2124         (WebInspector.setAttachedWindow): Set the attached property.
2125
2126 2008-08-12  Timothy Hatcher  <timothy@apple.com>
2127
2128         Added a close button to the Inspector's toolbar when docked.
2129
2130         https://bugs.webkit.org/show_bug.cgi?id=14270
2131
2132         Reviewed by Kevin McCullough.
2133
2134         * page/InspectorController.cpp:
2135         (WebCore::closeWindow): Call InspectorController::closeWindow.
2136         (WebCore::InspectorController::windowScriptObjectAvailable):
2137         Added closeWindow to the script class.
2138         * page/InspectorController.h:
2139         * page/inspector/Images/closeButtons.png: Added.
2140         * page/inspector/inspector.css: Added and changed styles.
2141         * page/inspector/inspector.html: Added the close button.
2142         * page/inspector/inspector.js:
2143         (WebInspector.loaded): Added click event listener to the close button.
2144         (WebInspector.close): Call InspectorController.closeWindow.
2145
2146 2008-08-12  Timothy Hatcher  <timothy@apple.com>
2147
2148         Make the docked Web Inspector resizable. This is the cross platform
2149         portion of the code. Each InspectorClient needs to implement the
2150         real resize code.
2151
2152         https://bugs.webkit.org/show_bug.cgi?id=14282
2153
2154         Reviewed by Kevin McCullough.
2155
2156         * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
2157         * page/InspectorClient.h: Added setAttachedWindowHeight.
2158         * page/InspectorController.cpp:
2159         (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
2160         on the InspectorController.
2161         (WebCore::InspectorController::setAttachedWindowHeight): Call
2162         setAttachedWindowHeight on the client.
2163         (WebCore::InspectorController::windowScriptObjectAvailable):
2164         Added setAttachedWindowHeight to the script class.
2165         * page/InspectorController.h:
2166         * page/inspector/inspector.css: Make the cursor on the toolbar be
2167         row-resize when docked.
2168         * page/inspector/inspector.js:
2169         (WebInspector.loaded): Always add the toolbarDragStart event listener.
2170         (WebInspector.toolbarDragStart): Return early if we are not attached
2171         and not on Leopard. Call WebInspector.elementDragStart.
2172         (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
2173         (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
2174         otherwise call moveByUnrestricted.
2175
2176 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
2177
2178         Reviewed by Holger.
2179
2180         Initialize m_zoomsTextOnly in the Settings constructor.
2181
2182         * page/Settings.cpp:
2183         (WebCore::Settings::Settings):
2184
2185 2008-08-13  Brad Hughes <bhughes@trolltech.com>
2186
2187         Reviewed by Simon.
2188
2189         Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
2190
2191         The latest upgrade of the intel compiler allows us to compile all of
2192         Qt with optimizations enabled (yay!).
2193
2194         * WebCore.pro:
2195
2196 2008-08-13  Prasanth Ullattil  <prasanth.ullattil@trolltech.com>
2197
2198         Reviewed by Simon.
2199
2200         Fix QtWebKit not displaying content on 403 HTTP responses
2201
2202         Just like with 404 responses also display content with 403, as
2203         used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
2204
2205         * platform/network/qt/QNetworkReplyHandler.cpp:
2206         (WebCore::QNetworkReplyHandler::finish):
2207
2208 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
2209
2210         Reviewed by Holger.
2211
2212         Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
2213
2214         Make the formatting of String::format() locale independent through the use of QString::vsprintf.
2215
2216         * platform/text/String.cpp:
2217         (WebCore::String::format):
2218
2219 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
2220
2221         Reviewed by Lars.
2222
2223         Fix QWebFrame::setHtml() not setting the new contents immediately.
2224
2225         Added a setter to the DocumentLoader to toggle the deferred loading of the main
2226         resource when it comes from substitute data.
2227
2228         Disable deferred loading of the main resource when we have valid substitute data,
2229         as used by QWebFrame::setHtml.
2230
2231         * loader/DocumentLoader.h:
2232
2233 2008-08-13  Mark Rowe  <mrowe@apple.com>
2234
2235         Speculative GTK build fix.
2236
2237         * GNUmakefile.am:  Add dependency info for JSSVGElementWrapperFactory.cpp.
2238
2239 2008-08-13  Thiago Macieira  <tjmaciei@trolltech.com>
2240
2241         Reviewed by Simon.
2242
2243         Fix encoding of [ and ] in the host part of the URL
2244
2245         Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
2246         add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
2247         doesn't encode [ and ] when they are found in the host part. That is, the
2248         following URL:
2249         http://[::1]/
2250         is valid and should not be reencoded to:
2251         http://%5b::1%5d/
2252
2253         * platform/qt/KURLQt.cpp:
2254         (WebCore::KURL::operator QUrl):
2255
2256 2008-08-12  Mihnea Ovidenie  <mihnea@adobe.com>
2257
2258         Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
2259         Broken HTML object elements cause de-reference of pointer to freed memory.
2260         If we fail to load an image for an object tag and we no longer believe the object tag points at
2261         an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
2262         fall back content.
2263
2264         Reviewed by Dave Hyatt and Alexey Proskuryakov.
2265
2266         Test: http/tests/misc/object-image-error-with-onload.html
2267
2268         * html/HTMLObjectElement.cpp:
2269         (WebCore::HTMLObjectElement::renderFallbackContent):
2270         * page/Frame.cpp:
2271         (WebCore::Frame::Frame):
2272
2273 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
2274
2275         Reviewed by Dave.
2276     
2277         Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
2278         Masks are translated, and the mask images are swapped on the y-axis.
2279
2280         Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
2281         is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
2282
2283         Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
2284         the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
2285
2286         * svg/graphics/cg/SVGResourceMaskerCg.mm:
2287         (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
2288
2289 2008-08-12  Dan Bernstein  <mitz@apple.com>
2290
2291         - WebCore part of <rdar://problem/6121636>
2292           Make fast*alloc() abort() on failure and add "try" variants that
2293           return NULL on failure.
2294
2295         Reviewed by Darin Adler.
2296
2297         * platform/Arena.cpp:
2298         (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
2299         result.
2300         * platform/graphics/cg/ImageBufferCG.cpp:
2301         (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
2302
2303 2008-08-12  Dan Bernstein  <mitz@apple.com>
2304
2305         Reviewed by Darin Adler.
2306
2307         - fix https://bugs.webkit.org/show_bug.cgi?id=19348
2308           <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
2309
2310         Test: fast/frames/frameset-style-recalc.html
2311
2312         * html/HTMLFrameSetElement.cpp:
2313         (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
2314         class implementation after marking for layout.
2315
2316 2008-08-12  Dan Bernstein  <mitz@apple.com>
2317
2318         Reviewed by John Sullivan.
2319
2320         - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
2321
2322         * WebCore.base.exp:
2323         * page/FrameView.cpp:
2324         (WebCore::FrameViewPrivate::FrameViewPrivate):
2325         (WebCore::FrameView::shouldUpdateWhileHidden):
2326         (WebCore::FrameView::setShouldUpdateWhileHidden):
2327         * page/FrameView.h:
2328         * page/Settings.cpp:
2329         * page/Settings.h:
2330
2331 2008-08-12  Adam Roben  <aroben@apple.com>
2332
2333         Windows build fix
2334
2335         * bindings/js/JSSVGPODTypeWrapper.h: Align
2336         JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
2337         members on 16-byte boundaries to avoid an alignment warning.
2338
2339 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
2340
2341         Reviewed by Oliver.
2342
2343         Add new dynamice-update layout tests covering SVGMarkerElement.
2344         Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
2345         Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
2346
2347         Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
2348                svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
2349                svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
2350                svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
2351                svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
2352                svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
2353                svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
2354                svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
2355                svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
2356                svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
2357                svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
2358                svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
2359                svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
2360                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
2361                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
2362
2363         * svg/SVGMarkerElement.cpp:
2364         (WebCore::SVGMarkerElement::SVGMarkerElement):
2365         (WebCore::SVGMarkerElement::parseMappedAttribute):
2366         (WebCore::SVGMarkerElement::svgAttributeChanged):
2367         (WebCore::SVGMarkerElement::childrenChanged):
2368         (WebCore::SVGMarkerElement::setOrientToAuto):
2369         (WebCore::SVGMarkerElement::setOrientToAngle):
2370         (WebCore::SVGMarkerElement::canvasResource):
2371
2372 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
2373
2374         Reviewed by Oliver.
2375
2376         Add new dynamic-update layout tests covering SVGImageElement.
2377         Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
2378
2379         Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
2380                svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
2381                svg/dynamic-updates/SVGImageElement-dom-width-attr.html
2382                svg/dynamic-updates/SVGImageElement-dom-x-attr.html
2383                svg/dynamic-updates/SVGImageElement-dom-y-attr.html
2384                svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
2385                svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
2386                svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
2387                svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
2388                svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
2389
2390         * svg/SVGImageElement.cpp:
2391         (WebCore::SVGImageElement::svgAttributeChanged):
2392
2393 2008-08-11  Anthony Ricaud  <rik24d@gmail.com>
2394
2395         Changed Option/Alt-Up or Down in CSS editing when the value is
2396         near zero to jump to the next integer.
2397
2398         Reviewed by Tim Hatcher.
2399
2400         https://bugs.webkit.org/show_bug.cgi?id=20326
2401
2402         * page/inspector/StylesSidebarPane.js:
2403
2404 2008-08-11  Anthony Ricaud  <rik24d@gmail.com>
2405
2406         Changed the line highlight transition for an easier animation.
2407
2408         Reviewed by Tim Hatcher.
2409
2410         * page/inspector/SourceFrame.js:
2411
2412 2008-08-11  Keishi Hattori  <casey.hattori@gmail.com>
2413
2414         Added support for some Firebug Command Line APIs.
2415
2416         Reviewed by Tim Hatcher.
2417
2418         https://bugs.webkit.org/show_bug.cgi?id=19867
2419         https://bugs.webkit.org/show_bug.cgi?id=19868
2420         https://bugs.webkit.org/show_bug.cgi?id=19869
2421         https://bugs.webkit.org/show_bug.cgi?id=19875
2422         https://bugs.webkit.org/show_bug.cgi?id=19876
2423         https://bugs.webkit.org/show_bug.cgi?id=19880
2424
2425         * page/inspector/Console.js:
2426         (WebInspector.Console.prototype._evalInInspectedWindow):
2427         Create an object on the inspected window that holds the console
2428         command line API functions. This object is used in a with statement
2429         around the typed expression.
2430
2431 2008-08-11  Nikolas Zimmermann  <zimmermann@kde.org>
2432
2433         Reviewed by Antti.
2434
2435         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
2436
2437         JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
2438         failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
2439
2440         Added tests: svg/custom/svg-modify-currentTranslate.html
2441                      svg/custom/tearoffs-with-tearoffs.html
2442                      svg/custom/immutable-properties.html
2443
2444         Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
2445
2446         * bindings/js/JSSVGPODTypeWrapper.h:
2447         (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
2448         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
2449         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
2450         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
2451         (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
2452         (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
2453         (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
2454         (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
2455         * bindings/scripts/CodeGenerator.pm:
2456         * bindings/scripts/CodeGeneratorJS.pm:
2457         * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
2458         * svg/SVGZoomEvent.idl:  SVG specification explicitely demands these attributes to be readonly, even its content.
2459
2460 2008-08-11  Brady Eidson  <beidson@apple.com>
2461
2462         Reviewed by John and Anders
2463
2464         Fix for <rdar://problem/6141797>
2465
2466         When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
2467         would never have nil data.
2468
2469         When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
2470         semantics with some WebKit applications.
2471
2472         The guarantee was a good one and should be restored.
2473
2474         Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
2475         creates an empty data object in the case of null data for its own purposes.
2476
2477         * loader/SubstituteResource.h:
2478         (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null.  This
2479           well help any future subclassers not make this mistake.
2480
2481         * loader/archive/ArchiveResource.cpp:
2482         (WebCore::ArchiveResource::create): Return 0 if the data is null.
2483
2484 2008-08-11  Simon Fraser  <simon.fraser@apple.com>
2485
2486         Reviewed by Dave Hyatt
2487
2488         https://bugs.webkit.org/show_bug.cgi?id=20328
2489         Fix a problem when an 'all' transition transition with more than
2490         one property changing is interrupted, and did some AnimationController
2491         cleanup.
2492
2493         Test: transitions/interrupted-all-transition.html
2494
2495         * page/AnimationController.cpp:
2496         (WebCore::ImplicitAnimation::ImplicitAnimation):
2497         (WebCore::AnimationControllerPrivate::blendProperties):
2498         (WebCore::CompositeAnimation::updateTransitions):
2499         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
2500         (WebCore::CompositeAnimation::setTransitionStartTime):
2501         (WebCore::CompositeAnimation::overrideImplicitAnimations):
2502         (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
2503         (WebCore::ImplicitAnimation::animate):
2504         (WebCore::ImplicitAnimation::onAnimationEnd):
2505         (WebCore::ImplicitAnimation::sendTransitionEvent):
2506         (WebCore::ImplicitAnimation::affectsProperty):
2507         (WebCore::KeyframeAnimation::endAnimation):
2508         (WebCore::KeyframeAnimation::onAnimationEnd):
2509
2510 2008-08-11  Kevin McCullough  <kmccullough@apple.com>
2511
2512         Reviewed by Tim.
2513
2514         - Because console messages have group levels now, newly created messages
2515         that do not specify the level lose their message since the number of
2516         arguments is wrong.
2517  
2518         * page/inspector/Console.js:
2519         * page/inspector/Resource.js:
2520
2521 2008-08-11  Alp Toker  <alp@nuanti.com>
2522
2523         Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
2524         the opportunity to sort the sources lists.
2525
2526         * GNUmakefile.am:
2527
2528 2008-08-11  Timothy Hatcher  <timothy@apple.com>
2529
2530         Speed up the the JavaScript syntax highlighter by generating
2531         the finders only once per script instead of per line.
2532
2533         https://bugs.webkit.org/show_bug.cgi?id=20346
2534
2535         Reviewed by Adam Roben.
2536
2537         * page/inspector/SourceFrame.js:
2538         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
2539         Removed, factored into syntaxHighlightJavascript as an inline function.
2540         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
2541         Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
2542         Generate the finders before iterating the lines.
2543
2544 2008-08-11  Adam Roben  <aroben@apple.com>
2545
2546         Windows build fix
2547
2548         * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
2549         JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
2550         too.
2551
2552 2008-08-11  Dan Bernstein  <mitz@apple.com>
2553
2554         Reviewed by Darin Adler.
2555
2556         - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
2557
2558         Test: fast/css/counters/invalidate-cached-counter-node.html
2559
2560         * rendering/RenderContainer.cpp:
2561         (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
2562         RenderCounters in :before and :after content.
2563         * rendering/RenderContainer.h:
2564         * rendering/RenderCounter.cpp:
2565         (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
2566         to match the RenderObject method.
2567         (WebCore::RenderCounter::invalidate): Added. Resets the cached
2568         CounterNode and invalidates the object's layout and preferred widths.
2569         (WebCore::destroyCounterNodeChildren): Added a call to
2570         invalidateCounters().
2571         * rendering/RenderCounter.h:
2572         * rendering/RenderObject.h:
2573         (WebCore::RenderObject::invalidateCounters):
2574
2575 2008-08-11  Dean Jackson  <dino@apple.com>
2576
2577         Implement CSS Animation and Transition Events
2578         https://bugs.webkit.org/show_bug.cgi?id=20337
2579
2580         Implement the events defined in the CSS Animations
2581         and Transitions specifications so code can react
2582         to animations and transitions.
2583
2584         Reviewed by Tim Hatcher and Dave Hyatt.
2585
2586         * DerivedSources.make:
2587         * GNUmakefile.am:
2588         * WebCore.pro:
2589         * WebCore.vcproj/WebCore.vcproj:
2590         * WebCore.xcodeproj/project.pbxproj:
2591         * WebCoreSources.bkl:
2592             Build configs for new files
2593
2594         * bindings/js/JSDOMWindowBase.cpp:
2595         * bindings/js/JSDOMWindowBase.h:
2596         * bindings/js/JSEventCustom.cpp:
2597         * dom/Document.h:
2598         * dom/Event.cpp:
2599         * dom/Event.h:
2600         * dom/EventTarget.cpp:
2601         * dom/EventTargetNode.cpp:
2602         * dom/EventTargetNode.h:
2603         * html/HTMLElement.cpp:
2604         * page/AnimationController.cpp:
2605             do all the new event stuff
2606             
2607         * html/HTMLAttributeNames.in:
2608             the onwebkitanimation* and onwebkittransitionend attrs
2609
2610         * dom/WebKitAnimationEvent.cpp: Added.
2611         * dom/WebKitAnimationEvent.h: Added.
2612         * dom/WebKitAnimationEvent.idl: Added.
2613         * dom/WebKitTransitionEvent.cpp: Added.
2614         * dom/WebKitTransitionEvent.h: Added.
2615         * dom/WebKitTransitionEvent.idl: Added.
2616             New files for the events
2617
2618         * manual-tests/transition-events.html: Added.
2619             New testfile
2620
2621 2008-08-11  Adam Roben  <aroben@apple.com>
2622
2623         Add a ForwardingHeader for wtf/NotFound.h
2624
2625         Rubberstamped by Darin Adler.
2626
2627         * ForwardingHeaders/wtf/NotFound.h: Added.
2628
2629 2008-08-11  Timothy Hatcher  <timothy@apple.com>
2630
2631         Fixes a bug where error bubbles in JavaScript resources would
2632         be clobbered by the syntax highlighter.
2633
2634         https://bugs.webkit.org/show_bug.cgi?id=20345
2635
2636         Reviewed by Adam Roben.
2637
2638         * manual-tests/inspector/resources/script-error.js: Added.
2639         * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
2640         * page/inspector/SourceFrame.js:
2641         (WebInspector.SourceFrame.prototype._addMessageToSource):
2642         Check the nodeType and not the nodeName, this is less fragile.
2643         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
2644         Check if the lastChild is an error bubble, if so remove it before
2645         getting the line's textContent. Add the error bubble back at the end.
2646
2647 == Rolled over to ChangeLog-2008-08-10 ==