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