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