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