fc71803130689e7f887232ae70bff0a5f790a78d
[WebKit-https.git] / WebCore / ChangeLog
1 2008-09-01  Dean Jackson  <dino@apple.com>
2
3         Reviewed by Sam Weinig
4
5         Code styling cleanup.
6
7         * bindings/js/JSDOMWindowBase.cpp:
8         (WebCore::JSDOMWindowBase::getValueProperty):
9         (WebCore::JSDOMWindowBase::put):
10
11 2008-09-01  Geoffrey Garen  <ggaren@apple.com>
12
13         Reviewed by Darin Adler.
14
15         First cut at inline caching for access to vanilla JavaScript properties.
16
17         Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
18         to WebCore classes, and PutPropertySlot& arguments to put functions.
19
20         (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
21         inline caching for global properties, so global assignment can be optimized.
22
23         * ForwardingHeaders/kjs/StructureID.h: Added.
24         * bindings/js/JSDOMBinding.h:
25         (WebCore::DOMObject::DOMObject):
26         * bindings/js/JSDOMWindowBase.cpp:
27         (WebCore::JSDOMWindowBase::put):
28         * bindings/js/JSDOMWindowBase.h:
29         * bindings/js/JSDOMWindowCustom.h:
30         (WebCore::JSDOMWindow::customPut):
31         * bindings/js/JSDOMWindowShell.cpp:
32         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
33         (WebCore::JSDOMWindowShell::put):
34         * bindings/js/JSDOMWindowShell.h:
35         * bindings/js/JSEventTargetBase.h:
36         (WebCore::JSEventTargetBase::put):
37         * bindings/js/JSEventTargetNode.h:
38         (WebCore::JSEventTargetNode::put):
39         * bindings/js/JSHTMLAppletElementCustom.cpp:
40         (WebCore::JSHTMLAppletElement::customPut):
41         * bindings/js/JSHTMLEmbedElementCustom.cpp:
42         (WebCore::JSHTMLEmbedElement::customPut):
43         * bindings/js/JSHTMLInputElementBase.cpp:
44         (WebCore::JSHTMLInputElementBase::put):
45         * bindings/js/JSHTMLInputElementBase.h:
46         * bindings/js/JSHTMLObjectElementCustom.cpp:
47         (WebCore::JSHTMLObjectElement::customPut):
48         * bindings/js/JSHistoryCustom.cpp:
49         (WebCore::JSHistory::customPut):
50         * bindings/js/JSInspectedObjectWrapper.cpp:
51         (WebCore::JSInspectedObjectWrapper::wrap):
52         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
53         * bindings/js/JSInspectedObjectWrapper.h:
54         * bindings/js/JSInspectorCallbackWrapper.cpp:
55         (WebCore::JSInspectorCallbackWrapper::wrap):
56         (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
57         * bindings/js/JSInspectorCallbackWrapper.h:
58         * bindings/js/JSLocationCustom.cpp:
59         (WebCore::JSLocation::customPut):
60         * bindings/js/JSPluginElementFunctions.cpp:
61         (WebCore::runtimeObjectCustomPut):
62         * bindings/js/JSPluginElementFunctions.h:
63         * bindings/js/JSQuarantinedObjectWrapper.cpp:
64         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
65         (WebCore::JSQuarantinedObjectWrapper::put):
66         * bindings/js/JSQuarantinedObjectWrapper.h:
67         * bindings/js/JSStorageCustom.cpp:
68         (WebCore::JSStorage::customPut):
69         * bindings/objc/WebScriptObject.mm:
70         (-[WebScriptObject setValue:forKey:]):
71         * bindings/scripts/CodeGeneratorJS.pm:
72         * bridge/NP_jsobject.cpp:
73         (_NPN_SetProperty):
74         * bridge/jni/jni_jsobject.mm:
75         (JavaJSObject::setMember):
76         * bridge/objc/objc_class.mm:
77         (KJS::Bindings::ObjcClass::fallbackObject):
78         * bridge/objc/objc_runtime.h:
79         * bridge/objc/objc_runtime.mm:
80         (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
81         (ObjcFallbackObjectImp::put):
82         * bridge/runtime.cpp:
83         (KJS::Bindings::Instance::createRuntimeObject):
84         * bridge/runtime_array.cpp:
85         (RuntimeArray::put):
86         * bridge/runtime_array.h:
87         * bridge/runtime_object.cpp:
88         (RuntimeObjectImp::RuntimeObjectImp):
89         (RuntimeObjectImp::put):
90         * bridge/runtime_object.h:
91
92 2008-09-01  Dirk Schulze  <vbs85@gmx.de>
93
94         Reviewed by Eric Seidel.
95
96         Fixed border-radius for Cairo.
97
98         * platform/graphics/cairo/GraphicsContextCairo.cpp:
99         (WebCore::GraphicsContext::strokeArc):
100
101 2008-09-01  Dirk Schulze  <vbs85@gmx.de>
102
103         Reviewed by Eric Seidel.
104
105         Added canvas's globalAlpha to cairo.
106
107         * platform/graphics/GraphicsContext.h:
108         * platform/graphics/cairo/GraphicsContextCairo.cpp:
109         (WebCore::GraphicsContext::fillPath):
110         (WebCore::GraphicsContext::strokePath):
111         (WebCore::GraphicsContext::setAlpha):
112         (WebCore::GraphicsContext::getAlpha):
113         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
114         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
115         * platform/graphics/cairo/ImageCairo.cpp:
116         (WebCore::BitmapImage::draw):
117
118 2008-08-31  Simon Hausmann  <hausmann@webkit.org>
119
120         Unreviewed Qt build fix.
121
122         * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
123         the .h file
124
125 2008-08-30  Darin Adler  <darin@apple.com>
126
127         Reviewed by Maciej.
128
129         - adopt some new JavaScriptCore functions where appropriate
130
131         * bindings/js/JSDOMWindowBase.cpp:
132         (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
133         (WebCore::windowProtoFuncBToA): Ditto.
134         * bindings/js/JSEventListener.cpp:
135         (WebCore::JSLazyEventListener::eventParameterName): Adopted
136         jsNontrivialString.
137         * bindings/js/JSSVGLazyEventListener.cpp:
138         (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
139
140 2008-08-29  Brady Eidson  <beidson@apple.com>
141
142         Reviewed by Anders' rubberstamp
143
144         Style cleanup to match MediaTokenizer::writeRawData()
145
146         * loader/PluginDocument.cpp:
147         (WebCore::PluginTokenizer::writeRawData):
148
149 2008-08-29  Brady Eidson  <beidson@apple.com>
150
151         Reviewed by Anders
152
153         Fix regression I introducted in 35946
154         Already covered by media/video-click-dlbclick-standalone.html
155
156         * loader/MediaDocument.cpp:
157         (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
158         (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called.  Also add
159           an ASSERT signifying that this method should only be called once, to more closely follow the
160           PluginDocument case.
161
162 2008-08-29  Beth Dakin  <bdakin@apple.com>
163
164         Reviewed by Sam Weinig.
165
166         Fix for <rdar://problem/6181588>
167
168         This patch makes hit testing take into account the new concept of a 
169         disconnected frame, in which some of the content may not be 
170         visible. The current hit testing mechanism starts at a target frame 
171         and drills down for a HitTestResult. In some cases, drilling down 
172         will find a non-visible result. When this happens, we need to try 
173         again, starting at a higher level -- namely, starting at the main 
174         frame.
175
176         * editing/Editor.cpp:
177         (WebCore::Editor::insideVisibleArea): New function that tests if a 
178         point is inside the visible area for a disconnected frame.
179         * editing/Editor.h:
180         * page/EventHandler.cpp:
181         (WebCore::EventHandler::hitTestResultAtPoint):
182
183 2008-08-29  Adele Peterson  <adele@apple.com>
184
185         Reviewed by Adam Roben. 
186
187         Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
188
189         * GNUmakefile.am:
190         * WebCore.pro:
191         * WebCore.vcproj/WebCore.vcproj:
192         * WebCore.xcodeproj/project.pbxproj:
193         * WebCoreSources.bkl:
194         * html/HTMLTextFieldInnerElement.cpp: Removed.
195         * html/HTMLTextFieldInnerElement.h: Removed.
196         * rendering/RenderTextControl.cpp:
197         (WebCore::RenderTextControl::createSubtreeIfNeeded):
198         * rendering/RenderTextControl.h:
199         * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
200         (WebCore::TextControlInnerElement::TextControlInnerElement):
201         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
202         (WebCore::TextControlInnerTextElement::defaultEventHandler):
203         (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
204         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
205         (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
206         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
207         * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
208
209 2008-08-29  Eric Seidel  <eric@webkit.org>
210
211         Rubber-stamped by aroben.
212
213         Add GraphicsContext.h include to GraphcisContextPrivate.h
214
215         GraphicsContextPrivate uses StrokeStyle which is defined
216         in GraphicsContext.h but it doesn't include that header.
217         CoreGraphics build doesn't fail here due to the order
218         it happens to include files.
219
220         * platform/graphics/GraphicsContextPrivate.h:
221
222 2008-08-29  Eric Seidel  <eric@webkit.org>
223
224         Reviewed by hyatt.
225
226         Fix GeneratedImage to respect Image's refcounting
227         Fixing potential crashers (future if not current)
228         https://bugs.webkit.org/show_bug.cgi?id=20567
229         
230         I don't know if it's possible to make the current code
231         crash, thus I've not made a test.
232
233         * css/CSSGradientValue.cpp:
234         (WebCore::CSSGradientValue::image):
235         * css/CSSImageGeneratorValue.cpp:
236         (WebCore::CSSImageGeneratorValue::removeClient):
237         (WebCore::CSSImageGeneratorValue::getImage):
238         * css/CSSImageGeneratorValue.h:
239         * platform/graphics/GeneratedImage.h:
240         (WebCore::GeneratedImage::GeneratedImage):
241         * rendering/style/RenderStyle.cpp:
242         (WebCore::RenderStyle::setContent):
243         * rendering/style/RenderStyle.h:
244
245 2008-08-29  Eric Carlson  <eric.carlson@apple.com>
246
247         Reviewed by Adele.
248
249         Fix for <rdar://problem/6093767>
250         https://bugs.webkit.org/show_bug.cgi?id=20526
251
252         Don't allow video to render until unsupported track types have been disabled.
253
254         * platform/graphics/win/QTMovieWin.cpp:
255         (QTMovieWinPrivate::task):
256         (QTMovieWinPrivate::drawingComplete):
257         (QTMovieWinPrivate::clearGWorld):
258
259 2008-08-29  Eric Carlson  <eric.carlson@apple.com>
260
261         Reviewed by Adele.
262
263         Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
264         <rdar://problem/6169301>
265         
266         Return the size of the movie data instead of 1000.
267         
268         Test: media/progress-event-total.html
269
270         * platform/graphics/win/QTMovieWin.cpp:
271         (QTMovieWin::dataSize):
272
273 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
274
275         Reviewed by Eric Seidel.
276
277         [janitor/qt] Start replacing port specific getters with the generic native getter
278         To get the native presentation of an image we currently have platform
279         specific #ifdef's and a generic getter using NativeImagePtr. This patch
280         extends this to the ImageBuffer and updates the Qt platform to get rid
281         of the special #ifdefs.
282
283         https://bugs.webkit.org/attachment.cgi?id=22861
284
285         * platform/graphics/BitmapImage.h:
286         * platform/graphics/Image.h:
287         * platform/graphics/qt/ImageQt.cpp:
288         * platform/graphics/qt/StillImageQt.cpp:
289         * platform/graphics/qt/StillImageQt.h:
290         * platform/qt/ClipboardQt.cpp:
291         (WebCore::ClipboardQt::createDragImage):
292         (WebCore::ClipboardQt::declareAndWriteDragImage):
293         * platform/qt/CursorQt.cpp:
294         * platform/qt/PasteboardQt.cpp:
295         (WebCore::Pasteboard::writeImage):
296
297 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
298
299         Reviewed by Simon.
300
301         [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
302
303         * svg/graphics/qt/SVGPaintServerQt.cpp:
304         (WebCore::SVGPaintServer::renderPath):
305         * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
306         (WebCore::SVGPaintServerSolid::setup):
307
308 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
309
310         Reviewed by Simon.
311
312         [network/qt] Implement defering of loading ResourceHandle's
313         This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
314         implementation is simply not forwarding anything to the
315         ResourceHandleClient until we are allowed to. This might lead to a deadlock
316         in Qt as we do not empty the QNetworkReply input buffer and wait until we
317         are allowed to read. If that happens we are forced to buffer the data
318         within QNetworkReplyHandler, for now this is not done.
319
320         Manual test:
321         - Open http://acid3.acidtests.org
322         - Wait for the test to complete
323         - Click on the Reference Rendering link
324         - Be fast and see the results of acid3
325         => assert
326
327         * platform/network/qt/QNetworkReplyHandler.cpp:
328         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
329         (WebCore::QNetworkReplyHandler::setLoadMode):
330         (WebCore::QNetworkReplyHandler::finish):
331         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
332         (WebCore::QNetworkReplyHandler::forwardData):
333         (WebCore::QNetworkReplyHandler::start):
334         (WebCore::QNetworkReplyHandler::resetState):
335         (WebCore::QNetworkReplyHandler::sendQueuedItems):
336         * platform/network/qt/QNetworkReplyHandler.h:
337         (WebCore::QNetworkReplyHandler::):
338         * platform/network/qt/ResourceHandleQt.cpp:
339         (WebCore::ResourceHandle::start):
340         (WebCore::ResourceHandle::loadResourceSynchronously):
341         (WebCore::ResourceHandle::setDefersLoading):
342
343 2008-08-29  Simon Hausmann  <hausmann@webkit.org>
344
345         Reviewed by Holger.
346
347         Don't crash when drawing patterns with the HTML canvas. Patterns
348         remain unimplemented but at least they don't crash anymore. This is
349         done by changing the PlatformPatternPtr to be a brush for the Qt
350         platform.
351
352         * platform/graphics/Pattern.h:
353         * platform/graphics/qt/GraphicsContextQt.cpp:
354         (WebCore::GraphicsContext::fillPath):
355         (WebCore::GraphicsContext::strokePath):
356         (WebCore::GraphicsContext::fillRect):
357         * platform/graphics/qt/PatternQt.cpp:
358         (WebCore::Pattern::createPlatformPattern):
359
360 2008-08-29  Simon Hausmann  <hausmann@webkit.org>
361
362         Fix the Qt build, fontSelector() is not used by the Qt port yet
363         and we just return 0 in Font::fontSelector().
364
365         * platform/graphics/Font.h:
366
367 2008-08-28  Alp Toker  <alp@nuanti.com>
368
369         GTK+ dist/build fix. List newly added header files.
370
371         * GNUmakefile.am:
372
373 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
374
375         Reviewed by Dave Hyatt
376
377         Various WebKitCSSTransformValue-related fixes
378         https://bugs.webkit.org/show_bug.cgi?id=20562
379
380         Test: css3/transform-value-types.html
381
382         * bindings/js/JSCSSValueCustom.cpp:
383         (WebCore::toJS):
384         * css/CSSValue.h:
385         * css/WebKitCSSTransformValue.cpp:
386         (WebCore::WebKitCSSTransformValue::cssText):
387         * css/WebKitCSSTransformValue.h:
388         (WebCore::WebKitCSSTransformValue::):
389         * css/WebKitCSSTransformValue.idl:
390
391 2008-08-28  Dan Bernstein  <mitz@apple.com>
392
393         Reviewed by Steve Falkenburg.
394
395         - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
396
397         * platform/win/SharedTimerWin.cpp:
398         (WebCore::TimerWindowWndProc):
399
400 2008-08-28  David Hyatt  <hyatt@apple.com>
401
402         RenderStyle cleanup.
403
404         Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
405
406         Reviewed by Adam
407
408         * css/CSSImageGeneratorValue.cpp:
409         * css/CSSImageValue.cpp:
410         * css/CSSStyleSelector.cpp:
411         * rendering/RenderImageGeneratedContent.cpp:
412         * rendering/style/NinePieceImage.cpp: Added.
413         * rendering/style/NinePieceImage.h: Added.
414         * rendering/style/RenderStyle.cpp:
415         (WebCore::FillLayer::operator==):
416         (WebCore::FillLayer::containsImage):
417         (WebCore::StyleInheritedData::operator==):
418         (WebCore::RenderStyle::contentDataEquivalent):
419         * rendering/style/RenderStyle.h:
420         * rendering/style/StyleCachedImage.cpp: Added.
421         * rendering/style/StyleCachedImage.h: Added.
422         * rendering/style/StyleGeneratedImage.cpp: Added.
423         * rendering/style/StyleGeneratedImage.h: Added.
424         * rendering/style/StyleImage.h: Added.
425
426 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
427
428         Reviewed by Dave Hyatt
429
430         Make all the 'isFoo()' methods on CSSValue const,
431         and fix the subclasses.
432         
433         https://bugs.webkit.org/show_bug.cgi?id=20561
434         
435         * css/CSSTimingFunctionValue.h:
436         * css/CSSValue.h:
437         (WebCore::CSSValue::isFontValue):
438         (WebCore::CSSValue::isImageGeneratorValue):
439         (WebCore::CSSValue::isImageValue):
440         (WebCore::CSSValue::isImplicitInitialValue):
441         * css/CSSValueList.h:
442         * css/FontValue.h:
443
444 2008-08-28  David Hyatt  <hyatt@apple.com>
445
446         The great RenderStyle cleanup begins!
447
448         Move LengthBox and LengthSize out of RenderStyle and into Length.
449
450         Reviewed by Adam
451
452         * rendering/Length.h:
453         (WebCore::):
454         (WebCore::Length::Length):
455         (WebCore::Length::operator==):
456         (WebCore::Length::operator!=):
457         (WebCore::Length::value):
458         (WebCore::Length::rawValue):
459         (WebCore::Length::percent):
460         (WebCore::Length::type):
461         (WebCore::Length::quirk):
462         (WebCore::Length::setValue):
463         (WebCore::Length::setRawValue):
464         (WebCore::Length::calcValue):
465         (WebCore::Length::calcMinValue):
466         (WebCore::Length::calcFloatValue):
467         (WebCore::Length::isUndefined):
468         (WebCore::Length::isZero):
469         (WebCore::Length::isPositive):
470         (WebCore::Length::isNegative):
471         (WebCore::Length::isAuto):
472         (WebCore::Length::isRelative):
473         (WebCore::Length::isPercent):
474         (WebCore::Length::isFixed):
475         (WebCore::Length::isStatic):
476         (WebCore::Length::isIntrinsicOrAuto):
477         (WebCore::Length::blend):
478         (WebCore::LengthBox::LengthBox):
479         (WebCore::LengthBox::operator=):
480         (WebCore::LengthBox::operator==):
481         (WebCore::LengthBox::operator!=):
482         (WebCore::LengthBox::nonZero):
483         (WebCore::LengthSize::LengthSize):
484         * rendering/style/RenderStyle.h:
485
486 2008-08-28  David Hyatt  <hyatt@apple.com>
487
488         Reviewed by Darin
489
490         https://bugs.webkit.org/show_bug.cgi?id=18091
491
492         font-size should be animatable using -webkit-transition.
493
494         * page/AnimationController.cpp:
495         (WebCore::AnimationControllerPrivate::ensurePropertyMap):
496         * rendering/style/RenderStyle.h:
497         (WebCore::RenderStyle::setFontSize):
498
499 2008-08-28  Brad Garcia  <bgarcia@google.com>
500
501         Reviewed by Dan Bernstein.
502
503         https://bugs.webkit.org/show_bug.cgi?id=20549
504         Correctly determine when cursor is over a resizable border within
505         a nested frameset.
506
507         * rendering/RenderFrameSet.cpp:
508         (WebCore::RenderFrameSet::canResizeRow):
509         (WebCore::RenderFrameSet::canResizeColumn):
510
511 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
512
513         Reviewed by Eric Seidel
514
515         Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
516         https://bugs.webkit.org/show_bug.cgi?id=20552
517
518         Test: animations/animation-css-rule-types.html
519
520         * css/CSSRule.idl:
521
522 2008-08-28  Anders Carlsson  <andersca@apple.com>
523
524         Reviewed by Kevin and Darin.
525
526         <rdar://problem/6182541>
527         https://bugs.webkit.org/show_bug.cgi?id=20202
528         Missing http status line from the http headers.
529         
530         Add a status line to the header string.
531         
532         * plugins/PluginStream.cpp:
533         (WebCore::PluginStream::startStream):
534
535 2008-08-28  Holger Hans Peter Freyther  <zecke@selfish.org>
536
537         Rubber-stamped by Darin Adler.
538
539         https://bugs.webkit.org/show_bug.cgi?id=17261
540
541         Make it possible to theme the default Url icon and enable this for
542         the Qt port. To have a minimal usage of #ifdef in the code the setting
543         of the icon was moved to a new method which comes in two flavors.
544
545         * loader/icon/IconDatabase.cpp:
546         (WebCore::loadDefaultIconRecord): Load or set the default icon
547         (WebCore::IconDatabase::defaultIcon):
548
549 2008-08-28  Holger Hans Peter Freyther <zecke@selfish.org>
550
551         Unreviewed compile fix
552
553         * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
554
555 2008-08-28  Adam Roben  <aroben@apple.com>
556
557         Windows (and others?) build fix
558
559         * page/Chrome.cpp: Added a missing #include.
560         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
561
562 2008-08-27  Eric Seidel  <eric@webkit.org>
563
564         Reviewed by Oliver Hunt.
565
566         Qt and Cairo support from krit (and blind stab @ wx compile support)
567         https://bugs.webkit.org/show_bug.cgi?id=20373
568
569         * platform/graphics/cairo/GraphicsContextCairo.cpp:
570         (WebCore::GraphicsContext::fillPath):
571         (WebCore::GraphicsContext::strokePath):
572         (WebCore::GraphicsContext::drawPath):
573         (WebCore::GraphicsContext::fillRect):
574         (WebCore::GraphicsContext::setPlatformFillColor):
575         (WebCore::GraphicsContext::setPlatformStrokeColor):
576         (WebCore::GraphicsContext::setPlatformStrokeStyle):
577         (WebCore::GraphicsContext::strokeRect):
578         (WebCore::GraphicsContext::setImageInterpolationQuality):
579         (WebCore::GraphicsContext::imageInterpolationQuality):
580         (WebCore::GraphicsContext::setPlatformFillPattern):
581         (WebCore::GraphicsContext::setPlatformStrokePattern):
582         (WebCore::GraphicsContext::setPlatformFillGradient):
583         (WebCore::GraphicsContext::setPlatformStrokeGradient):
584         * platform/graphics/qt/GraphicsContextQt.cpp:
585         (WebCore::GraphicsContext::fillPath):
586         (WebCore::GraphicsContext::strokePath):
587         (WebCore::GraphicsContext::fillRect):
588         (WebCore::GraphicsContext::strokeRect):
589         (WebCore::GraphicsContext::clipToImageBuffer):
590         (WebCore::GraphicsContext::setPlatformFillPattern):
591         (WebCore::GraphicsContext::setPlatformStrokePattern):
592         (WebCore::GraphicsContext::setPlatformFillGradient):
593         (WebCore::GraphicsContext::setPlatformStrokeGradient):
594         (WebCore::GraphicsContext::setImageInterpolationQuality):
595         (WebCore::GraphicsContext::imageInterpolationQuality):
596         * platform/graphics/wx/GraphicsContextWx.cpp:
597         (WebCore::GraphicsContext::clipToImageBuffer):
598         (WebCore::GraphicsContext::setImageInterpolationQuality):
599         (WebCore::GraphicsContext::imageInterpolationQuality):
600         (WebCore::GraphicsContext::fillPath):
601         (WebCore::GraphicsContext::strokePath):
602         (WebCore::GraphicsContext::drawPath):
603         (WebCore::GraphicsContext::fillRect):
604         (WebCore::GraphicsContext::setPlatformFillPattern):
605         (WebCore::GraphicsContext::setPlatformStrokePattern):
606         (WebCore::GraphicsContext::setPlatformFillGradient):
607
608 2008-08-27  Eric Seidel  <eric@webkit.org>
609
610         Reviewed by Oliver Hunt.
611
612         Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
613         https://bugs.webkit.org/show_bug.cgi?id=20373
614
615         Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
616         
617         Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
618         have to store large Gradient objects in the GraphicsContextState
619         
620         Made Pattern RefCounted for the same reason.
621         
622         Many updates to GraphicsContext to support easier drawing with
623         Patterns and Gradients.
624
625         * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
626         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
627         (WebCore::toJS):
628         * css/CSSGradientValue.cpp:
629         (WebCore::CSSGradientValue::createGradient):
630         * css/CSSGradientValue.h:
631         * html/CanvasGradient.cpp:
632         (WebCore::CanvasGradient::CanvasGradient):
633         * html/CanvasGradient.h:
634         (WebCore::CanvasGradient::gradient):
635         (WebCore::CanvasGradient::addColorStop):
636         (WebCore::CanvasGradient::getColor):
637         * html/CanvasPattern.cpp:
638         * html/CanvasPattern.h:
639         (WebCore::CanvasPattern::pattern):
640         (WebCore::CanvasPattern::originClean):
641         * html/CanvasRenderingContext2D.cpp:
642         (WebCore::CanvasRenderingContext2D::State::State):
643         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
644         (WebCore::CanvasRenderingContext2D::setFillStyle):
645         (WebCore::CanvasRenderingContext2D::fill):
646         (WebCore::CanvasRenderingContext2D::stroke):
647         (WebCore::CanvasRenderingContext2D::fillRect):
648         (WebCore::CanvasRenderingContext2D::strokeRect):
649         * html/CanvasRenderingContext2D.h:
650         * html/CanvasStyle.cpp:
651         (WebCore::CanvasStyle::applyStrokeColor):
652         (WebCore::CanvasStyle::applyFillColor):
653         * html/CanvasStyle.h:
654         * platform/graphics/GeneratedImage.h:
655         (WebCore::GeneratedImage::GeneratedImage):
656         * platform/graphics/Generator.h:
657         * platform/graphics/Gradient.h:
658         (WebCore::Gradient::create):
659         * platform/graphics/GraphicsContext.cpp:
660         (WebCore::GraphicsContext::fillRule):
661         (WebCore::GraphicsContext::setFillRule):
662         (WebCore::GraphicsContext::setStrokePattern):
663         (WebCore::GraphicsContext::setFillPattern):
664         (WebCore::GraphicsContext::setStrokeGradient):
665         (WebCore::GraphicsContext::setFillGradient):
666         * platform/graphics/GraphicsContext.h:
667         * platform/graphics/GraphicsContextPrivate.h:
668         (WebCore::):
669         (WebCore::GraphicsContextState::GraphicsContextState):
670         * platform/graphics/GraphicsTypes.h:
671         * platform/graphics/Path.h:
672         * platform/graphics/Pattern.h:
673         (WebCore::Pattern::create):
674         (WebCore::Pattern::tileImage):
675         * platform/graphics/cg/GraphicsContextCG.cpp:
676         (WebCore::GraphicsContext::drawRect):
677         (WebCore::GraphicsContext::drawEllipse):
678         (WebCore::GraphicsContext::drawConvexPolygon):
679         (WebCore::calculateDrawingMode):
680         (WebCore::GraphicsContext::drawPath):
681         (WebCore::fillPathWithFillRule):
682         (WebCore::GraphicsContext::fillPath):
683         (WebCore::GraphicsContext::strokePath):
684         (WebCore::GraphicsContext::fillRect):
685         (WebCore::GraphicsContext::fillRoundedRect):
686         (WebCore::GraphicsContext::setPlatformStrokePattern):
687         (WebCore::GraphicsContext::setPlatformFillPattern):
688         (WebCore::GraphicsContext::setPlatformStrokeGradient):
689         (WebCore::GraphicsContext::setPlatformFillGradient):
690
691 2008-08-20  Eric Seidel  <eric@webkit.org>
692
693         Reviewed by Darin and Alexey.
694
695         Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
696         with timeouts paused.
697         https://bugs.webkit.org/show_bug.cgi?id=20469
698         
699         I attempted to clean up the memory management of PausedTimeouts, I'm not
700         sure the solution I came up with is "cleaner", but it's in some ways
701         "safer", since it no longer uses raw pointers and manual new/delete.
702         
703         This also now prevents CachedPage from needlessly creating Window
704         objects when caching pages which didn't already have one. :)
705         
706         I also made Chrome.cpp no longer depend on the JavaScript bindings
707         (aka JSDOMWindowBase.h), since there was no real reason for it to.
708
709         * bindings/js/JSDOMWindowBase.cpp:
710         (WebCore::JSDOMWindowBase::pauseTimeouts):
711         (WebCore::JSDOMWindowBase::resumeTimeouts):
712         * bindings/js/JSDOMWindowBase.h:
713         * bindings/js/ScriptController.cpp:
714         (WebCore::ScriptController::pauseTimeouts):
715         (WebCore::ScriptController::resumeTimeouts):
716         * bindings/js/ScriptController.h:
717         * history/CachedPage.cpp:
718         (WebCore::CachedPage::CachedPage):
719         (WebCore::CachedPage::restore):
720         * page/Chrome.cpp:
721         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
722         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
723         * page/JavaScriptDebugServer.cpp:
724         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
725         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
726
727 2008-08-27  Holger Hans Peter Freyther <zecke@selfish.org>
728
729         Unreviewed compile fix
730
731         Add the stub for the Qt port.
732
733         * WebCore.pro:
734         * page/qt/AccessibilityObjectQt.cpp: Added.
735         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
736
737 2008-08-27  Alp Toker  <alp@nuanti.com>
738
739         Reviewed by Eric.
740
741         https://bugs.webkit.org/show_bug.cgi?id=20551
742         [GTK] search popup crash
743
744         * platform/gtk/SearchPopupMenuGtk.cpp:
745         (WebCore::SearchPopupMenu::enabled):
746         Fix a search popup crasher by disabling the history popup since we
747         don't support this feature yet in the GTK+ port.
748
749 2008-08-27  Alp Toker  <alp@nuanti.com>
750
751         Reviewed by Eric.
752
753         https://bugs.webkit.org/show_bug.cgi?id=20551
754         [GTK] curl crashers
755
756         * platform/network/curl/ResourceHandleManager.cpp:
757         (WebCore::ResourceHandleManager::startScheduledJobs):
758         Remove the resource handle from the pending list before starting the
759         job, not afterwards. Fixes crashers in the test suite.
760
761         Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
762         Test: fast/encoding/char-encoding.html
763
764 2008-08-27  Dirk Schulze  <vbs85@gmx.de>
765
766         Reviewed by eseidel.
767
768         Fix canvas drawImage to support composite operations.
769         Composite had no effect on canvas elements like these:
770         http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
771
772         [CAIRO] Canvas composite don't work on canvas-elements.
773         https://bugs.webkit.org/show_bug.cgi?id=20548
774
775         * html/CanvasRenderingContext2D.cpp:
776         (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
777
778 2008-08-27  Mario Bensi  <mbensi@pleyo.com>
779
780         Reviewed by Eric Seidel.
781         
782         Fix the data content of an image with a base64.
783
784         * platform/network/curl/ResourceHandleManager.cpp:
785         (WebCore::parseDataUrl): Remove the String and use only the data
786         Vector because the data.latin1().data() convert the data content and
787         the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
788         not drawn correctly.
789
790 2008-08-27  Antti Koivisto  <antti@apple.com>
791
792         Reviewed by Eric Seidel.
793
794         Crash after OK in dialog box and reloading page in secure mode
795         https://bugs.webkit.org/show_bug.cgi?id=20493
796         
797         The new run loop spawned by a modal dialog causes a timer in the loader to run 
798         synchronously inside didFinishLoading() deleting "this" object.
799         
800         Defer all WebCore timers when a modal dialog is up. They are not
801         safe to execute.
802
803         * page/Chrome.cpp:
804         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
805         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
806
807 2008-08-27  Chris Marrin  <cmarrin@apple.com>
808
809         Reviewed by Dave Hyatt
810
811         Memory leaks when animating transforms
812         https://bugs.webkit.org/show_bug.cgi?id=20532
813
814         * rendering/style/RenderStyle.cpp:
815         (WebCore::ScaleTransformOperation::blend):
816         (WebCore::RotateTransformOperation::blend):
817         (WebCore::SkewTransformOperation::blend):
818         (WebCore::TranslateTransformOperation::blend):
819         (WebCore::MatrixTransformOperation::blend):
820         * rendering/style/RenderStyle.h:
821
822 2008-08-27  Timothy Hatcher  <timothy@apple.com>
823
824         Add support for support for -webkit-appearance: default-button on the Mac platform.
825
826         <rdar://problem/6173530>
827
828         Reviewed by Dave Hyatt.
829
830         * WebCore.base.exp: Export new symbols.
831         * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
832         * platform/mac/WebCoreSystemInterface.mm: Ditto.
833         * rendering/RenderButton.cpp:
834         (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
835         (WebCore::RenderButton::setStyle): Ditto.
836         * rendering/RenderButton.h: Ditto.
837         * rendering/RenderThemeMac.mm:
838         (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
839         (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
840         key if the button is default, otherwise reset the key equivalent.
841         (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
842         on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
843         the window's previous default button cell when finished.
844
845 2008-08-26  David Hyatt  <hyatt@apple.com>
846
847         First cut at making form controls on OS X respect full page zoom.  There are lots of bugs.
848
849         Reviewed by weinig
850
851         Added fast/forms/zoomed-controls.html
852
853         * css/CSSStyleSelector.cpp:
854         (WebCore::addIntrinsicMargins):
855         * rendering/RenderSlider.cpp:
856         (WebCore::RenderSlider::calcPrefWidths):
857         * rendering/RenderThemeMac.h:
858         * rendering/RenderThemeMac.mm:
859         (WebCore::RenderThemeMac::adjustRepaintRect):
860         (WebCore::RenderThemeMac::inflateRect):
861         (WebCore::RenderThemeMac::baselinePosition):
862         (WebCore::RenderThemeMac::setControlSize):
863         (WebCore::RenderThemeMac::sizeForFont):
864         (WebCore::RenderThemeMac::sizeForSystemFont):
865         (WebCore::RenderThemeMac::setFontFromControlSize):
866         (WebCore::RenderThemeMac::paintCheckbox):
867         (WebCore::RenderThemeMac::setCheckboxCellState):
868         (WebCore::RenderThemeMac::paintRadio):
869         (WebCore::RenderThemeMac::setRadioCellState):
870         (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
871         (WebCore::RenderThemeMac::adjustButtonStyle):
872         (WebCore::RenderThemeMac::setButtonCellState):
873         (WebCore::RenderThemeMac::paintButton):
874         (WebCore::RenderThemeMac::paintMenuList):
875         (WebCore::RenderThemeMac::paintMenuListButton):
876         (WebCore::RenderThemeMac::popupInternalPaddingLeft):
877         (WebCore::RenderThemeMac::popupInternalPaddingRight):
878         (WebCore::RenderThemeMac::popupInternalPaddingTop):
879         (WebCore::RenderThemeMac::popupInternalPaddingBottom):
880         (WebCore::RenderThemeMac::setPopupButtonCellState):
881         (WebCore::RenderThemeMac::paintSliderTrack):
882         (WebCore::RenderThemeMac::paintSliderThumb):
883         (WebCore::RenderThemeMac::adjustSliderThumbSize):
884         (WebCore::RenderThemeMac::paintSearchField):
885         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
886         (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
887         (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
888
889 2008-08-27  Brady Eidson  <beidson@apple.com>
890
891         Reviewed by Anders
892
893         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
894
895         We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
896         to load and buffer the data for the movie in WebCore.  With large media files, this results in blowing
897         away the virtual address space and a crash.
898
899         * loader/EmptyClients.h:
900         (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
901         * loader/FrameLoaderClient.h:  Added client method to get platform specific error for
902           "plugin will handle load"
903
904         * loader/MediaDocument.cpp:
905         (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
906           and cancel the WebCore-managed load
907         (WebCore::MediaTokenizer::writeRawData):
908         (WebCore::MediaTokenizer::finish):
909
910 2008-08-26  Simon Fraser  <simon.fraser@apple.com>
911
912         Reviewed by Eric Seidel
913
914         Linear timing functions should have control points 0, 0, 1, 1.
915         https://bugs.webkit.org/show_bug.cgi?id=20535
916
917         * css/CSSStyleSelector.cpp:
918         (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
919         * rendering/style/RenderStyle.h:
920
921 2008-08-27  Adam Roben  <aroben@apple.com>
922
923         Windows build fix
924
925         * WebCore.vcproj/WebCore.vcproj: Fix file extension.
926
927 2008-08-26  chris fleizach  <cfleizach@apple.com>
928
929         Reviewed by Beth Dakin.
930
931         <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
932
933         Added platform-specific accessibilityIgnoreAttachment, which allows the platform
934         to determine if an attachment is ignored through accessibility. Added equivalent
935         methods in Gtk, Win and Mac
936
937         Test: accessibility/plugin.html
938
939         * GNUmakefile.am:
940         * WebCore.vcproj/WebCore.vcproj:
941         * WebCore.xcodeproj/project.pbxproj:
942         * page/AccessibilityObject.h:
943         * page/AccessibilityRenderObject.cpp:
944         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
945         * page/gtk/AccessibilityObjectAtk.cpp: Added.
946         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
947         * page/mac/AccessibilityObjectMac.mm: Added.
948         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
949         * page/mac/AccessibilityObjectWrapper.h:
950         * page/win/AccessibilityObjectWin.cpp: Added.
951         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
952
953 2008-08-26  chris fleizach  <cfleizach@apple.com>
954
955         Reviewed by Beth Dakin.
956
957         <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
958
959         * page/mac/AccessibilityObjectWrapper.mm:
960         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
961         (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
962
963 2008-08-26  chris fleizach  <cfleizach@apple.com>
964
965         Reviewed by Darin Adler.
966
967         <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
968
969         Tests: accessibility/table-notbody.html
970
971         * page/AccessibilityTable.cpp:
972         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
973
974 2008-08-26  Sam Weinig  <sam@webkit.org>
975
976         Reviewed by Beth Dakin.
977
978         Fix typo.
979
980         * dom/DOMCoreException.h:
981
982 2008-08-26  Sam Weinig  <sam@webkit.org>
983
984         Reviewed by Oliver Hunt.
985
986         Fix https://bugs.webkit.org/show_bug.cgi?id=20479
987         <rdar://problem/6167660>
988         Take image redirects into account when tainting the canvas.
989
990         Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
991
992         * html/CanvasRenderingContext2D.cpp:
993         (WebCore::CanvasRenderingContext2D::drawImage):
994         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
995
996 2008-08-26  Sam Weinig  <sam@webkit.org>
997
998         Reviewed by Darin Adler.
999
1000         Change canvas tainting logic to ask the image if it contains
1001         any resources outside of its own origin. Since there is no 
1002         way to determine if SVG images contain any resources outside its
1003         origin, we always assume it does.
1004
1005         * html/CanvasRenderingContext2D.cpp:
1006         (WebCore::CanvasRenderingContext2D::drawImage):
1007         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1008         * platform/graphics/BitmapImage.h:
1009         (WebCore::BitmapImage::hasSingleSecurityOrigin):
1010         * platform/graphics/GeneratedImage.h:
1011         (WebCore::GeneratedImage::hasSingleSecurityOrigin):
1012         * platform/graphics/Image.h:
1013         (WebCore::Image::hasSingleSecurityOrigin):
1014         * platform/graphics/cg/PDFDocumentImage.h:
1015         (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
1016         * svg/graphics/SVGImage.h:
1017
1018 2008-08-26  Maxime Britto  <britto@apple.com>
1019
1020         Reviewed by Adele.
1021
1022         <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
1023         This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
1024         This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
1025
1026         * page/EventHandler.cpp:
1027         (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
1028         * page/EventHandler.h:
1029         * rendering/RenderLayer.cpp:
1030         (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
1031         (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
1032         * rendering/RenderLayer.h:
1033         * rendering/RenderObject.cpp:
1034         (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
1035         (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
1036         (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
1037
1038 2008-08-25  Julien Chaffraix  <jchaffraix@webkit.org>
1039
1040         Reviewed by Darin.
1041
1042         Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
1043         https://bugs.webkit.org/show_bug.cgi?id=20247
1044
1045         <rdar://problem/6118218>
1046
1047         Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
1048         check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
1049         (case insensitive for HTML elements).
1050
1051         Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
1052
1053         * dom/Element.cpp:
1054         (WebCore::Element::getAttribute):
1055         * dom/NamedAttrMap.cpp:
1056         (WebCore::NamedAttrMap::getNamedItem):
1057         (WebCore::NamedAttrMap::getAttributeItem):
1058         * dom/NamedAttrMap.h:
1059
1060 2008-08-25  Sam Weinig  <sam@webkit.org>
1061
1062         Reviewed by Oliver Hunt.
1063
1064         Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
1065         <rdar://problem/6174096>
1066         Treat SVG images as dirty when drawing to a canvas.
1067
1068         Test: http/tests/security/canvas-remote-read-svg-image.html
1069
1070         * html/CanvasRenderingContext2D.cpp:
1071         (WebCore::CanvasRenderingContext2D::drawImage):
1072         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1073         * platform/graphics/Image.h:
1074         (WebCore::Image::isSVGImage):
1075         * svg/graphics/SVGImage.h:
1076         (WebCore::SVGImage::isSVGImage):
1077
1078 2008-08-25  Sam Weinig  <sam@webkit.org>
1079
1080         Reviewed by Mark Rowe.
1081
1082         Fix https://bugs.webkit.org/show_bug.cgi?id=20377
1083         Leak in XMLHttpRequest.
1084
1085         * xml/XMLHttpRequest.cpp:
1086         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
1087
1088 2008-08-25  Brady Eidson  <beidson@apple.com>
1089
1090         Reviewed by Anders
1091
1092         Speculative fix for <rdar://problem/6173217>
1093
1094         Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
1095         Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
1096         the first null check invalid.
1097
1098         * loader/FrameLoader.cpp:
1099         (WebCore::FrameLoader::stopAllLoaders):
1100
1101
1102 2008-08-25  Kevin McCullough  <kmccullough@apple.com>
1103
1104         Reviewed by Tim.
1105
1106         <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
1107         there is no profile, can cause crash
1108
1109         * page/inspector/ProfilesPanel.js:
1110
1111 2008-08-25  Dean Jackson  <dino@apple.com>
1112
1113         Reviewed by Dave Hyatt
1114
1115         Make sure 'inherit' is handled by transition property.
1116         https://bugs.webkit.org/show_bug.cgi?id=20513
1117
1118         Test: transitions/inherit.html
1119         Test: transitions/inherit-other-props.html
1120
1121         * css/CSSStyleSelector.cpp:
1122           fix macro to check existence of list before getting size
1123
1124 2008-08-25  Anders Carlsson  <andersca@apple.com>
1125
1126         Reviewed by Mark.
1127
1128         <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
1129         
1130         Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume 
1131         (safely) that any class that needs finalization on the main thread will also need to be deallocated
1132         on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
1133         calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
1134
1135         * platform/mac/WebCoreObjCExtras.c:
1136         (WebCoreObjCFinalizeOnMainThread):
1137
1138 2008-08-25  Antti Koivisto  <antti@apple.com>
1139
1140         Reviewed by Dan Bernstein.
1141
1142         Rename CachedResource::referenced() to CachedResource::hasClients() to
1143         match previous ref() -> addClient() rename.
1144
1145         * loader/Cache.cpp:
1146         (WebCore::Cache::pruneLiveResources):
1147         (WebCore::Cache::pruneDeadResources):
1148         (WebCore::Cache::remove):
1149         (WebCore::Cache::getStatistics):
1150         (WebCore::Cache::dumpLRULists):
1151         * loader/CachedResource.cpp:
1152         (WebCore::CachedResource::addClient):
1153         (WebCore::CachedResource::removeClient):
1154         (WebCore::CachedResource::setDecodedSize):
1155         (WebCore::CachedResource::setEncodedSize):
1156         * loader/CachedResource.h:
1157         (WebCore::CachedResource::hasClients):
1158         (WebCore::CachedResource::canDelete):
1159
1160 2008-08-25  Anthony Ricaud  <rik24d@gmail.com>
1161
1162         Add a missing Inspector localized string for "other".
1163
1164         https://bugs.webkit.org/show_bug.cgi?id=20509
1165
1166         Reviewed by Tim Hatcher.
1167
1168         * English.lproj/localizedStrings.js:
1169
1170 2008-08-22  Kevin McCullough  <kmccullough@apple.com>
1171
1172         Reviewed by Geoff, Mark and Tim.
1173
1174         <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
1175         in the console said what file and line number they came from
1176         - Lay the foundation for getting line numbers and other data from the
1177         JavaScript engine.
1178
1179         * ForwardingHeaders/VM: Added.
1180         * ForwardingHeaders/VM/Machine.h: Added.
1181         * page/Console.cpp: Gather the line number and file information when 
1182         profileEnd has been called, but don't use it until didFinishProfiling is
1183         called.  We won't need to wait once we remove the profiler "zombie" mode
1184         which this patch helps pave the foundation for.
1185         (WebCore::Console::Console):
1186         (WebCore::Console::profileEnd):
1187         (WebCore::Console::finishedProfiling):
1188         * page/Console.h:
1189         * page/InspectorController.cpp: Modify calls to
1190         addProfileMessageToConsole to satisfy the new arguments it takes.
1191         (WebCore::InspectorController::finishedProfiling):
1192         (WebCore::InspectorController::addProfile):
1193         (WebCore::InspectorController::addProfileMessageToConsole):
1194         (WebCore::InspectorController::finishedProfiling):
1195         * page/InspectorController.h:
1196
1197 2008-08-25  Holger Hans Peter Freyther  <zecke@selfish.org>
1198
1199         Reviewed by Simon.
1200
1201         [inspector] Update the WebKit.qrc Qt resources file
1202         Catchup with the changes in the directory.
1203
1204         * page/inspector/WebKit.qrc:
1205
1206 2008-08-25  Dirk Schulze  <vbs85@gmx.de>
1207
1208         Reviewed by Simon.
1209
1210         Transformed the radian to degree, to get rotate()
1211         in canvas work as expected.
1212
1213         [Qt] Canvas.rotate() doesn't work
1214         https://bugs.webkit.org/show_bug.cgi?id=20496
1215
1216         * platform/graphics/qt/GraphicsContextQt.cpp:
1217         (WebCore::GraphicsContext::rotate):
1218
1219 2008-08-24  Steve Falkenburg  <sfalken@apple.com>
1220
1221         Add a "last chance" WM_TIMER to the Windows shared timer.
1222         
1223         The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
1224         Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
1225         timers if a timer with an earlier expiration is already pending. This results in no timers
1226         firing from that point on.
1227         
1228         We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
1229         buggy window message hook.
1230         
1231         This timer will start when the first WM_TIMER is scheduled, and will
1232         fire every 5 seconds thereafter, causing any lost timers to be fired.
1233         
1234         Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
1235         and prevents the WebFrame leak.
1236         
1237         Reviewed by Darin Adler, Geoff Garen.
1238
1239         * platform/win/SharedTimerWin.cpp:
1240         (WebCore::):
1241         (WebCore::TimerWindowWndProc):
1242         (WebCore::setSharedTimerFireTime):
1243
1244 2008-08-24  Dan Bernstein  <mitz@apple.com>
1245
1246         Reviewed by Darin Adler.
1247
1248         - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
1249
1250         Test: fast/css/font-property-priority.html
1251
1252         * css/CSSParser.cpp:
1253         (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
1254         to the font-property-parsing functions.
1255         (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
1256         changed to use it rather than the m_important member.
1257         (WebCore::CSSParser::parseFontVariant): Ditto.
1258         (WebCore::CSSParser::parseFontWeight): Ditto.
1259         * css/CSSParser.h:
1260
1261 2008-08-24  Timothy Hatcher  <timothy@apple.com>
1262
1263         Fixes a bug where the Inspector's UI would not animate or
1264         fully function because JavaScript timeouts, intervals and
1265         CSS animation timers where not firing while paused at a
1266         a breakpoint in the inspected page.
1267
1268         https://bugs.webkit.org/show_bug.cgi?id=20042
1269
1270         Reviewed by Darin Adler.
1271
1272         Test: manual-tests/inspector/forzen-ui-while-paused.html
1273
1274         * page/JavaScriptDebugServer.cpp:
1275         (WebCore::JavaScriptDebugServer::pauseIfNeeded):
1276         Add a call to TimerBase::fireTimersInNestedEventLoop before
1277         spinning the EventLoop.
1278
1279 2008-08-24  Rob Buis  <buis@kde.org>
1280
1281         Reviewed by Sam Weinig.
1282
1283         https://bugs.webkit.org/show_bug.cgi?id=20324
1284         A change in SVG Glyph wont show up
1285
1286         Invalidate the glyph cache when the d attribute is set.
1287
1288         Test: svg/custom/glyph-setting-d-attribute.svg
1289
1290         * svg/SVGGlyphElement.cpp:
1291         (WebCore::SVGGlyphElement::invalidateGlyphCache):
1292         (WebCore::SVGGlyphElement::parseMappedAttribute):
1293         (WebCore::SVGGlyphElement::insertedIntoDocument):
1294         (WebCore::SVGGlyphElement::removedFromDocument):
1295         * svg/SVGGlyphElement.h:
1296
1297 2008-08-24  Dan Bernstein  <mitz@apple.com>
1298
1299         Reviewed by Sam Weinig.
1300
1301         - fix https://bugs.webkit.org/show_bug.cgi?id=13864
1302           <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
1303
1304         * rendering/RenderText.cpp:
1305         (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
1306         beginWS and endWS before the early return to ensure that they are
1307         initialized in that case.
1308
1309 2008-08-23  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1310
1311         Rubber-stamped by Mark Rowe.
1312
1313         Remove modelines.
1314
1315         * WebCore.pro:
1316         * bridge/testbindings.cpp:
1317         * dom/DocPtr.h:
1318         * loader/SubstituteData.h:
1319         * page/Chrome.cpp:
1320         * page/Chrome.h:
1321         * page/ChromeClient.h:
1322         * page/Frame.h:
1323         * page/FrameLoadRequest.h:
1324         * page/FrameTree.cpp:
1325         * page/FrameTree.h:
1326         * page/Page.h:
1327         * page/mac/ChromeMac.mm:
1328         * platform/network/HTTPHeaderMap.h:
1329         * platform/network/ResourceErrorBase.cpp:
1330         * platform/network/ResourceErrorBase.h:
1331         * platform/network/ResourceHandleInternal.h:
1332         * platform/network/ResourceRequestBase.cpp:
1333         * platform/network/ResourceRequestBase.h:
1334         * platform/network/ResourceResponseBase.cpp:
1335         * platform/network/ResourceResponseBase.h:
1336         * platform/network/cf/ResourceError.h:
1337         * platform/network/cf/ResourceRequest.h:
1338         * platform/network/cf/ResourceRequestCFNet.h:
1339         * platform/network/cf/ResourceResponse.h:
1340         * platform/network/cf/ResourceResponseCFNet.h:
1341         * platform/network/curl/ResourceError.h:
1342         * platform/network/curl/ResourceRequest.h:
1343         * platform/network/curl/ResourceResponse.h:
1344         * platform/network/mac/ResourceError.h:
1345         * platform/network/mac/ResourceErrorMac.mm:
1346         * platform/network/mac/ResourceRequest.h:
1347         * platform/network/mac/ResourceRequestMac.mm:
1348         * platform/network/mac/ResourceResponse.h:
1349         * platform/network/mac/ResourceResponseMac.mm:
1350         * platform/network/qt/ResourceError.h:
1351         * platform/network/qt/ResourceRequest.h:
1352         * platform/network/qt/ResourceResponse.h:
1353         * platform/network/soup/CookieJarSoup.cpp:
1354         * platform/network/soup/ResourceError.h:
1355         * platform/network/soup/ResourceRequest.h:
1356         * platform/network/soup/ResourceResponse.h:
1357
1358 2008-08-23  Dan Bernstein  <mitz@apple.com>
1359
1360         Reviewed by Dave Hyatt.
1361
1362         - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
1363
1364         Test: fast/table/vertical-align-baseline.html
1365
1366         * rendering/RenderTable.cpp:
1367         (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
1368         baseline of the first table row, if there is one, -1 otherwise.
1369         * rendering/RenderTable.h:
1370         * rendering/RenderTableCell.cpp:
1371         (WebCore::RenderTableCell::baselinePosition): Changed to follow the
1372         CSS2.1 definition of the baseline of a table cell.
1373         * rendering/RenderTableSection.cpp:
1374         (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
1375         the baseline of the first row in the section.
1376         * rendering/RenderTableSection.h:
1377
1378 2008-08-18  Jon Honeycutt  <jhoneycutt@apple.com>
1379
1380         Add SPI to make a Windows WebView transparent.
1381
1382         Reviewed by Dan Bernstein.
1383
1384         * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
1385         determines whether the created context has an alpha channel.
1386         * platform/graphics/win/GraphicsContextCGWin.cpp:
1387         (WebCore::CGContextWithHDC):
1388
1389 2008-08-22  Timothy Hatcher  <timothy@apple.com>
1390
1391         Rolls out r35834 because it caused a regression in the Inspector's
1392         Console where some expressions always threw a syntax error.
1393
1394         https://bugs.webkit.org/show_bug.cgi?id=20487
1395
1396         * page/inspector/Console.js:
1397         (Console.prototype._evalInInspectedWindow): Removes parenthesis
1398         around the expression.
1399
1400 2008-08-22  Timothy Hatcher  <timothy@apple.com>
1401
1402         Makes getStyleProperty return a value for the overflow property
1403         when overflow-x and overflow-y are equal.
1404
1405         https://bugs.webkit.org/show_bug.cgi?id=20485
1406
1407         Reviewed by Dan Bernstein.
1408
1409         Test: fast/css/overflow-property.html
1410
1411         * css/CSSMutableStyleDeclaration.cpp:
1412         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1413
1414 2008-08-22  Timothy Hatcher  <timothy@apple.com>
1415
1416         Fixes a bug where while editing in the Inspector the
1417         sidebar scroll position would jump to the top.
1418
1419         https://bugs.webkit.org/show_bug.cgi?id=20484
1420
1421         Reviewed by Darin Adler.
1422
1423         * page/inspector/treeoutline.js:
1424         (TreeOutline._removeChildren): Remove the offsetTop call that
1425         was forcing a layout, since layout causes scroll positions
1426         to be clamped to the new scrollHeight/Width. Layout will happen
1427         normally when needed.
1428
1429 2008-08-22  Kevin Ollivier  <kevino@theolliviers.com>
1430
1431         wx build fix. Add AccessibilityTable sources.
1432
1433         * WebCoreSources.bkl:
1434
1435 2008-08-21  Dan Bernstein  <mitz@apple.com>
1436
1437         Reviewed by Jon Honeycutt and Alexey Proskuryakov.
1438
1439         - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
1440
1441         Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
1442
1443         * platform/graphics/mac/SimpleFontDataMac.mm:
1444         (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
1445         ascent and 100% to its reported descent.
1446
1447 2008-08-21  Kalle Vahlman  <kalle.vahlman@movial.com>
1448
1449         Reviewed by Darin Adler.
1450
1451         https://bugs.webkit.org/show_bug.cgi?id=20267
1452         [GTK] Crash on some pages due to a plugin
1453
1454         Fix handling of badly formatted and empty plugin mime descriptions
1455
1456         * plugins/gtk/PluginPackageGtk.cpp:
1457         (WebCore::PluginPackage::fetchInfo):
1458
1459 2008-08-21  Kevin Watters  <kevinwatters@gmail.com>
1460
1461         Reviewed by Darin Adler.
1462
1463         Follow other ports (and IE) in ImageSourceWx.cpp never to return an
1464         animated GIF frame duration of less than 50ms.
1465
1466         * platform/graphics/wx/ImageSourceWx.cpp:
1467         (WebCore::ImageSource::frameDurationAtIndex):
1468
1469 2008-08-21  Maxime Britto  <britto@apple.com>
1470
1471         Reviewed by Kevin McCullough.
1472
1473         Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
1474         https://bugs.webkit.org/show_bug.cgi?id=20451
1475    
1476         rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
1477         When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
1478         This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
1479
1480         * page/EventHandler.cpp:
1481         (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.
1482
1483         (WebCore::EventHandler::handleMousePressEvent): ditto
1484
1485 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
1486
1487         Small optimization for when the dividers in the Inspector's
1488         Resources panel are updated.
1489
1490         Reviewed by Tim Hatcher.
1491
1492         * page/inspector/ResourcesPanel.js:
1493         (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
1494         Combind a for loop and clone the divider element.
1495
1496 2008-08-21  Chris Marrin  <cmarrin@apple.com>
1497
1498         Allow 0 (without units) for Time eg. duration
1499         Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
1500
1501         Reviewed by Dave Hyatt.
1502
1503         Test: css1/units/zero-duration-without-units.html
1504
1505         * css/CSSParser.cpp:
1506         (WebCore::CSSParser::validUnit):
1507
1508 2008-08-21  Timothy Hatcher  <timothy@apple.com>
1509
1510         Make deleting all text while editing a DOM attribute in
1511         the Inspector delete the attribute. This also fixes
1512         an exception that would happen before.
1513
1514         https://bugs.webkit.org/show_bug.cgi?id=20472
1515
1516         Reviewed by Kevin McCullough.
1517
1518         * page/inspector/ElementsPanel.js:
1519         (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
1520         Don't check for hasAttributes on the parseElement, continuing
1521         through the function will correctly remove the attribute.
1522         If the parseElement is null, call _editingCancelled not
1523         editingCancelled, this fixes an exception.
1524
1525 2008-08-21  Timothy Hatcher  <timothy@apple.com>
1526
1527         Update the Inspector's Metrics pane when editing in
1528         the Styles pane. This makes sure the metrics shown
1529         always match what the Styles pane shows.
1530
1531         https://bugs.webkit.org/show_bug.cgi?id=20470
1532
1533         Reviewed by Kevin McCullough.
1534
1535         * page/inspector/ElementsPanel.js:
1536         (WebInspector.ElementsPanel): Add event listeners for
1537         the "style edited" and "style property toggled" events,
1538         so the Metrics pane is updated.
1539         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
1540         Update the Metrics pane.
1541         * page/inspector/StylesSidebarPane.js:
1542         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
1543         Dispatch the "style property toggled" event.
1544         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
1545         Dispatch the "style edited" event when the CSS text is restored.
1546         (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
1547         Dispatch the "style edited" event.
1548
1549 2008-08-21  Timothy Hatcher  <timothy@apple.com>
1550
1551         Make the Inspector's Metrics sidebar pane editable.
1552
1553         https://bugs.webkit.org/show_bug.cgi?id=17218
1554         rdar://problem/5732818
1555
1556         Reviewed by Kevin McCullough.
1557
1558         * page/inspector/ElementsPanel.js:
1559         (WebInspector.ElementsPanel): Add an event listener for
1560         the "metrics edited" event, so the Styles pane is updated.
1561         * page/inspector/MetricsSidebarPane.js:
1562         (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
1563         so future updates work. Add a double click event listener for the
1564         metric values to start editing.
1565         (WebInspector.MetricsSidebarPane.prototype.startEditing):
1566         Call WebInspector.startEditing with some context.
1567         (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
1568         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
1569         Set the user input on the elements inline style. Fire the
1570         "metrics edited" event.
1571
1572 2008-08-21  Steve Falkenburg  <sfalken@apple.com>
1573
1574         Fix a race condition in Windows timer code.
1575         Timer function could end up being called with a 0 timer, leading to a Windows exception.
1576         
1577         Don't post a timer message if one is already pending.
1578         
1579         Reviewed by Ada Chan.
1580
1581         * platform/win/SharedTimerWin.cpp:
1582         (WebCore::TimerWindowWndProc):
1583         (WebCore::clearTimer):
1584         (WebCore::queueTimerProc):
1585         (WebCore::setSharedTimerFireTime):
1586
1587 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
1588
1589         After trying to add the expression, try again with quotes for
1590         easier edition.
1591
1592         https://bugs.webkit.org/show_bug.cgi?id=20466
1593
1594         Reviewed by Tim Hatcher.
1595
1596         * page/inspector/ObjectPropertiesSection.js: Added an
1597         evaluateExpression function.
1598
1599 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
1600
1601         Perform Inspector searches on search event to clear results when
1602         clicking the cross to empty it. Delete the lastQuery when the field
1603         is emptied in order to perform the search if exactly the same query
1604         is entered next.
1605
1606         https://bugs.webkit.org/show_bug.cgi?id=20462
1607
1608         Reviewed by Tim Hatcher.
1609
1610         * page/inspector/inspector.js:
1611
1612 2008-08-21  Marco Barisione  <marco.barisione@collabora.co.uk>
1613
1614         Reviewed by Mark Rowe.
1615
1616         http://bugs.webkit.org/show_bug.cgi?id=19656
1617         [SOUP] The gio code should call didFail() instead of
1618         didFinishLoading() in case of error
1619
1620         In case of error call didFail() instead of didReceiveResponse() and
1621         didFinishLoading().
1622
1623         * platform/network/soup/ResourceHandleSoup.cpp:
1624         (WebCore::networkErrorForFile):
1625         (WebCore::readCallback):
1626         (WebCore::openCallback):
1627         (WebCore::queryInfoCallback):
1628
1629 2008-08-20  Mark Rowe  <mrowe@apple.com>
1630
1631         Reviewed by Jon Honeycutt.
1632
1633         Fix build failure.
1634
1635         * bridge/c/c_instance.cpp:
1636         (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
1637         as that is what NPEnumerationFunctionPtr is declared as accepting.
1638
1639 2008-08-20  Mark Rowe  <mrowe@apple.com>
1640
1641         Reviewed by Dan Bernstein.
1642
1643         Build fix.  Handle kCGInterpolationMedium in switch statements if it is available.
1644
1645         * platform/graphics/GraphicsContext.h:
1646         (WebCore::):
1647         * platform/graphics/cg/GraphicsContextCG.cpp:
1648         (WebCore::GraphicsContext::setImageInterpolationQuality):
1649         (WebCore::GraphicsContext::imageInterpolationQuality):
1650
1651 2008-08-20  Dan Bernstein  <mitz@apple.com>
1652
1653         Rubber-stamped by John Sullivan.
1654
1655         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
1656           rename related methods and variables accordingly.
1657
1658         * WebCore.base.exp:
1659         * page/FrameView.cpp:
1660         (WebCore::FrameViewPrivate::FrameViewPrivate):
1661         (WebCore::FrameView::shouldUpdateWhileOffscreen):
1662         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
1663         * page/FrameView.h:
1664         * platform/ScrollView.h:
1665         * platform/mac/ScrollViewMac.mm:
1666         (WebCore::ScrollView::updateContents):
1667
1668 2008-08-20  Brady Eidson  <beidson@apple.com>
1669
1670         Reviewed by Mitzpettel
1671
1672         <rdar://problem/6163636> - Many images broken in Mail
1673
1674         This can be traced back to the preload scanner.  With that change, CachedResources are created a lot 
1675         sooner than before and confuse the WebArchive machinery.  
1676
1677         When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore 
1678         such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate 
1679         machinery and nothing is known about where the data will eventually come from.
1680
1681         * loader/DocumentLoader.cpp:
1682         (WebCore::DocumentLoader::subresource):  Ignore a CachedResource if its preloadResult is 
1683           CachedResource::PreloadReferenced.
1684
1685 2008-08-20  Holger Hans Peter Freyther  <zecke@selfish.org>
1686
1687         Unreviewed compile fix
1688
1689         Catch up with the JSValue::type elimination.
1690
1691         * bridge/qt/qt_instance.cpp:
1692         (KJS::Bindings::QtRuntimeObjectImp::construct):
1693         (KJS::Bindings::QtInstance::defaultValue):
1694         * bridge/qt/qt_runtime.cpp:
1695         (KJS::Bindings::QtRuntimeConnectionMethod::call):
1696
1697 2008-08-20  Chris Teague  <chris.teague@gmail.com>
1698
1699         Reviewed by Mark Rowe.
1700
1701         Fix https://bugs.webkit.org/show_bug.cgi?id=20449
1702         Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
1703
1704         * ChangeLog:
1705         * loader/FrameLoader.cpp:
1706         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
1707
1708 2008-08-20  Simon Fraser  <simon.fraser@apple.com>
1709
1710         Reviewed by Dave Hyatt
1711
1712         getComputedStyle() for webkitTransform should return a transform
1713         that does not have the transform origin baked into it.
1714         https://bugs.webkit.org/show_bug.cgi?id=20464
1715         
1716         Test: fast/css/getComputedStyle-transform.html
1717
1718         * css/CSSComputedStyleDeclaration.cpp:
1719         (WebCore::computedTransform):
1720         * rendering/style/RenderStyle.cpp:
1721         (WebCore::RenderStyle::applyTransform):
1722         * rendering/style/RenderStyle.h:
1723
1724 2008-08-20  Josh Aas  <joshmoz@gmail.com>
1725
1726         Reviewed and landed by Anders.
1727
1728         <rdar://problem/6163636> 
1729         rename NPCocoaEvent's "event" struct to "data" (20446)
1730         
1731         * bridge/npapi.h:
1732         (_NPCocoaEvent::):
1733
1734 2008-08-20  Beth Dakin  <bdakin@apple.com>
1735
1736         Reviewed by Darin.
1737
1738         Fix for <rdar://problem/6145626> 
1739         This patch fixes a number of remaining problems getting 
1740         disconnected frames to work correctly with markAllMatchesForText() 
1741         and findString(). Details inline. 
1742
1743         This was a static helper function in Frame, but this patch requires 
1744         the same functionality in Editor, so I just added it as a function 
1745         on Node.
1746         * dom/Node.cpp:
1747         (WebCore::Node::isInShadowTree):
1748         * dom/Node.h:
1749
1750         * editing/Editor.cpp:
1751         (WebCore::Editor::insideVisibleArea): Returns false if 
1752         excludeFromTextSearch() is true.
1753
1754         In a normal (non-disconnected) frame, findString returns a range of 
1755         the document node if the text is not found in the frame. I changed 
1756         firstVisibleRange and lastVisibleRange to match that behavior when 
1757         the text is not found
1758         (WebCore::Editor::firstVisibleRange):
1759         (WebCore::Editor::lastVisibleRange):
1760
1761         Here are the bulk of the changes in the patch. A lot of text was 
1762         not being found in disconnected frames because I failed to account 
1763         for all of the possible problems associated with shadow trees. That 
1764         is fixed here.
1765         (WebCore::Editor::nextVisibleRange):
1766         * editing/Editor.h:
1767
1768         excludeFromTextSearch() is new. It allows a WebKit client to mark a 
1769         frame as not-text-searchable through SPI. 
1770         * WebCore.base.exp:
1771         * page/Frame.cpp:
1772         (WebCore::Frame::excludeFromTextSearch):
1773         (WebCore::Frame::setExcludeFromTextSearch):
1774         (WebCore::FramePrivate::FramePrivate):
1775         * page/Frame.h:
1776         * page/FramePrivate.h:
1777
1778         (WebCore::Frame::findString):
1779         (WebCore::Frame::markAllMatchesForText):  I kept running into an 
1780         assertion failure in paining code because of the forced paint on 
1781         empty visible rects.
1782
1783 2008-08-20  Timothy Hatcher  <timothy@apple.com>
1784
1785         Adds a positon box to the Inspector's Metrics sidebar
1786         pane. When an element is not statically positioned, there
1787         is now a position box that show top, right, bottom and
1788         left computed values.
1789
1790         Reviewed by Kevin McCullough.
1791
1792         * English.lproj/localizedStrings.js: Updated the strings.
1793         * page/inspector/MetricsSidebarPane.js:
1794         (WebInspector.MetricsSidebarPane.prototype.update):
1795         Renamed the boxPartValue function to createBoxPartElement
1796         and made it create the entire element. Made it understand
1797         how to get position style properties. Don't use the figure dash
1798         when 0px is used for positions, since the 0 is meaningful there.
1799         Instead use the figure dash when a position is auto.
1800         * page/inspector/inspector.css: Added a new rule for position.
1801
1802 2008-08-20  chris fleizach  <cfleizach@apple.com>
1803
1804         Reviewed by Beth Dakin
1805
1806         Qt build fix
1807
1808         * WebCore.pro:
1809
1810 2008-08-20  Dan Bernstein  <mitz@apple.com>
1811
1812         Reviewed by Anders Carlsson.
1813
1814         - avoid using a deprecated NSScroller method on Leopard
1815
1816         * platform/mac/PlatformScrollBarMac.mm:
1817         (WebCore::PlatformScrollbar::updateThumbPosition):
1818         (WebCore::PlatformScrollbar::updateThumbProportion):
1819
1820 2008-08-20  Jan Michael Alonzo  <jmalonzo@webkit.org>
1821
1822         Reviewed by Oliver Hunt.
1823
1824         Gtk build fix
1825
1826         * GNUmakefile.am:
1827         * page/AccessibilityTable.cpp: Change nil to 0
1828         (WebCore::AccessibilityTable::cellForColumnAndRow):
1829
1830 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
1831
1832         Reviewed by Geoff Garen.
1833
1834         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1835
1836         * ForwardingHeaders/kjs/JSLock.h: Added.
1837         * WebCore.vcproj/WebCore.vcproj:
1838         * bindings/js/GCController.cpp:
1839         (WebCore::collect):
1840         (WebCore::GCController::gcTimerFired):
1841         (WebCore::GCController::garbageCollectNow):
1842         * bindings/js/JSCustomSQLStatementCallback.cpp:
1843         (WebCore::JSCustomSQLStatementCallback::handleEvent):
1844         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1845         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
1846         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1847         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
1848         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
1849         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
1850         * bindings/js/JSCustomVoidCallback.cpp:
1851         (WebCore::JSCustomVoidCallback::handleEvent):
1852         * bindings/js/JSCustomXPathNSResolver.cpp:
1853         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1854         * bindings/js/JSDOMWindowBase.cpp:
1855         (WebCore::DOMWindowTimer::~DOMWindowTimer):
1856         (WebCore::JSDOMWindowBase::clear):
1857         (WebCore::JSDOMWindowBase::timerFired):
1858         * bindings/js/JSEventCustom.cpp:
1859         (WebCore::toJS):
1860         * bindings/js/JSEventListener.cpp:
1861         (WebCore::JSAbstractEventListener::handleEvent):
1862         * bindings/js/JSNSResolver.cpp:
1863         (WebCore::JSNSResolver::lookupNamespaceURI):
1864         * bindings/js/JSNodeFilterCondition.cpp:
1865         (WebCore::JSNodeFilterCondition::acceptNode):
1866         * bindings/js/ScheduledAction.cpp:
1867         (WebCore::ScheduledAction::execute):
1868         * bindings/js/ScriptController.cpp:
1869         (WebCore::ScriptController::evaluate):
1870         (WebCore::ScriptController::clearWindowShell):
1871         (WebCore::ScriptController::createHTMLEventHandler):
1872         (WebCore::ScriptController::createSVGEventHandler):
1873         (WebCore::ScriptController::initScript):
1874         (WebCore::ScriptController::updateDocument):
1875         (WebCore::ScriptController::bindingRootObject):
1876         (WebCore::ScriptController::windowScriptNPObject):
1877         (WebCore::ScriptController::createScriptObjectForPluginElement):
1878         (WebCore::ScriptController::clearScriptObjects):
1879         * bindings/js/ScriptControllerMac.mm:
1880         (WebCore::ScriptController::windowScriptObject):
1881         * bindings/objc/WebScriptObject.mm:
1882         (_didExecute):
1883         (-[WebScriptObject callWebScriptMethod:withArguments:]):
1884         (-[WebScriptObject evaluateWebScript:]):
1885         (-[WebScriptObject setValue:forKey:]):
1886         (-[WebScriptObject valueForKey:]):
1887         (-[WebScriptObject removeWebScriptKey:]):
1888         (-[WebScriptObject stringRepresentation]):
1889         (-[WebScriptObject webScriptValueAtIndex:]):
1890         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
1891         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
1892         * bridge/NP_jsobject.cpp:
1893         (_NPN_InvokeDefault):
1894         (_NPN_Invoke):
1895         (_NPN_Evaluate):
1896         (_NPN_GetProperty):
1897         (_NPN_SetProperty):
1898         (_NPN_RemoveProperty):
1899         (_NPN_HasProperty):
1900         (_NPN_HasMethod):
1901         (_NPN_Enumerate):
1902         * bridge/c/c_class.cpp:
1903         (KJS::Bindings::CClass::~CClass):
1904         (KJS::Bindings::CClass::methodsNamed):
1905         (KJS::Bindings::CClass::fieldNamed):
1906         * bridge/c/c_instance.cpp:
1907         (KJS::Bindings::CInstance::invokeMethod):
1908         (KJS::Bindings::CInstance::invokeDefaultMethod):
1909         (KJS::Bindings::CInstance::getPropertyNames):
1910         * bridge/c/c_runtime.cpp:
1911         (KJS::Bindings::CField::valueFromInstance):
1912         (KJS::Bindings::CField::setValueToInstance):
1913         * bridge/c/c_utility.cpp:
1914         (KJS::Bindings::convertValueToNPVariant):
1915         (KJS::Bindings::convertNPVariantToValue):
1916         * bridge/jni/jni_class.cpp:
1917         (JavaClass::JavaClass):
1918         (JavaClass::~JavaClass):
1919         * bridge/jni/jni_instance.cpp:
1920         (JavaInstance::stringValue):
1921         * bridge/jni/jni_jsobject.mm:
1922         (JavaJSObject::call):
1923         (JavaJSObject::eval):
1924         (JavaJSObject::getMember):
1925         (JavaJSObject::setMember):
1926         (JavaJSObject::removeMember):
1927         (JavaJSObject::getSlot):
1928         (JavaJSObject::setSlot):
1929         (JavaJSObject::toString):
1930         (JavaJSObject::convertValueToJObject):
1931         (JavaJSObject::convertJObjectToValue):
1932         * bridge/jni/jni_objc.mm:
1933         (KJS::Bindings::dispatchJNICall):
1934         * bridge/jni/jni_runtime.cpp:
1935         (appendClassName):
1936         (JavaMethod::signature):
1937         * bridge/jni/jni_runtime.h:
1938         (KJS::Bindings::JavaString::JavaString):
1939         (KJS::Bindings::JavaString::_commonInit):
1940         (KJS::Bindings::JavaString::~JavaString):
1941         (KJS::Bindings::JavaString::UTF8String):
1942         * bridge/jni/jni_utility.cpp:
1943         (KJS::Bindings::convertValueToJValue):
1944         * bridge/npruntime.cpp:
1945         (_NPN_GetStringIdentifier):
1946         * bridge/objc/objc_instance.mm:
1947         (ObjcInstance::moveGlobalExceptionToExecState):
1948         (ObjcInstance::invokeMethod):
1949         (ObjcInstance::invokeDefaultMethod):
1950         (ObjcInstance::setValueOfUndefinedField):
1951         (ObjcInstance::getValueOfUndefinedField):
1952         * bridge/objc/objc_runtime.mm:
1953         (ObjcField::valueFromInstance):
1954         (ObjcField::setValueToInstance):
1955         * bridge/objc/objc_utility.mm:
1956         (KJS::Bindings::convertValueToObjcValue):
1957         (KJS::Bindings::convertNSStringToString):
1958         (KJS::Bindings::convertObjcValueToValue):
1959         * bridge/qt/qt_instance.cpp:
1960         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
1961         (KJS::Bindings::QtInstance::~QtInstance):
1962         (KJS::Bindings::QtInstance::getQtInstance):
1963         (KJS::Bindings::QtInstance::getRuntimeObject):
1964         * bridge/qt/qt_runtime.cpp:
1965         (KJS::Bindings::convertValueToQVariant):
1966         (KJS::Bindings::convertQVariantToValue):
1967         (KJS::Bindings::QtRuntimeMetaMethod::call):
1968         (KJS::Bindings::QtRuntimeConnectionMethod::call):
1969         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
1970         (KJS::Bindings::QtConnectionObject::execute):
1971         * bridge/runtime.cpp:
1972         (KJS::Bindings::Instance::createRuntimeObject):
1973         * bridge/testbindings.cpp:
1974         (main):
1975         * bridge/testbindings.mm:
1976         (main):
1977         * bridge/testqtbindings.cpp:
1978         (main):
1979         * dom/Document.cpp:
1980         (WebCore::Document::~Document):
1981         * dom/Node.cpp:
1982         (WebCore::Node::setDocument):
1983         * history/CachedPage.cpp:
1984         (WebCore::CachedPage::CachedPage):
1985         (WebCore::CachedPage::restore):
1986         (WebCore::CachedPage::clear):
1987         * loader/FrameLoader.cpp:
1988         (WebCore::getString):
1989         * page/InspectorController.cpp:
1990         (WebCore::ConsoleMessage::ConsoleMessage):
1991         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
1992         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
1993         (WebCore::getResourceDocumentNode):
1994         (WebCore::search):
1995         (WebCore::inspectedWindow):
1996         (WebCore::wrapCallback):
1997         (WebCore::currentCallFrame):
1998         (WebCore::profiles):
1999         (WebCore::InspectorController::focusNode):
2000         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
2001         (WebCore::InspectorController::addDatabaseScriptResource):
2002         (WebCore::InspectorController::addScriptProfile):
2003         * page/JavaScriptCallFrame.cpp:
2004         (WebCore::JavaScriptCallFrame::evaluate):
2005         * page/JavaScriptProfileNode.cpp:
2006         (WebCore::getTotalTime):
2007         (WebCore::getSelfTime):
2008         (WebCore::getTotalPercent):
2009         (WebCore::getSelfPercent):
2010         (WebCore::getNumberOfCalls):
2011         (WebCore::getChildren):
2012         (WebCore::getVisible):
2013         * page/Page.cpp:
2014         * page/mac/FrameMac.mm:
2015         * plugins/PluginView.cpp:
2016         (WebCore::PluginView::start):
2017         (WebCore::getString):
2018         (WebCore::PluginView::performRequest):
2019         (WebCore::PluginView::bindingInstance):
2020         * plugins/gtk/PluginViewGtk.cpp:
2021         (WebCore::PluginView::paint):
2022         (WebCore::PluginView::handleKeyboardEvent):
2023         (WebCore::PluginView::handleMouseEvent):
2024         (WebCore::PluginView::setNPWindowRect):
2025         (WebCore::PluginView::stop):
2026         (WebCore::PluginView::init):
2027         * plugins/qt/PluginViewQt.cpp:
2028         (WebCore::PluginView::setNPWindowRect):
2029         (WebCore::PluginView::stop):
2030         (WebCore::PluginView::init):
2031         * plugins/win/PluginViewWin.cpp:
2032         (WebCore::PluginView::dispatchNPEvent):
2033         (WebCore::PluginView::handleKeyboardEvent):
2034         (WebCore::PluginView::handleMouseEvent):
2035         (WebCore::PluginView::setNPWindowRect):
2036         (WebCore::PluginView::stop):
2037         * xml/XMLHttpRequest.cpp:
2038         (WebCore::XMLHttpRequest::clearResponse):
2039         (WebCore::XMLHttpRequest::didFinishLoading):
2040         (WebCore::XMLHttpRequest::didReceiveData):
2041
2042 2008-08-19  Eric Seidel  <eric@webkit.org>
2043
2044         Reviewed by Geoff Garen.
2045
2046         Add the beginnings of Skia graphics support to WebCore
2047         as I try to begin the long process of un-forking the changes
2048         needed to WebCore to make Andriod's WebCore build.
2049
2050         I'll follow this up with actual *Skia.cpp files in a separate patch.
2051
2052         * platform/graphics/AffineTransform.h:
2053         * platform/graphics/FloatPoint.h:
2054         * platform/graphics/FloatRect.h:
2055         * platform/graphics/Gradient.h:
2056         * platform/graphics/GraphicsContext.h:
2057         * platform/graphics/Image.h:
2058         * platform/graphics/ImageBuffer.h:
2059         * platform/graphics/ImageSource.h:
2060         * platform/graphics/IntPoint.h:
2061         * platform/graphics/IntRect.h:
2062         * platform/graphics/Path.h:
2063         * platform/graphics/Pattern.h:
2064         * svg/graphics/SVGPaintServerPattern.h:
2065         * svg/graphics/SVGPaintServerSolid.h:
2066
2067 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2068
2069         Fix Windows build more.
2070
2071         * WebCore.vcproj/WebCore.vcproj:
2072
2073 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2074
2075         Fix Windows build.
2076
2077         * page/AccessibilityRenderObject.cpp:
2078         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2079
2080 2008-08-19  chris fleizach  <cfleizach@apple.com>
2081
2082         Reviewed by Beth Dakin.
2083
2084         <rdar://problem/4003764> Expose tables as AXTables
2085  
2086         Tests: accessibility/table-attributes.html
2087                accessibility/table-cell-spans.html
2088                accessibility/table-cells.html
2089                accessibility/table-detection.html
2090                accessibility/table-sections.html
2091                accessibility/table-with-rules.html
2092
2093         * WebCore.xcodeproj/project.pbxproj:
2094         * page/AXObjectCache.cpp:
2095         (WebCore::AXObjectCache::get):
2096         * page/AccessibilityObject.h:
2097         (WebCore::):
2098         (WebCore::AccessibilityObject::isDataTable):
2099         (WebCore::AccessibilityObject::isTableRow):
2100         (WebCore::AccessibilityObject::isTableColumn):
2101         (WebCore::AccessibilityObject::isTableCell):
2102         * page/AccessibilityRenderObject.cpp:
2103         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2104         * page/AccessibilityTable.cpp: Added.
2105         (WebCore::AccessibilityTable::AccessibilityTable):
2106         (WebCore::AccessibilityTable::~AccessibilityTable):
2107         (WebCore::AccessibilityTable::create):
2108         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2109         (WebCore::AccessibilityTable::clearChildren):
2110         (WebCore::AccessibilityTable::addChildren):
2111         (WebCore::AccessibilityTable::headerContainer):
2112         (WebCore::AccessibilityTable::columns):
2113         (WebCore::AccessibilityTable::rows):
2114         (WebCore::AccessibilityTable::rowHeaders):
2115         (WebCore::AccessibilityTable::columnHeaders):
2116         (WebCore::AccessibilityTable::cells):
2117         (WebCore::AccessibilityTable::columnCount):
2118         (WebCore::AccessibilityTable::rowCount):
2119         (WebCore::AccessibilityTable::cellForColumnAndRow):
2120         (WebCore::AccessibilityTable::roleValue):
2121         (WebCore::AccessibilityTable::accessibilityIsIgnored):
2122         (WebCore::AccessibilityTable::title):
2123         (WebCore::AccessibilityTable::isDataTable):
2124         * page/AccessibilityTable.h: Added.
2125         * page/AccessibilityTableCell.cpp: Added.
2126         (WebCore::AccessibilityTableCell::AccessibilityTableCell):
2127         (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
2128         (WebCore::AccessibilityTableCell::create):
2129         (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
2130         (WebCore::AccessibilityTableCell::rowIndexRange):
2131         (WebCore::AccessibilityTableCell::columnIndexRange):
2132         * page/AccessibilityTableCell.h: Added.
2133         (WebCore::AccessibilityTableCell::isTableCell):
2134         (WebCore::AccessibilityTableCell::roleValue):
2135         * page/AccessibilityTableColumn.cpp: Added.
2136         (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
2137         (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
2138         (WebCore::AccessibilityTableColumn::create):
2139         (WebCore::AccessibilityTableColumn::setParentTable):
2140         (WebCore::AccessibilityTableColumn::elementRect):
2141         (WebCore::AccessibilityTableColumn::size):
2142         (WebCore::AccessibilityTableColumn::children):
2143         (WebCore::AccessibilityTableColumn::headerObject):
2144         (WebCore::AccessibilityTableColumn::headerObjectForSection):
2145         (WebCore::AccessibilityTableColumn::addChildren):
2146         * page/AccessibilityTableColumn.h: Added.
2147         (WebCore::AccessibilityTableColumn::parentObject):
2148         (WebCore::AccessibilityTableColumn::roleValue):
2149         (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
2150         (WebCore::AccessibilityTableColumn::isTableColumn):
2151         (WebCore::AccessibilityTableColumn::setColumnIndex):
2152         (WebCore::AccessibilityTableColumn::columnIndex):
2153         * page/AccessibilityTableHeaderContainer.cpp: Added.
2154         (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
2155         (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
2156         (WebCore::AccessibilityTableHeaderContainer::create):
2157         (WebCore::AccessibilityTableHeaderContainer::children):
2158         (WebCore::AccessibilityTableHeaderContainer::elementRect):
2159         (WebCore::AccessibilityTableHeaderContainer::size):
2160         (WebCore::AccessibilityTableHeaderContainer::addChildren):
2161         * page/AccessibilityTableHeaderContainer.h: Added.
2162         (WebCore::AccessibilityTableHeaderContainer::roleValue):
2163         (WebCore::AccessibilityTableHeaderContainer::setParentTable):
2164         (WebCore::AccessibilityTableHeaderContainer::parentObject):
2165         (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
2166         * page/AccessibilityTableRow.cpp: Added.
2167         (WebCore::AccessibilityTableRow::AccessibilityTableRow):
2168         (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
2169         (WebCore::AccessibilityTableRow::create):
2170         (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
2171         (WebCore::AccessibilityTableRow::headerObject):
2172         * page/AccessibilityTableRow.h: Added.
2173         (WebCore::AccessibilityTableRow::isTableRow):
2174         (WebCore::AccessibilityTableRow::roleValue):
2175         (WebCore::AccessibilityTableRow::setRowIndex):
2176         (WebCore::AccessibilityTableRow::rowIndex):
2177         * page/mac/AccessibilityObjectWrapper.mm:
2178         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2179         (RoleEntry::):
2180         (-[AccessibilityObjectWrapper roleDescription]):
2181         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2182         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2183         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2184
2185 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2186
2187         Build fix.
2188         Add buildfailed support to stop builds early (preventing inaccurate error messages).
2189         Add missing post-build rule to Release.
2190
2191         * WebCore.vcproj/QTMovieWin.vcproj:
2192
2193 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
2194
2195         Added support for console.count in the inspector.
2196
2197         Reviewed by Geoff Garen.
2198
2199         * page/Console.cpp:
2200         (WebCore::Console::count):
2201         * page/Console.h:
2202         * page/Console.idl: Added console.count.
2203         * page/InspectorController.cpp:
2204         (WebCore::InspectorController::didCommitLoad): Clears m_counts.
2205         (WebCore::InspectorController::count): Updates the count number
2206         sing "title@source:line" as the identifier, and adds a
2207         message to the console.
2208         * page/InspectorController.h: Added m_counts.
2209
2210 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
2211
2212         Clear console.time timers when changing page.
2213
2214         Reviewed by Geoff Garen.
2215
2216         * page/InspectorController.cpp:
2217         (WebCore::InspectorController::didCommitLoad):
2218
2219 2008-08-19  Eric Carlson  <eric.carlson@apple.com>
2220
2221         Reviewed by Adele.
2222
2223         Fix for <rdar://problem/6154695> Full-page movies flicker while playing
2224         https://bugs.webkit.org/show_bug.cgi?id=20404
2225
2226         Ignore setVisible() when visibility doesn't change.
2227
2228         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2229         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2230         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2231         (WebCore::MediaPlayerPrivate::setVisible):
2232
2233 2008-08-19  Timothy Hatcher  <timothy@apple.com>
2234
2235         Fixes a bug in the Profile view where switching sort order, then
2236         switching from heavy to tree mode would show the tree in the
2237         previous sort order.
2238
2239         https://bugs.webkit.org/show_bug.cgi?id=20441
2240
2241         Reviewed by Kevin McCullough.
2242
2243         * page/inspector/ProfileView.js:
2244         (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
2245         on the next profile before assigning it to this.profile.
2246         (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
2247         (WebInspector.ProfileView.prototype._sortProfile): Moves from
2248         _sortData and takes a profile argument. If the profile passed in
2249         matches the this.profile, then call refresh.
2250
2251 2008-08-18  Timothy Hatcher  <timothy@apple.com>
2252
2253         Changed the default sort order now that heavy view is the default.
2254         Also fixes a bug where the heavy profile was not sorted at first.
2255
2256         https://bugs.webkit.org/show_bug.cgi?id=20440
2257
2258         Reviewed by Kevin McCullough.
2259
2260         * page/inspector/ProfileView.js:
2261         (WebInspector.ProfileView): Changed the default sort column. Also assign
2262         heavyProfile to profile, so the sortSelfTimeDescending call happens
2263         on the heavy profile before assigning to this.profile.
2264
2265 2008-08-18  Timothy Hatcher  <timothy@apple.com>
2266
2267         Add support for editing DOM properties and scope variables by double
2268         clicking a property to enter edit mode.
2269
2270         https://bugs.webkit.org/show_bug.cgi?id=20415
2271
2272         Reviewed by Kevin McCullough.
2273
2274         * page/inspector/ObjectPropertiesSection.js:
2275         (WebInspector.ObjectPropertiesSection): Set editable to true by default.
2276         (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
2277         Factored out code into update, and calls update.
2278         (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
2279         Call removeChildren since this method can be called multiple times now.
2280         (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
2281         gets made later in onattach.
2282         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
2283         if shouldRefreshChildren is true. Call removeChildren since this method can be
2284         called multiple times now.
2285         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
2286         (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
2287         (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
2288         this element (code moved from the constructor.)
2289         (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
2290         sibling property elements.
2291         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
2292         WebInspector.startEditing after rememebring some context.
2293         (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
2294         for the list element, since it might have scrolled during editing.
2295         (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
2296         then restore the state from the context. Then call update to restore the title.
2297         (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
2298         if the user input and the previous input are the same. Call editingEnded, then call applyExpression
2299         to commit the user input.
2300         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
2301         and stores the result on the object for the property name of this element. If the expression is
2302         empty, delete the property and remove the tree element.
2303         * page/inspector/ScopeChainSidebarPane.js:
2304         (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
2305         property on each ObjectPropertiesSection.
2306         (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
2307         since it is now implemented.
2308         * page/inspector/ScriptsPanel.js:
2309         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
2310         that defaults to true if omitted. It specifies whether to call update on the scope chain.
2311         * page/inspector/inspector.css: New styles.
2312         * page/inspector/treeoutline.js:
2313         (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
2314         change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
2315
2316 2008-08-18  Timothy Hatcher  <timothy@apple.com>
2317
2318         Surround the expression to be evaluated in parenthesis so the
2319         result of the eval is the result of the whole expression not
2320         the last potential sub-expression. So evaluating {x: 123}
2321         will show the Object not 123.
2322
2323         https://bugs.webkit.org/show_bug.cgi?id=20428
2324
2325         Reviewed by Kevin McCullough.
2326
2327         * page/inspector/Console.js:
2328         (Console.prototype._evalInInspectedWindow): Add parenthesis
2329         around the expression. And add couple comments.
2330
2331 2008-08-19 Kevin McCullough <kmccullough@apple.com>
2332
2333         Reviewed by Geoff.
2334
2335         -Implement a page() function to extract a common code pattern.
2336
2337         * WebCore.xcodeproj/project.pbxproj:
2338         * page/Console.cpp:
2339         (WebCore::Console::addMessage):
2340         (WebCore::Console::error):
2341         (WebCore::Console::info):
2342         (WebCore::Console::log):
2343         (WebCore::Console::dir):
2344         (WebCore::Console::assertCondition):
2345         (WebCore::Console::time):
2346         (WebCore::Console::timeEnd):
2347         (WebCore::Console::group):
2348         (WebCore::Console::groupEnd):
2349         (WebCore::Console::finishedProfiling):
2350         (WebCore::Console::warn):
2351         (WebCore::Console::framePage):
2352         * page/Console.h:
2353
2354 2008-08-12  Darin Adler  <darin@apple.com>
2355
2356         Reviewed by Geoff.
2357
2358         - eliminate JSValue::type()
2359
2360         * bridge/c/c_instance.cpp:
2361         (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
2362         argument instead of JSType argument. Removed unneeded code to handle
2363         boolean, since that's never passed.
2364         * bridge/c/c_instance.h: Ditto.
2365
2366         * bridge/c/c_utility.cpp:
2367         (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
2368         instead of JSValue::type(). Removed unneeded code to handle
2369         "unspecified".
2370
2371         * bridge/jni/jni_instance.cpp:
2372         (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
2373         instead of JSType argument. Removed unneeded code to handle boolean.
2374         * bridge/jni/jni_instance.h: Ditto.
2375
2376         * bridge/jni/jni_jsobject.mm:
2377         (JavaJSObject::convertValueToJObject): Use JSValue::is functions
2378         instead of JSValue::type().
2379
2380         * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
2381         instead of JSType argument. Removed unused argument.
2382         * bridge/objc/objc_instance.mm:
2383         (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
2384         (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
2385         instead of JSType argument. Removed unneeded code to handle boolean
2386         and another dead code path for unknown types.
2387
2388         * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
2389         instead of JSType argument. Removed override of type() that caused
2390         the fallback object to return "UndefinedType" when there is no
2391         invokeUndefinedMethodFromWebScript:withArguments: method defined.
2392         That didn't accomplish much, since most checks for undefined don't
2393         ever call type().
2394         * bridge/objc/objc_runtime.mm:
2395         (ObjcFallbackObjectImp::defaultValue): Ditto.
2396
2397         * bridge/qt/qt_instance.cpp:
2398         (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
2399         argument instead of JSType argument. Removed unneeded code to handle
2400         boolean.
2401         * bridge/qt/qt_instance.h: Ditto.
2402
2403         * bridge/runtime.h:
2404         (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
2405         unsed argument.
2406         * bridge/runtime_object.cpp:
2407         (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
2408         argument instead of JSType argument.
2409         * bridge/runtime_object.h: Ditto.
2410
2411 2008-08-18  Maxime Britto  <britto@apple.com>
2412
2413         Reviewed by Adele.
2414
2415         <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
2416         Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
2417         We shouldn't be able to create another window while we are in pan scrolling.
2418         Other browsers behaviors :
2419           FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
2420           IE7 : Keys are not disabled but stops immediately the panning.
2421         This patch matches FF3 behavior by disabling every key but the esc key.
2422
2423         * page/EventHandler.cpp:
2424         (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
2425         (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
2426
2427 2008-08-18  Dan Bernstein  <mitz@apple.com>
2428
2429         Reviewed by Dave Hyatt.
2430
2431         - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
2432
2433         Test: fast/replaced/max-width-percent.html
2434
2435         Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
2436         When false, max-width is not factored into the
2437         calculation.
2438         Changed RenderReplaced and subclasses' calcPrefWidths() to call
2439         calcReplacedWidth(false) and then apply max-width only if it has a
2440         fixed, positive value.
2441
2442         * rendering/RenderBox.cpp:
2443         (WebCore::RenderBox::calcReplacedWidth):
2444         * rendering/RenderBox.h:
2445         * rendering/RenderImage.cpp:
2446         (WebCore::RenderImage::calcReplacedWidth):
2447         (WebCore::RenderImage::calcPrefWidths): 
2448         * rendering/RenderImage.h:
2449         * rendering/RenderReplaced.cpp:
2450         (WebCore::RenderReplaced::calcPrefWidths):
2451         * rendering/RenderSVGRoot.cpp:
2452         (WebCore::RenderSVGRoot::calcPrefWidths):
2453         * rendering/RenderVideo.cpp:
2454         (WebCore::RenderVideo::calcReplacedWidth):
2455         (WebCore::RenderVideo::calcPrefWidths):
2456         * rendering/RenderVideo.h:
2457
2458 2008-08-18  Daniel Macks  <dmacks@netspace.org>
2459
2460         Reviewed by Mark Rowe.
2461
2462         https://bugs.webkit.org/show_bug.cgi?id=20410
2463         More portable/self-documenting replacement for SIZE_MAX.
2464
2465         * platform/network/curl/FormDataStreamCurl.cpp:
2466         (WebCore::FormDataStream::read):
2467
2468 2008-08-18  Simon Fraser  <simon.fraser@apple.com>
2469
2470         Reviewed by Dave Hyatt
2471
2472         Need to make sure we have an Animation in the AnimationList
2473         before setting the initial value.
2474         https://bugs.webkit.org/show_bug.cgi?id=20408
2475
2476         Test: fast/css/transition_shorthand_parsing.html
2477
2478         * css/CSSStyleSelector.cpp:
2479
2480 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
2481
2482         Reviewed by Tim.
2483
2484         <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
2485         is another profile.
2486
2487         * page/inspector/ProfilesPanel.js:
2488
2489 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
2490
2491         Reviewed by Geoff.
2492
2493         <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
2494         all console messages
2495
2496         * page/inspector/Console.js:
2497
2498 2008-08-18  Dirk Schulze  <vbs85@gmx.de>
2499
2500         Reviewed by Eric Seidel.
2501
2502         Fixed Canvas for Cairo. Stroke and fill colors didn't work after
2503         the canvas clean up.
2504
2505         https://bugs.webkit.org/show_bug.cgi?id=20405
2506
2507         * html/CanvasRenderingContext2D.cpp:
2508         (WebCore::CanvasRenderingContext2D::fill):
2509         (WebCore::CanvasRenderingContext2D::stroke):
2510         (WebCore::CanvasRenderingContext2D::fillRect):
2511
2512 2008-08-17  Timothy Hatcher  <timothy@apple.com>
2513
2514         Complete in scope variables in the Console when paused.
2515
2516         https://bugs.webkit.org/show_bug.cgi?id=19115
2517
2518         Reviewed by Geoffrey Garen.
2519
2520         * page/inspector/Console.js:
2521         (WebInspector.Console.prototype.completions): If the expressionString
2522         is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
2523         to get an object that declares all the in scope variables. That way
2524         "top level" expressions are completed.
2525         * page/inspector/ScriptsPanel.js:
2526         (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
2527         Return an object that has all the variables that are in scope for the
2528         selected call frame. The value of each property is just true.
2529         The return object is useful for quick lookups or auto completion.
2530
2531 2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2532
2533         Not reviewed.
2534
2535         Speculative Qt build fix.
2536
2537         * bridge/qt/qt_runtime.cpp:
2538         (KJS::Bindings::convertValueToQVariant):
2539         (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
2540
2541 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
2542
2543         Reviewed by Cameron Zwarich.
2544         
2545         Updated project files to XCode 3.1.
2546
2547         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
2548
2549 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
2550
2551         Reviewed by Cameron Zwarich.
2552
2553         Made room for a free word in JSCell.
2554         
2555         Changed JSDOMWindowBase to store its auxiliary data in a subclass of
2556         JSGlobalData, so the two could share a pointer.
2557         
2558         Added a bunch of ASSERTs, to help catch over-sized objects.
2559
2560 2008-08-15  Mark Rowe  <mrowe@apple.com>
2561
2562         Reviewed by Dan Bernstein.
2563
2564         Disable dead code stripping in debug builds.
2565
2566         * Configurations/Base.xcconfig:
2567         * WebCore.xcodeproj/project.pbxproj:
2568
2569 2008-08-15  Mark Rowe  <mrowe@apple.com>
2570
2571         Rubber-stamped by Geoff Garen.
2572
2573         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
2574
2575         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
2576         between the Debug configuration and debug Production variant.
2577         * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
2578
2579 2008-08-15  Antti Koivisto  <antti@apple.com>
2580
2581         Reviewed by Anders.
2582
2583         Don't start preloading body resources before the head is complete. This prevents
2584         body preloads from slowing down initial display when there is limited amount
2585         of bandwidth available.
2586         
2587         Works by queuing up found body preloads to DocLoader and only issuing them
2588         after document has rendering.
2589         
2590         With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
2591         without affecting complete load time.
2592
2593         * html/PreloadScanner.cpp:
2594         (WebCore::PreloadScanner::PreloadScanner):
2595         (WebCore::PreloadScanner::scanningBody):
2596         (WebCore::PreloadScanner::emitTag):
2597         (WebCore::PreloadScanner::emitCSSRule):
2598         * html/PreloadScanner.h:
2599         * loader/DocLoader.cpp:
2600         (WebCore::DocLoader::preload):
2601         (WebCore::DocLoader::checkForPendingPreloads):
2602         (WebCore::DocLoader::requestPreload):
2603         * loader/DocLoader.h:
2604         * loader/loader.cpp:
2605         (WebCore::Loader::Host::didFinishLoading):
2606         (WebCore::Loader::Host::didFail):
2607
2608 2008-08-15  Ada Chan  <adachan@apple.com>
2609
2610         Use item's computed style if the render style is 0 before falling back to the <select>'s style.
2611         This way style set on an <hr> within a <select> will be honored.
2612
2613         Reviewed by Dave Hyatt and Dan Bernstein.
2614
2615         * rendering/RenderMenuList.cpp:
2616         (WebCore::RenderMenuList::itemStyle):
2617
2618 2008-08-15  Antti Koivisto  <antti@apple.com>
2619
2620         Reviewed by Oliver.
2621
2622         Some loader performance tweaks:
2623         - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
2624           Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue 
2625           to not delay rendering.
2626         - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
2627           can take long time when latency is high so it is good to get started early.
2628         - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
2629           load queues. Issue remaining loads to the network layer.
2630
2631         * loader/loader.cpp:
2632         (WebCore::Loader::determinePriority):
2633         (WebCore::Loader::load):
2634         (WebCore::Loader::Host::servePendingRequests):
2635         * loader/loader.h:
2636
2637 2008-08-15  Timothy Hatcher  <timothy@apple.com>
2638
2639         Detach the script debugger when the Web Inspector's window closes.
2640         This has always been the intended design, but never fully implemented.
2641
2642         https://bugs.webkit.org/show_bug.cgi?id=20402
2643
2644         Reviewed by Adam Roben.
2645
2646         * page/InspectorController.cpp:
2647         (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
2648         if the window is no longer visible.
2649
2650 2008-08-15  Håvard Wall  <hwall@trolltech.com>
2651
2652         Reviewed by Simon.
2653
2654         Fixes:    compile with QT_NO_CONTEXTMENU
2655
2656         * platform/qt/PlatformMouseEventQt.cpp:
2657         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2658         * platform/qt/PlatformScrollBarQt.cpp:
2659         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
2660         (WebCore::PlatformScrollbar::handleContextMenuEvent):
2661
2662 2008-08-15  Håvard Wall  <hwall@trolltech.com>
2663
2664         Reviewed by Simon.
2665
2666         Fixes: compile with QT_NO_WHEELEVENT
2667
2668         * platform/qt/WheelEventQt.cpp:
2669         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2670
2671 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
2672
2673         Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
2674
2675         https://bugs.webkit.org/show_bug.cgi?id=20210
2676
2677         Reviewed by Tim Hatcher.
2678
2679         * page/Console.cpp:
2680         (WebCore::Console::group):
2681         (WebCore::Console::groupEnd):
2682         * page/Console.h:
2683         (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
2684         * page/InspectorController.cpp:
2685         (WebCore::InspectorController::startGroup): Increments group level by
2686         one and adds console message with StartGroupMessaageLevel.
2687         (WebCore::InspectorController::endGroup): Decrements group level by one
2688         and adds console message with EndGroupMessaageLevel.
2689         * page/InspectorController.h:
2690         * page/inspector/Console.js:
2691         (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
2692         if the message is StartGroupMessaageLevel.
2693         (WebInspector.ConsoleMessage.prototype.toMessageElement):
2694         (WebInspector.ConsoleGroup.prototype.addMessage):
2695         * page/inspector/inspector.js:
2696
2697 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
2698
2699         Adds support for console.dir to the Inspector
2700
2701         https://bugs.webkit.org/show_bug.cgi?id=19155
2702
2703         Reviewed by Tim Hatcher.
2704
2705         * bindings/js/JSConsoleCustom.cpp:
2706         (WebCore::JSConsole::dir):
2707         * page/Console.cpp:
2708         (WebCore::Console::dir):
2709         * page/Console.h: Added ObjectMessageLevel.
2710         * page/Console.idl: Added console.dir.
2711         * page/inspector/Console.js:
2712         (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
2713         ObjectPropertiesSection if the MessageLevel is Object.
2714         * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
2715         used on primitive data types.
2716         * page/inspector/inspector.css:
2717
2718 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
2719
2720         Adds support for clear() in the Inspector console.
2721
2722         https://bugs.webkit.org/show_bug.cgi?id=19873
2723
2724         Reviewed by Tim Hatcher.
2725
2726         * page/inspector/Console.js:
2727
2728 2008-08-15  Anthony Ricaud  <rik24d@gmail.com>
2729
2730         Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
2731
2732         Platform distinction and modifier key matching adjusted
2733         by Daniel Jalkut <jalkut@red-sweater.com>
2734
2735         Bug 16313: text search (find) keybindings should work in the Web Inspector
2736         https://bugs.webkit.org/show_bug.cgi?id=16313
2737
2738         Reviewed by Tim Hatcher.
2739
2740         * page/inspector/inspector.js: Added a case for the F key
2741
2742 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
2743
2744         Fix for error when the string doesn't contain a webkit-profile link.
2745
2746         https://bugs.webkit.org/show_bug.cgi?id=20399
2747
2748         Reviewed by Tim Hatcher.
2749
2750         * page/inspector/inspector.js:
2751
2752 2008-08-15  Timothy Hatcher  <timothy@apple.com>
2753
2754         Fixes two bugs where JavaScript could be executed from the page
2755         while the debugger is paused.
2756
2757         The first issue was JSLazyEventListener not checking the paused
2758         state before parsing the code.
2759
2760         The second issue was with the PageGroup version of
2761         JavaScriptDebugServer::setJavaScriptPaused always passing false
2762         to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
2763         and not the paused argument.
2764
2765         https://bugs.webkit.org/show_bug.cgi?id=20284
2766
2767         Reviewed by Adam Roben.
2768
2769         * bindings/js/JSEventListener.cpp:
2770         (WebCore::JSLazyEventListener::parseCode): Check the paused
2771         state of the ScriptController. Return early if paused.
2772         * manual-tests/inspector/debugger-execution-while-paused.html: Added.
2773         * page/JavaScriptDebugServer.cpp:
2774         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
2775         Pass the paused argument to the Page version of setJavaScriptPaused.
2776
2777 2008-08-15  Alexey Proskuryakov  <ap@webkit.org>
2778
2779         Reviewed by Geoff Garen.
2780
2781         JSStringRef is created context-free, but can get linked to one via an identifier table,
2782         breaking an implicit API contract.
2783
2784         * page/InspectorController.cpp:
2785         (WebCore::jsStringRef):
2786         (WebCore::InspectorController::didParseSource):
2787         (WebCore::InspectorController::failedToParseSource):
2788         * page/JavaScriptProfile.cpp:
2789         (WebCore::getTitleCallback):
2790         Updated for JavaScriptCore changes.
2791
2792 2008-08-14  Kevin Ollivier  <kevino@theolliviers.com>
2793
2794         wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
2795         an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
2796
2797         * platform/graphics/AffineTransform.h:
2798
2799 2008-08-14  Eric Carlson  <eric.carlson@apple.com>
2800
2801         Reviewed by Adele.
2802
2803         Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
2804         <video> elements on Windows never becomes visible when a page is restored from the cache
2805
2806         Always pass "set" calls down to MediaPlayerPrivate instead of only when the
2807         value is different from the cached value. Let the implementation decide when
2808         to avoid work because nothing has changed.
2809
2810         * platform/graphics/MediaPlayer.cpp:
2811         (WebCore::MediaPlayer::setVolume):
2812         (WebCore::MediaPlayer::setRate):
2813         (WebCore::MediaPlayer::setRect):
2814         (WebCore::MediaPlayer::setVisible):
2815
2816 2008-08-14  Keishi Hattori  <casey.hattori@gmail.com>
2817
2818         Make Firebug command line API respect predefined variables.
2819
2820         https://bugs.webkit.org/show_bug.cgi?id=20385
2821
2822         Reviewed by Tim Hatcher.
2823
2824         * page/inspector/Console.js:
2825
2826 2008-08-14  Sam Weinig  <sam@webkit.org>
2827
2828         Reviewed by Geoffrey Garen and Timothy Hatcher.
2829
2830         Allow programatically setting the HTMLTokenizers time delay and chunk size
2831         which are used for determining how aggressively we yield.
2832
2833         * WebCore.base.exp:
2834         * html/HTMLTokenizer.cpp:
2835         (WebCore::HTMLTokenizer::begin):
2836         (WebCore::HTMLTokenizer::continueProcessing):
2837         * html/HTMLTokenizer.h:
2838         * page/Page.cpp:
2839         (WebCore::Page::Page):
2840         (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
2841         (WebCore::Page::setCustomHTMLTokenizerChunkSize):
2842         * page/Page.h:
2843         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
2844         (WebCore::Page::customHTMLTokenizerTimeDelay):
2845         (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
2846         (WebCore::Page::customHTMLTokenizerChunkSize):
2847
2848 2008-08-14  Eric Seidel  <eric@webkit.org>
2849
2850         Reviewed by Beth.
2851
2852         Move us one step closer to cross-platform svg/graphics code
2853
2854         * WebCore.xcodeproj/project.pbxproj:
2855         * html/CanvasStyle.cpp:
2856         * platform/graphics/Color.cpp:
2857         (WebCore::colorWithOverrideAlpha):
2858         * platform/graphics/Color.h:
2859         * svg/graphics/cg/CgSupport.cpp:
2860         (WebCore::applyStrokeStyleToContext):
2861         (WebCore::strokeBoundingBox):
2862         * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
2863         (WebCore::SVGPaintServerSolid::setup):
2864
2865 2008-08-14  Eric Seidel  <eric@webkit.org>
2866
2867         Reviewed by Alexey.
2868
2869         Remove un-need includes from HTMLCanvas and use the
2870         Gradient platform abstraction in one place in CanvasStyle
2871
2872         * html/CanvasRenderingContext2D.cpp:
2873         (WebCore::CanvasRenderingContext2D::fillRect):
2874         * html/CanvasStyle.cpp:
2875         * html/HTMLCanvasElement.cpp:
2876
2877 2008-08-14  Eric Seidel  <eric@webkit.org>
2878
2879         Reviewed by Alexey.
2880
2881         Clean up GlyphBuffer.h, removing more #ifdefs
2882
2883         * platform/graphics/GlyphBuffer.h:
2884         (WebCore::GlyphBuffer::glyphAt):
2885         (WebCore::GlyphBuffer::advanceAt):
2886         (WebCore::GlyphBuffer::add):
2887
2888 2008-08-14  Eric Seidel  <eric@webkit.org>
2889
2890         Reviewed by Sam.
2891
2892         Clean up AffineTransform.h, removing #ifdefs
2893
2894         * platform/graphics/AffineTransform.h:
2895         * platform/graphics/cairo/AffineTransformCairo.cpp:
2896         * platform/graphics/cg/AffineTransformCG.cpp:
2897         * platform/graphics/qt/AffineTransformQt.cpp:
2898         * platform/graphics/wx/AffineTransformWx.cpp:
2899
2900 2008-08-14  Dan Bernstein  <mitz@apple.com>
2901
2902         - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
2903
2904         * platform/graphics/cairo/ImageSourceCairo.cpp:
2905         (WebCore::ImageSource::frameSizeAtIndex):
2906         * platform/graphics/qt/ImageSourceQt.cpp:
2907         (WebCore::ImageSource::frameSizeAtIndex):
2908         * platform/graphics/wx/ImageSourceWx.cpp:
2909         (WebCore::ImageSource::frameSizeAtIndex):
2910
2911 2008-08-14  Dan Bernstein  <mitz@apple.com>
2912
2913         Reviewed by Brady Eidson.
2914
2915         - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
2916
2917         * platform/graphics/BitmapImage.cpp: 
2918         (WebCore::BitmapImage::BitmapImage): Added initialization of
2919         m_hasUniformFrameSize.
2920         (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
2921         cached frame for use in decoded size computation and for setting
2922         m_hasUniformFrameSize.
2923         (WebCore::BitmapImage::currentFrameSize): Added.
2924         (WebCore::BitmapImage::dataChanged): Added code to reset
2925         m_hasUniformFrameSize.
2926         * platform/graphics/BitmapImage.h: Added currentFrameSize() and
2927         m_hasUniformFrameSize.
2928         * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
2929         * platform/graphics/cg/ImageCG.cpp:
2930         (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
2931         fixes the bug, which resulted from assuming that the frame being drawn 
2932         was the same size as the first frame.
2933         * platform/graphics/cg/ImageSourceCG.cpp:
2934         (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
2935         changed to get the size of the frame at the given index.
2936         (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
2937
2938 2008-08-13  Simon Fraser  <simon.fraser@apple.com>
2939
2940         Reviewed by Eric Seidel
2941
2942         Fix @font-face inside @media rule crash.
2943         https://bugs.webkit.org/show_bug.cgi?id=20367
2944
2945         Test: fast/css/font-face-in-media-rule.html
2946
2947         * css/CSSStyleSelector.cpp:
2948         (WebCore::CSSRuleSet::addRulesFromSheet):
2949
2950 2008-08-14  Kevin Ollivier  <kevino@theolliviers.com>
2951
2952         wx build fixes after recent changes to Canvas and Image classes.
2953
2954         * platform/graphics/Pattern.h:
2955         * platform/graphics/wx/GradientWx.cpp:
2956         (WebCore::Gradient::fill):
2957         * platform/graphics/wx/GraphicsContextWx.cpp:
2958         (WebCore::GraphicsContext::applyFillPattern):
2959         (WebCore::GraphicsContext::applyStrokePattern):
2960         * platform/graphics/wx/ImageBufferWx.cpp:
2961         (WebCore::ImageBuffer::image):
2962         * platform/graphics/wx/ImageWx.cpp:
2963         (WebCore::Image::loadPlatformResource):
2964
2965 2008-08-14  Maxime Britto  <britto@apple.com>
2966
2967         Reviewed by Sam Weinig.
2968
2969         rdar://6102511
2970         When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
2971         IE and FF are both preventing the keyboard event to interact with the page while scrolling.
2972         Some differences exist between them concerning the kind of key which is pressed :
2973         IE7 : every key leads to a stop of the panning
2974         FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
2975         For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
2976
2977         * page/EventHandler.cpp:
2978         (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
2979
2980 2008-08-14  Christian Dywan  <christian@twotoasts.de>
2981
2982         Gtk+/ Cairo build fix, patch by Dirk Schulze.
2983
2984         * html/CanvasStyle.cpp:
2985         * platform/graphics/cairo/PatternCairo.cpp:
2986         (WebCore::Pattern::createPlatformPattern):
2987         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
2988
2989 2008-08-14  Kevin McCullough  <kmccullough@apple.com>
2990
2991         Reviewed by Tim.
2992
2993         <rdar://problem/6115819> Notify of profile in console
2994
2995         * page/InspectorController.cpp:
2996         (WebCore::InspectorController::addProfile):
2997         (WebCore::InspectorController::addProfileMessageToConsole): Called by
2998         addProfile this is the function that adds a message to the console that
2999         a profile finished.
3000         * page/InspectorController.h:
3001         * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
3002         the console log to the profile in the web inspector.
3003         (WebCore::getUniqueIdCallback):
3004         (WebCore::ProfileClass):
3005         * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
3006         Id to bring up the requested profile.  Also select and reveal the
3007         profile in the profile panel.  And created displayTitleForProfileLink()
3008         which formats a title taking into account if it's user initiated or if
3009         there are multiples. Lasty, I put the user initiated profile in a
3010         variable.
3011         * page/inspector/inspector.js: Make the profile title be a clickable
3012         link that will take the user to the identified profile.  Also expose
3013         the count of user initiated profiles so they can be displayed in the
3014         console with the correct count.
3015
3016 2008-08-14  Timothy Hatcher  <timothy@apple.com>
3017
3018         Avoid formating ConsoleMessages twice unless the message will be
3019         displayed in bubbles of a SourceFrame.
3020
3021         Reviewed by Kevin McCullough.
3022
3023         * page/inspector/Console.js:
3024         (WebInspector.ConsoleMessage): Only format the plain text message
3025         if the URL and line are valid and the level is error or warning.
3026         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
3027         Helper to test for error or warning level.
3028         * page/inspector/SourceFrame.js:
3029         (WebInspector.SourceFrame.prototype.addMessage): Don't add the
3030         message if there is no message or valid line or if the msg
3031         isn't an error or warning.
3032
3033 2008-08-14  Jan Michael Alonzo  <jmalonzo@webkit.org>
3034
3035         partial Gtk build fix, not reviewed
3036
3037         * platform/graphics/cairo/PatternCairo.cpp:
3038
3039 2008-08-13  Sam Weinig  <sam@webkit.org>
3040
3041         Reviewed by Anders Carlson.
3042
3043         Fix style issue.
3044
3045         * html/HTMLMediaElement.cpp:
3046         (WebCore::HTMLMediaElement::pickMedia):
3047
3048 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
3049
3050         Build fix for Cairo, not reviewed. (exposed by gtk build slave)
3051         Continue Erics build fixes, after the Image cleanup.
3052
3053         * platform/graphics/cairo/ImageBufferCairo.cpp:
3054         (WebCore::ImageBuffer::image):
3055
3056 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
3057
3058         Build fix for Qt, not reviewed.
3059         Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
3060
3061         * dom/XMLTokenizer.cpp:
3062         (WebCore::eventuallyMarkAsParserCreated): Was erre
3063
3064 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
3065
3066         Build fix, not reviewed.
3067         Add ScriptElement.cpp to Gtk build.
3068
3069         * GNUmakefile.am:
3070
3071 2008-08-13  Nikolas Zimmermann  <zimmermann@kde.org>
3072
3073         Reviewed by Eric.
3074
3075         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
3076
3077         Refactor HTMLScriptElement's code into a common base class: ScriptElement.
3078         SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
3079
3080         This resolves code duplications and allows us to completly replace the old
3081         SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
3082
3083         As ScriptElement, doesn't actually inherit from Element, we may want to rename
3084         it, though StyleElement uses the same naming convention, so I left it as is for now.
3085         Eventually we'll rename both files in future.
3086
3087         No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
3088
3089         * WebCore.pro: Add new ScriptElement.cpp to build.
3090         * WebCore.vcproj/WebCore.vcproj: Ditto.
3091         * WebCore.xcodeproj/project.pbxproj: Ditto.
3092         * WebCoreSources.bkl: Dutto.
3093         * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
3094         (WebCore::ScriptElement::insertedIntoDocument):
3095         (WebCore::ScriptElement::removedFromDocument):
3096         (WebCore::ScriptElement::childrenChanged):
3097         (WebCore::ScriptElement::finishParsingChildren):
3098         (WebCore::ScriptElement::handleSourceAttribute):
3099         (WebCore::isSupportedJavaScriptLanguage):
3100         (WebCore::ScriptElementData::ScriptElementData):
3101         (WebCore::ScriptElementData::~ScriptElementData):
3102         (WebCore::ScriptElementData::requestScript):
3103         (WebCore::ScriptElementData::evaluateScript):
3104         (WebCore::ScriptElementData::stopLoadRequest):
3105         (WebCore::ScriptElementData::notifyFinished):
3106         (WebCore::ScriptElementData::ignoresLoadRequest):
3107         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
3108         (WebCore::ScriptElementData::scriptCharset):
3109         (WebCore::ScriptElementData::scriptContent):
3110         * dom/ScriptElement.h: Added.
3111         (WebCore::ScriptElement::ScriptElement):
3112         (WebCore::ScriptElement::~ScriptElement):
3113         (WebCore::ScriptElementData::element):
3114         (WebCore::ScriptElementData::createdByParser):
3115         (WebCore::ScriptElementData::setCreatedByParser):
3116         * dom/XMLTokenizer.cpp:
3117         (WebCore::isScriptElement):
3118         (WebCore::castToScriptElement):
3119         (WebCore::eventuallyMarkAsParserCreated):
3120         (WebCore::XMLTokenizer::startElementNs):
3121         (WebCore::XMLTokenizer::endElementNs):
3122         (WebCore::createXHTMLParserErrorHeader):
3123         (WebCore::XMLTokenizer::insertErrorMessageBlock):
3124         * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
3125         (WebCore::HTMLScriptElement::HTMLScriptElement):
3126         (WebCore::HTMLScriptElement::~HTMLScriptElement):
3127         (WebCore::HTMLScriptElement::isURLAttribute):
3128         (WebCore::HTMLScriptElement::setCreatedByParser):
3129         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
3130         (WebCore::HTMLScriptElement::childrenChanged):
3131         (WebCore::HTMLScriptElement::parseMappedAttribute):
3132         (WebCore::HTMLScriptElement::finishParsingChildren):
3133         (WebCore::HTMLScriptElement::insertedIntoDocument):
3134         (WebCore::HTMLScriptElement::removedFromDocument):
3135         (WebCore::HTMLScriptElement::text):
3136         (WebCore::HTMLScriptElement::setText):
3137         (WebCore::HTMLScriptElement::setHtmlFor):
3138         (WebCore::HTMLScriptElement::setEvent):
3139         (WebCore::HTMLScriptElement::charset):
3140         (WebCore::HTMLScriptElement::src):
3141         (WebCore::HTMLScriptElement::type):
3142         (WebCore::HTMLScriptElement::scriptCharset):
3143         (WebCore::HTMLScriptElement::scriptContent):
3144         (WebCore::HTMLScriptElement::sourceAttributeValue):
3145         (WebCore::HTMLScriptElement::charsetAttributeValue):
3146         (WebCore::HTMLScriptElement::typeAttributeValue):
3147         (WebCore::HTMLScriptElement::languageAttributeValue):
3148         (WebCore::HTMLScriptElement::dispatchLoadEvent):
3149         (WebCore::HTMLScriptElement::dispatchErrorEvent):
3150         * html/HTMLScriptElement.h:
3151         * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
3152         * svg/SVGScriptElement.cpp:
3153         (WebCore::SVGScriptElement::SVGScriptElement):
3154         (WebCore::SVGScriptElement::scriptContent):
3155         (WebCore::SVGScriptElement::sourceAttributeValue):
3156         (WebCore::SVGScriptElement::charsetAttributeValue):
3157         (WebCore::SVGScriptElement::typeAttributeValue):
3158         (WebCore::SVGScriptElement::languageAttributeValue):
3159         (WebCore::SVGScriptElement::dispatchLoadEvent):
3160         (WebCore::SVGScriptElement::dispatchErrorEvent):
3161         * svg/SVGScriptElement.h:
3162         (WebCore::SVGScriptElement::setCreatedByParser):
3163
3164 2008-08-13  Eric Seidel  <eric@webkit.org>
3165
3166         Attempt to fix the Gtk build, no review.
3167
3168         I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
3169
3170         * platform/graphics/GraphicsContext.h:
3171         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3172         * platform/graphics/qt/GradientQt.cpp:
3173         * platform/graphics/qt/GraphicsContextQt.cpp:
3174         * platform/gtk/RenderThemeGtk.cpp:
3175         (WebCore::paintMozWidget):
3176
3177 2008-08-13  Eric Seidel  <eric@webkit.org>
3178
3179         Yet another attempt to fix the Qt build, no review.
3180
3181         * platform/graphics/qt/GradientQt.cpp:
3182         * platform/graphics/qt/GraphicsContextQt.cpp:
3183         (WebCore::GraphicsContext::applyStrokePattern):
3184         (WebCore::GraphicsContext::applyFillPattern):
3185
3186 2008-08-13  Eric Seidel  <eric@webkit.org>
3187
3188         Attempt to fix the Windows build, no review.
3189
3190         * platform/win/CursorWin.cpp:
3191         (WebCore::loadCursorByName):
3192         * platform/win/ScrollViewWin.cpp:
3193         (WebCore::ScrollView::paint):
3194
3195 2008-08-13  Eric Seidel  <eric@webkit.org>
3196
3197         Attempt to fix the Windows build, no review.
3198
3199         * platform/win/CursorWin.cpp:
3200         (WebCore::loadCursorByName):
3201         * platform/win/ScrollViewWin.cpp:
3202         (WebCore::ScrollView::paint):
3203
3204 2008-08-13  Eric Seidel  <eric@webkit.org>
3205
3206         Attempt to fix the Qt build, no review.
3207
3208         * platform/graphics/qt/ImageBufferQt.cpp:
3209         (WebCore::ImageBuffer::image):
3210
3211 2008-08-13  Eric Seidel  <eric@webkit.org>
3212
3213         Attempt to fix the Windows build, no review.
3214
3215         * platform/graphics/win/ImageWin.cpp:
3216         (WebCore::Image::loadPlatformResource):
3217         * plugins/win/PluginViewWin.cpp:
3218         (WebCore::PluginView::paintMissingPluginIcon):
3219
3220 2008-08-13  Eric Seidel  <eric@webkit.org>
3221
3222         Another attempt to fix the Qt build, no review.
3223
3224         * platform/graphics/qt/ImageQt.cpp:
3225         * platform/graphics/qt/StillImageQt.h:
3226
3227 2008-08-13  Eric Seidel  <eric@webkit.org>
3228
3229         No review, build fix only.
3230
3231         Fix mac build, due to change in new code since my patch was written.
3232
3233         * svg/graphics/cg/SVGResourceMaskerCg.mm:
3234         (WebCore::SVGResourceMasker::applyMask):
3235
3236 2008-08-13  Eric Seidel  <eric@webkit.org>
3237
3238         Build fix only, no review.
3239
3240         Attempt to fix the Qt build.
3241
3242         * platform/graphics/qt/ImageBufferQt.cpp:
3243         * platform/graphics/qt/StillImageQt.h:
3244         (WebCore::StillImage::create):
3245         (WebCore::StillImage::destroyDecodedData):
3246         (WebCore::StillImage::decodedSize):
3247
3248 2008-08-13  Eric Seidel  <eric@webkit.org>
3249
3250         Build fix only, no review.
3251
3252         Attempt to fix the Qt build.
3253
3254         * html/CanvasStyle.cpp:
3255         (WebCore::CanvasStyle::applyStrokeColor):
3256         (WebCore::CanvasStyle::applyFillColor):
3257
3258 2008-08-13  Eric Seidel  <eric@webkit.org>
3259
3260         Reviewed by Sam.
3261
3262         Match HTML5 spec by throwing INVALID_STATE_ERR when
3263         createPattern is called and the HTMLImageElement is not
3264         yet done loading the image (!isComplete)
3265         https://bugs.webkit.org/show_bug.cgi?id=20351
3266
3267         Test: http/misc/canvas-pattern-from-incremental-image.html
3268
3269         * html/CanvasRenderingContext2D.cpp:
3270         (WebCore::CanvasRenderingContext2D::createPattern):
3271
3272 2008-08-13  Eric Seidel  <eric@webkit.org>
3273
3274         Reviewed by Niko.
3275
3276         Split out a Pattern class from CanvasPattern
3277         and remove all the Pattern-related #ifdefs
3278         (This will break non-mac platforms!  I will fix them.)
3279         https://bugs.webkit.org/show_bug.cgi?id=20351
3280
3281         * GNUmakefile.am:
3282         * WebCore.pro:
3283         * WebCore.vcproj/WebCore.vcproj:
3284         * WebCore.xcodeproj/project.pbxproj:
3285         * WebCoreSources.bkl:
3286         * html/CanvasPattern.cpp:
3287         (WebCore::CanvasPattern::parseRepetitionType):
3288         (WebCore::CanvasPattern::CanvasPattern):
3289         * html/CanvasPattern.h:
3290         (WebCore::CanvasPattern::create):
3291         (WebCore::CanvasPattern::pattern):
3292         (WebCore::CanvasPattern::originClean):
3293         * html/CanvasRenderingContext2D.cpp:
3294         (WebCore::CanvasRenderingContext2D::createPattern):
3295         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
3296         (WebCore::CanvasRenderingContext2D::applyFillPattern):
3297         * html/CanvasRenderingContext2D.h:
3298         * html/HTMLCanvasElement.cpp:
3299         * html/HTMLCanvasElement.h:
3300         * loader/FrameLoader.cpp:
3301         (WebCore::FrameLoader::createHistoryItem):
3302         * platform/graphics/GraphicsContext.h:
3303         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3304         (WebCore::GraphicsContext::applyStrokePattern):
3305         (WebCore::GraphicsContext::applyFillPattern):
3306         * platform/graphics/cg/GraphicsContextCG.cpp:
3307         (WebCore::GraphicsContext::clipToImageBuffer):
3308         (WebCore::GraphicsContext::applyStrokePattern):
3309         (WebCore::GraphicsContext::applyFillPattern):
3310
3311 2008-08-13  Eric Seidel  <eric@webkit.org>
3312
3313         Reviewed by Niko.
3314
3315         Make Images RefCounted (and clean up callers)
3316         https://bugs.webkit.org/show_bug.cgi?id=20351
3317
3318         * editing/DeleteButtonController.cpp:
3319         (WebCore::DeleteButtonController::createDeletionUI):
3320         * loader/CachedImage.cpp:
3321         (WebCore::CachedImage::CachedImage):
3322         (WebCore::brokenImage):
3323         (WebCore::nullImage):
3324         (WebCore::CachedImage::image):
3325         (WebCore::CachedImage::notifyObservers):
3326         (WebCore::CachedImage::createImage):
3327         * loader/CachedImage.h:
3328         * loader/icon/IconRecord.cpp:
3329         (WebCore::IconRecord::setImageData):
3330         (WebCore::IconRecord::loadImageFromResource):
3331         * loader/icon/IconRecord.h:
3332         * platform/graphics/BitmapImage.h:
3333         (WebCore::BitmapImage::create):
3334         * platform/graphics/GeneratedImage.h:
3335         * platform/graphics/Gradient.cpp:
3336         * platform/graphics/Gradient.h:
3337         * platform/graphics/Image.cpp:
3338         (WebCore::Image::nullImage):
3339         * platform/graphics/Image.h:
3340         * platform/graphics/ImageBuffer.h:
3341         * platform/graphics/cairo/ImageBufferCairo.cpp:
3342         (WebCore::ImageBuffer::image):
3343         * platform/graphics/cg/ImageBufferCG.cpp:
3344         (WebCore::ImageBuffer::image):
3345         (WebCore::ImageBuffer::getImageData):
3346         (WebCore::ImageBuffer::putImageData):
3347         * platform/graphics/cg/PDFDocumentImage.h:
3348         (WebCore::PDFDocumentImage::create):
3349         (WebCore::PDFDocumentImage::destroyDecodedData):
3350         (WebCore::PDFDocumentImage::decodedSize):
3351         * platform/graphics/gtk/ImageGtk.cpp:
3352         (WebCore::Image::loadPlatformResource):
3353         * platform/graphics/mac/ImageMac.mm:
3354         (WebCore::Image::loadPlatformResource):
3355         * rendering/RenderImage.cpp:
3356         * rendering/RenderLayer.cpp:
3357         (WebCore::RenderLayer::paintOverflowControls):
3358         * svg/graphics/SVGImage.cpp:
3359         (WebCore::SVGImage::nativeImageForCurrentFrame):
3360         * svg/graphics/SVGImage.h:
3361         (WebCore::SVGImage::create):
3362         (WebCore::SVGImage::destroyDecodedData):
3363         (WebCore::SVGImage::decodedSize):
3364         (WebCore::SVGImage::frameAtIndex):
3365         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
3366         (WebCore::SVGPaintServerPattern::setup):
3367         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
3368         (WebCore::SVGResourceMasker::applyMask):
3369         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
3370         (WebCore::patternCallback):
3371         * svg/graphics/cg/SVGResourceMaskerCg.mm:
3372         (WebCore::SVGResourceMasker::applyMask):
3373
3374 2008-08-13  Eric Seidel  <eric@webkit.org>
3375
3376         Reviewed by Niko.
3377
3378         Remove #ifdefs from CanvasStyle by using platform/Color.h
3379         https://bugs.webkit.org/show_bug.cgi?id=20351
3380
3381         There are some down-sides to this commit.
3382         This commit limits us to 255 levels of grey for calls like:
3383         context.setStrokeStyle(.37, 1.0)
3384         previously CG might have used up to 32bits to store the grey level
3385         Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
3386
3387         Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
3388         to RGBA32 (like all the rest of colors in WebCore), thus:
3389         context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
3390         context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
3391
3392         If this is a problem for Dashboard, we can either roll out this commit
3393         or add a beefier Color abstraction, which can be used internally by GraphicsContext
3394         when keeping state, and then GraphicsContext can grow some additional set* routines
3395         for setting the a grey/float/whatever fill and stroke.
3396
3397         * html/CanvasRenderingContext2D.cpp:
3398         (WebCore::CanvasRenderingContext2D::setFillStyle):
3399         * html/CanvasStyle.cpp:
3400         (WebCore::CanvasStyle::CanvasStyle):
3401         (WebCore::colorWithOverrideAlpha):
3402         (WebCore::CanvasStyle::applyStrokeColor):
3403         (WebCore::CanvasStyle::applyFillColor):
3404         * html/CanvasStyle.h:
3405         * platform/graphics/Color.cpp:
3406         (WebCore::colorFloatToRGBAByte):
3407         (WebCore::makeRGBA32FromFloats):
3408         * platform/graphics/Color.h:
3409
3410 2008-08-13  Eric Carlson  <eric.carlson@apple.com>
3411
3412         Reviewed by Adele Peterson.
3413
3414         Fix for <rdar://problem/6137931>
3415         https://bugs.webkit.org/show_bug.cgi?id=20360
3416         Remove all parameters from the MIME type before checking with the MIME type registry
3417
3418         Tests: media/video-source-type-params.html
3419
3420         * html/HTMLMediaElement.cpp:
3421         (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';' 
3422         to isSupportedMediaMIMEType()
3423
3424 2008-08-13  Beth Dakin  <bdakin@apple.com>
3425
3426         Reviewed by Sam Weinig.
3427
3428         Fix for <rdar://problem/6141345>
3429
3430         This patch refines findString and markAllMatchesForText functions' 
3431         interactions with disconnected frames. They no longer rely on 
3432         knowing where a range is relative to the visible region and work 
3433         with disconnected frames that contain frames.
3434
3435         * editing/Editor.cpp:
3436         (WebCore::Editor::insideVisibleArea): Now returns a bool instead of 
3437         the visiblity enum.
3438         (WebCore::Editor::firstVisibleRange): This now returns the very 
3439         first visible range in the document. It's no longer dependent on 
3440         searching forward.
3441         (WebCore::Editor::lastVisibleRange): This now returns the very last 
3442         visible range in the document. It's no longer dependent on 
3443         searching backwards.
3444         (WebCore::Editor::nextVisibleRange): This returns the next visible 
3445         range in the appropriate direction from the current range.
3446         * editing/Editor.h:
3447         * page/Frame.cpp:
3448         (WebCore::Frame::findString):
3449         (WebCore::Frame::markAllMatchesForText):
3450
3451 2008-08-13  Kevin Ollivier  <kevino@theolliviers.com>
3452
3453         wx build fix for case-sensitive platforms, like Linux.
3454
3455         * WebCoreSources.bkl:
3456
3457 2008-08-13  Marco Barisione  <marco.barisione@collabora.co.uk>
3458
3459         Reviewed by Holger Freyther.
3460
3461         http://bugs.webkit.org/show_bug.cgi?id=16881
3462         [GTK] PlatformScreenGtk is unimplemented
3463
3464         Original patch by Christian Dywan.
3465
3466         * platform/gtk/PlatformScreenGtk.cpp:
3467         (WebCore::screenDepth):
3468         (WebCore::screenDepthPerComponent):
3469         (WebCore::screenIsMonochrome):
3470         (WebCore::screenRect):
3471         (WebCore::screenAvailableRect):
3472
3473 2008-08-13  Jan Michael Alonzo  <jmalonzo@webkit.org>
3474
3475         Reviewed by Holger Freyther.
3476
3477         http://bugs.webkit.org/show_bug.cgi?id=20318
3478         SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
3479
3480         g_idle_add is the same as g_idle_add_full with a priority of
3481         G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
3482
3483         * platform/gtk/SharedTimerGtk.cpp:
3484         (WebCore::setSharedTimerFireTime):
3485
3486 2008-08-13  Timothy Hatcher  <timothy@apple.com>
3487
3488         Changed the InspectorController so it can be notified when the
3489         attached state of the Inspector changes in WebKit.
3490
3491         Reviewed by Kevin McCullough.
3492
3493         * WebCore.base.exp: Updated the symbol for setWindowVisible.
3494         * page/InspectorController.cpp:
3495         (WebCore::InspectorController::setWindowVisible): Added an attached argument,
3496         that defaults to false.Call setAttachedWindow with the attached argument.
3497         (WebCore::InspectorController::setAttachedWindow): Call the script version
3498         of setAttachedWindow.
3499         * page/InspectorController.h:
3500         * page/inspector/inspector.js:
3501         (WebInspector.setAttachedWindow): Set the attached property.
3502
3503 2008-08-12  Timothy Hatcher  <timothy@apple.com>
3504
3505         Added a close button to the Inspector's toolbar when docked.
3506
3507         https://bugs.webkit.org/show_bug.cgi?id=14270
3508
3509         Reviewed by Kevin McCullough.
3510
3511         * page/InspectorController.cpp:
3512         (WebCore::closeWindow): Call InspectorController::closeWindow.
3513         (WebCore::InspectorController::windowScriptObjectAvailable):
3514         Added closeWindow to the script class.
3515         * page/InspectorController.h:
3516         * page/inspector/Images/closeButtons.png: Added.
3517         * page/inspector/inspector.css: Added and changed styles.
3518         * page/inspector/inspector.html: Added the close button.
3519         * page/inspector/inspector.js:
3520         (WebInspector.loaded): Added click event listener to the close button.
3521         (WebInspector.close): Call InspectorController.closeWindow.
3522
3523 2008-08-12  Timothy Hatcher  <timothy@apple.com>
3524
3525         Make the docked Web Inspector resizable. This is the cross platform
3526         portion of the code. Each InspectorClient needs to implement the
3527         real resize code.
3528
3529         https://bugs.webkit.org/show_bug.cgi?id=14282
3530
3531         Reviewed by Kevin McCullough.
3532
3533         * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
3534         * page/InspectorClient.h: Added setAttachedWindowHeight.
3535         * page/InspectorController.cpp:
3536         (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
3537         on the InspectorController.
3538         (WebCore::InspectorController::setAttachedWindowHeight): Call
3539         setAttachedWindowHeight on the client.
3540         (WebCore::InspectorController::windowScriptObjectAvailable):
3541         Added setAttachedWindowHeight to the script class.
3542         * page/InspectorController.h:
3543         * page/inspector/inspector.css: Make the cursor on the toolbar be
3544         row-resize when docked.
3545         * page/inspector/inspector.js:
3546         (WebInspector.loaded): Always add the toolbarDragStart event listener.
3547         (WebInspector.toolbarDragStart): Return early if we are not attached
3548         and not on Leopard. Call WebInspector.elementDragStart.
3549         (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
3550         (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
3551         otherwise call moveByUnrestricted.
3552
3553 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
3554
3555         Reviewed by Holger.
3556
3557         Initialize m_zoomsTextOnly in the Settings constructor.
3558
3559         * page/Settings.cpp:
3560         (WebCore::Settings::Settings):
3561
3562 2008-08-13  Brad Hughes <bhughes@trolltech.com>
3563
3564         Reviewed by Simon.
3565
3566         Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
3567
3568         The latest upgrade of the intel compiler allows us to compile all of
3569         Qt with optimizations enabled (yay!).
3570
3571         * WebCore.pro:
3572
3573 2008-08-13  Prasanth Ullattil  <prasanth.ullattil@trolltech.com>
3574
3575         Reviewed by Simon.
3576
3577         Fix QtWebKit not displaying content on 403 HTTP responses
3578
3579         Just like with 404 responses also display content with 403, as
3580         used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
3581
3582         * platform/network/qt/QNetworkReplyHandler.cpp:
3583         (WebCore::QNetworkReplyHandler::finish):
3584
3585 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
3586
3587         Reviewed by Holger.
3588
3589         Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
3590
3591         Make the formatting of String::format() locale independent through the use of QString::vsprintf.
3592
3593         * platform/text/String.cpp:
3594         (WebCore::String::format):
3595
3596 2008-08-13  Simon Hausmann  <hausmann@webkit.org>
3597
3598         Reviewed by Lars.
3599
3600         Fix QWebFrame::setHtml() not setting the new contents immediately.
3601
3602         Added a setter to the DocumentLoader to toggle the deferred loading of the main
3603         resource when it comes from substitute data.
3604
3605         Disable deferred loading of the main resource when we have valid substitute data,
3606         as used by QWebFrame::setHtml.
3607
3608         * loader/DocumentLoader.h:
3609
3610 2008-08-13  Mark Rowe  <mrowe@apple.com>
3611
3612         Speculative GTK build fix.
3613
3614         * GNUmakefile.am:  Add dependency info for JSSVGElementWrapperFactory.cpp.
3615
3616 2008-08-13  Thiago Macieira  <tjmaciei@trolltech.com>
3617
3618         Reviewed by Simon.
3619
3620         Fix encoding of [ and ] in the host part of the URL
3621
3622         Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
3623         add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
3624         doesn't encode [ and ] when they are found in the host part. That is, the
3625         following URL:
3626         http://[::1]/
3627         is valid and should not be reencoded to:
3628         http://%5b::1%5d/
3629
3630         * platform/qt/KURLQt.cpp:
3631         (WebCore::KURL::operator QUrl):
3632
3633 2008-08-12  Mihnea Ovidenie  <mihnea@adobe.com>
3634
3635         Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
3636         Broken HTML object elements cause de-reference of pointer to freed memory.
3637         If we fail to load an image for an object tag and we no longer believe the object tag points at
3638         an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
3639         fall back content.
3640
3641         Reviewed by Dave Hyatt and Alexey Proskuryakov.
3642
3643         Test: http/tests/misc/object-image-error-with-onload.html
3644
3645         * html/HTMLObjectElement.cpp:
3646         (WebCore::HTMLObjectElement::renderFallbackContent):
3647         * page/Frame.cpp:
3648         (WebCore::Frame::Frame):
3649
3650 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
3651
3652         Reviewed by Dave.
3653     
3654         Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
3655         Masks are translated, and the mask images are swapped on the y-axis.
3656
3657         Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
3658         is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
3659
3660         Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
3661         the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
3662
3663         * svg/graphics/cg/SVGResourceMaskerCg.mm:
3664         (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
3665
3666 2008-08-12  Dan Bernstein  <mitz@apple.com>
3667
3668         - WebCore part of <rdar://problem/6121636>
3669           Make fast*alloc() abort() on failure and add "try" variants that
3670           return NULL on failure.
3671
3672         Reviewed by Darin Adler.
3673
3674         * platform/Arena.cpp:
3675         (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
3676         result.
3677         * platform/graphics/cg/ImageBufferCG.cpp:
3678         (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
3679
3680 2008-08-12  Dan Bernstein  <mitz@apple.com>
3681
3682         Reviewed by Darin Adler.
3683
3684         - fix https://bugs.webkit.org/show_bug.cgi?id=19348
3685           <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
3686
3687         Test: fast/frames/frameset-style-recalc.html
3688
3689         * html/HTMLFrameSetElement.cpp:
3690         (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
3691         class implementation after marking for layout.
3692
3693 2008-08-12  Dan Bernstein  <mitz@apple.com>
3694
3695         Reviewed by John Sullivan.
3696
3697         - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
3698
3699         * WebCore.base.exp:
3700         * page/FrameView.cpp:
3701         (WebCore::FrameViewPrivate::FrameViewPrivate):
3702         (WebCore::FrameView::shouldUpdateWhileHidden):
3703         (WebCore::FrameView::setShouldUpdateWhileHidden):
3704         * page/FrameView.h:
3705         * page/Settings.cpp:
3706         * page/Settings.h:
3707
3708 2008-08-12  Adam Roben  <aroben@apple.com>
3709
3710         Windows build fix
3711
3712         * bindings/js/JSSVGPODTypeWrapper.h: Align
3713         JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
3714         members on 16-byte boundaries to avoid an alignment warning.
3715
3716 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
3717
3718         Reviewed by Oliver.
3719
3720         Add new dynamice-update layout tests covering SVGMarkerElement.
3721         Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
3722         Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
3723
3724         Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
3725                svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
3726                svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
3727                svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
3728                svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
3729                svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
3730                svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
3731                svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
3732                svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
3733                svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
3734                svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
3735                svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
3736                svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
3737                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
3738                svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
3739
3740         * svg/SVGMarkerElement.cpp:
3741         (WebCore::SVGMarkerElement::SVGMarkerElement):
3742         (WebCore::SVGMarkerElement::parseMappedAttribute):
3743         (WebCore::SVGMarkerElement::svgAttributeChanged):
3744         (WebCore::SVGMarkerElement::childrenChanged):
3745         (WebCore::SVGMarkerElement::setOrientToAuto):
3746         (WebCore::SVGMarkerElement::setOrientToAngle):
3747         (WebCore::SVGMarkerElement::canvasResource):
3748
3749 2008-08-12  Nikolas Zimmermann  <zimmermann@kde.org>
3750
3751         Reviewed by Oliver.
3752
3753         Add new dynamic-update layout tests covering SVGImageElement.
3754         Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
3755
3756         Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
3757                svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
3758                svg/dynamic-updates/SVGImageElement-dom-width-attr.html
3759                svg/dynamic-updates/SVGImageElement-dom-x-attr.html
3760                svg/dynamic-updates/SVGImageElement-dom-y-attr.html
3761                svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
3762                svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
3763                svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
3764                svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
3765                svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
3766
3767         * svg/SVGImageElement.cpp:
3768         (WebCore::SVGImageElement::svgAttributeChanged):
3769
3770 2008-08-11  Anthony Ricaud  <rik24d@gmail.com>
3771
3772         Changed Option/Alt-Up or Down in CSS editing when the value is
3773         near zero to jump to the next integer.
3774
3775         Reviewed by Tim Hatcher.
3776
3777         https://bugs.webkit.org/show_bug.cgi?id=20326
3778
3779         * page/inspector/StylesSidebarPane.js:
3780
3781 2008-08-11  Anthony Ricaud  <rik24d@gmail.com>
3782
3783         Changed the line highlight transition for an easier animation.
3784
3785         Reviewed by Tim Hatcher.
3786
3787         * page/inspector/SourceFrame.js:
3788
3789 2008-08-11  Keishi Hattori  <casey.hattori@gmail.com>
3790
3791         Added support for some Firebug Command Line APIs.
3792
3793         Reviewed by Tim Hatcher.
3794
3795         https://bugs.webkit.org/show_bug.cgi?id=19867
3796         https://bugs.webkit.org/show_bug.cgi?id=19868
3797         https://bugs.webkit.org/show_bug.cgi?id=19869
3798         https://bugs.webkit.org/show_bug.cgi?id=19875
3799         https://bugs.webkit.org/show_bug.cgi?id=19876
3800         https://bugs.webkit.org/show_bug.cgi?id=19880
3801
3802         * page/inspector/Console.js:
3803         (WebInspector.Console.prototype._evalInInspectedWindow):
3804         Create an object on the inspected window that holds the console
3805         command line API functions. This object is used in a with statement
3806         around the typed expression.
3807
3808 2008-08-11  Nikolas Zimmermann  <zimmermann@kde.org>
3809
3810         Reviewed by Antti.
3811
3812         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
3813
3814         JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
3815         failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
3816
3817         Added tests: svg/custom/svg-modify-currentTranslate.html
3818                      svg/custom/tearoffs-with-tearoffs.html
3819                      svg/custom/immutable-properties.html
3820
3821         Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
3822
3823         * bindings/js/JSSVGPODTypeWrapper.h:
3824         (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
3825         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
3826         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
3827         (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
3828         (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
3829         (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
3830         (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
3831         (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
3832         * bindings/scripts/CodeGenerator.pm:
3833         * bindings/scripts/CodeGeneratorJS.pm:
3834         * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
3835         * svg/SVGZoomEvent.idl:  SVG specification explicitely demands these attributes to be readonly, even its content.
3836
3837 2008-08-11  Brady Eidson  <beidson@apple.com>
3838
3839         Reviewed by John and Anders
3840
3841         Fix for <rdar://problem/6141797>
3842
3843         When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
3844         would never have nil data.
3845
3846         When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
3847         semantics with some WebKit applications.
3848
3849         The guarantee was a good one and should be restored.
3850
3851         Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
3852         creates an empty data object in the case of null data for its own purposes.
3853
3854         * loader/SubstituteResource.h:
3855         (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null.  This
3856           well help any future subclassers not make this mistake.
3857
3858         * loader/archive/ArchiveResource.cpp:
3859         (WebCore::ArchiveResource::create): Return 0 if the data is null.
3860
3861 2008-08-11  Simon Fraser  <simon.fraser@apple.com>
3862
3863         Reviewed by Dave Hyatt
3864
3865         https://bugs.webkit.org/show_bug.cgi?id=20328
3866         Fix a problem when an 'all' transition transition with more than
3867         one property changing is interrupted, and did some AnimationController
3868         cleanup.
3869
3870         Test: transitions/interrupted-all-transition.html
3871
3872         * page/AnimationController.cpp:
3873         (WebCore::ImplicitAnimation::ImplicitAnimation):
3874         (WebCore::AnimationControllerPrivate::blendProperties):
3875         (WebCore::CompositeAnimation::updateTransitions):
3876         (WebCore::CompositeAnimation::cleanupFinishedAnimations):
3877         (WebCore::CompositeAnimation::setTransitionStartTime):
3878         (WebCore::CompositeAnimation::overrideImplicitAnimations):
3879         (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
3880         (WebCore::ImplicitAnimation::animate):
3881         (WebCore::ImplicitAnimation::onAnimationEnd):
3882         (WebCore::ImplicitAnimation::sendTransitionEvent):
3883         (WebCore::ImplicitAnimation::affectsProperty):
3884         (WebCore::KeyframeAnimation::endAnimation):
3885         (WebCore::KeyframeAnimation::onAnimationEnd):
3886
3887 2008-08-11  Kevin McCullough  <kmccullough@apple.com>
3888
3889         Reviewed by Tim.
3890
3891         - Because console messages have group levels now, newly created messages
3892         that do not specify the level lose their message since the number of
3893         arguments is wrong.
3894  
3895         * page/inspector/Console.js:
3896         * page/inspector/Resource.js:
3897
3898 2008-08-11  Alp Toker  <alp@nuanti.com>
3899
3900         Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
3901         the opportunity to sort the sources lists.
3902
3903         * GNUmakefile.am:
3904
3905 2008-08-11  Timothy Hatcher  <timothy@apple.com>
3906
3907         Speed up the the JavaScript syntax highlighter by generating
3908         the finders only once per script instead of per line.
3909
3910         https://bugs.webkit.org/show_bug.cgi?id=20346
3911
3912         Reviewed by Adam Roben.
3913
3914         * page/inspector/SourceFrame.js:
3915         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
3916         Removed, factored into syntaxHighlightJavascript as an inline function.
3917         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
3918         Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
3919         Generate the finders before iterating the lines.
3920
3921 2008-08-11  Adam Roben  <aroben@apple.com>
3922
3923         Windows build fix
3924
3925         * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
3926         JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
3927         too.
3928
3929 2008-08-11  Dan Bernstein  <mitz@apple.com>
3930
3931         Reviewed by Darin Adler.
3932
3933         - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
3934
3935         Test: fast/css/counters/invalidate-cached-counter-node.html
3936
3937         * rendering/RenderContainer.cpp:
3938         (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
3939         RenderCounters in :before and :after content.
3940         * rendering/RenderContainer.h:
3941         * rendering/RenderCounter.cpp:
3942         (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
3943         to match the RenderObject method.
3944         (WebCore::RenderCounter::invalidate): Added. Resets the cached
3945         CounterNode and invalidates the object's layout and preferred widths.
3946         (WebCore::destroyCounterNodeChildren): Added a call to
3947         invalidateCounters().
3948         * rendering/RenderCounter.h:
3949         * rendering/RenderObject.h:
3950         (WebCore::RenderObject::invalidateCounters):
3951
3952 2008-08-11  Dean Jackson  <dino@apple.com>
3953
3954         Implement CSS Animation and Transition Events
3955         https://bugs.webkit.org/show_bug.cgi?id=20337
3956
3957         Implement the events defined in the CSS Animations
3958         and Transitions specifications so code can react
3959         to animations and transitions.
3960
3961         Reviewed by Tim Hatcher and Dave Hyatt.
3962
3963         * DerivedSources.make:
3964         * GNUmakefile.am:
3965         * WebCore.pro:
3966         * WebCore.vcproj/WebCore.vcproj:
3967         * WebCore.xcodeproj/project.pbxproj:
3968         * WebCoreSources.bkl:
3969             Build configs for new files
3970
3971         * bindings/js/JSDOMWindowBase.cpp:
3972         * bindings/js/JSDOMWindowBase.h:
3973         * bindings/js/JSEventCustom.cpp:
3974         * dom/Document.h:
3975         * dom/Event.cpp:
3976         * dom/Event.h:
3977         * dom/EventTarget.cpp:
3978         * dom/EventTargetNode.cpp:
3979         * dom/EventTargetNode.h:
3980         * html/HTMLElement.cpp:
3981         * page/AnimationController.cpp:
3982             do all the new event stuff
3983             
3984         * html/HTMLAttributeNames.in:
3985             the onwebkitanimation* and onwebkittransitionend attrs
3986
3987         * dom/WebKitAnimationEvent.cpp: Added.
3988         * dom/WebKitAnimationEvent.h: Added.
3989         * dom/WebKitAnimationEvent.idl: Added.
3990         * dom/WebKitTransitionEvent.cpp: Added.
3991         * dom/WebKitTransitionEvent.h: Added.
3992         * dom/WebKitTransitionEvent.idl: Added.
3993             New files for the events
3994
3995         * manual-tests/transition-events.html: Added.
3996             New testfile
3997
3998 2008-08-11  Adam Roben  <aroben@apple.com>
3999
4000         Add a ForwardingHeader for wtf/NotFound.h
4001
4002         Rubberstamped by Darin Adler.
4003
4004         * ForwardingHeaders/wtf/NotFound.h: Added.
4005
4006 2008-08-11  Timothy Hatcher  <timothy@apple.com>
4007
4008         Fixes a bug where error bubbles in JavaScript resources would
4009         be clobbered by the syntax highlighter.
4010
4011         https://bugs.webkit.org/show_bug.cgi?id=20345
4012
4013         Reviewed by Adam Roben.
4014
4015         * manual-tests/inspector/resources/script-error.js: Added.
4016         * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
4017         * page/inspector/SourceFrame.js:
4018         (WebInspector.SourceFrame.prototype._addMessageToSource):
4019         Check the nodeType and not the nodeName, this is less fragile.
4020         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
4021         Check if the lastChild is an error bubble, if so remove it before
4022         getting the line's textContent. Add the error bubble back at the end.
4023
4024 == Rolled over to ChangeLog-2008-08-10 ==