Optimizations to Element::getAttribute
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-10  Jens Alfke  <snej@chromium.org>
2
3         Reviewed by Darin Adler.
4
5         Optimizations to Element::getAttribute
6         https://bugs.webkit.org/show_bug.cgi?id=30926
7
8         * dom/Element.cpp:
9         (WebCore::Element::getAttribute):  User case-insensitive compare instead of lowercasing the name.
10         * dom/NamedAttrMap.cpp:
11         (WebCore::NamedNodeMap::getAttributeItem):  Avoid redundant compares, and do fast/likely compares first.
12         * platform/text/PlatformString.h:
13         (WebCore::equalPossiblyIgnoringCase):  New inline method, used by both of the above.
14
15 2009-11-10  Beth Dakin  <bdakin@apple.com>
16
17         Reviewed by Darin Adler.
18
19         Fix for <rdar://problem/7059710> 
20         -and corresponding-
21         https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit-
22         color-correction for CSS colors
23
24         New exported symbol for GraphicsContext::fillColor() which now 
25         accepts a ColorSpace as an optional parameter.
26         * WebCore.base.exp:
27
28         Added a new file, ColorSpace.h, to define the ColorSpace enum.
29         * WebCore.xcodeproj/project.pbxproj:
30
31         Computed Style for -webkit-color-correction
32         * css/CSSComputedStyleDeclaration.cpp:
33         (WebCore::):
34         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
35
36         Parse -webkit-color-correction
37         * css/CSSParser.cpp:
38         (WebCore::CSSParser::parseValue):
39
40        Map CSS identifiers to the appropriate values of the ColorSpace enum
41         * css/CSSPrimitiveValueMappings.h:
42         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
43         (WebCore::CSSPrimitiveValue::operator ColorSpace):
44
45         New property -webkit-color-correction
46         * css/CSSPropertyNames.in:
47
48         Map -webkit-color-correction into the RenderStyle.
49         * css/CSSStyleSelector.cpp:
50         (WebCore::CSSStyleSelector::applyProperty):
51
52         Add new value sRGB.
53         * css/CSSValueKeywords.in:
54
55         Comment out the reference to sRGB since it will now be inherited as 
56         a value from CSSValueKeywords.
57         * css/SVGCSSValueKeywords.in:
58
59         Definition of the ColorSpace enum.
60         * platform/graphics/ColorSpace.h: Added.
61         (WebCore::):
62
63         These functions all now take a ColorSpace as a parameter.
64         * platform/graphics/GraphicsContext.cpp:
65         (WebCore::GraphicsContext::setStrokeColor):
66         (WebCore::GraphicsContext::setFillColor):
67         (WebCore::GraphicsContext::drawHighlightForText):
68
69         Return the appropriate ColorSpace.
70         (WebCore::GraphicsContext::strokeColorSpace):
71         (WebCore::GraphicsContext::fillColorSpace):
72
73         These functions all call other functions which require a ColorSpace 
74         as a parameter.
75         (WebCore::GraphicsContext::setStrokePattern):
76         (WebCore::GraphicsContext::setFillPattern):
77         (WebCore::GraphicsContext::setStrokeGradient):
78         (WebCore::GraphicsContext::setFillGradient):
79
80         All of the GraphicsContext functions that take a Color should now 
81         also take a ColorSpace.
82         * platform/graphics/GraphicsContext.h:
83
84         Added new member variables stokeColorSpace and fillColorSpace.
85         * platform/graphics/GraphicsContextPrivate.h:
86         (WebCore::GraphicsContextState::GraphicsContextState):
87
88         Attempt to keep the Cairo port building with all of the massive 
89         changes to GraphicsContext.        
90         * platform/graphics/cairo/GraphicsContextCairo.cpp:
91         (WebCore::GraphicsContext::fillRect):
92         (WebCore::GraphicsContext::setPlatformFillColor):
93         (WebCore::GraphicsContext::setPlatformStrokeColor):
94         (WebCore::GraphicsContext::fillRoundedRect):
95
96         
97         * platform/graphics/cg/GraphicsContextCG.cpp:
98         (WebCore::sRGBColorSpaceRef): New static function that returns a 
99         CGColorSpaceRef for the sRGB color space.
100         (WebCore::deviceRGBColorSpaceRef): New static function that returns 
101         a CGColorSpaceRef for the device RGB color space.
102
103         (WebCore::setCGFillColor): Now takes a ColorSpace parameter and 
104         sets the fill color to the specified color in the given ColorSpace.
105         (WebCore::setCGStrokeColor): Same, but for stroke.
106
107         (WebCore::setCGFillColorSpace): New static to set the 
108         CGFillColorSpace to the given ColorSpace
109         (WebCore::setCGStrokeColorSpace): Same, but for stroke.
110
111         Send ColorSpaces when appropriate, set ColorSpaces when 
112         appropriate, and check ColorSpaces when appropriate.
113         (WebCore::GraphicsContext::GraphicsContext):
114         (WebCore::GraphicsContext::drawRect):
115         (WebCore::GraphicsContext::drawLine):
116         (WebCore::GraphicsContext::fillPath):
117         (WebCore::GraphicsContext::strokePath):
118         (WebCore::GraphicsContext::fillRect):
119         (WebCore::GraphicsContext::fillRoundedRect):
120         (WebCore::GraphicsContext::strokeRect):
121         (WebCore::GraphicsContext::drawLineForText):
122         (WebCore::GraphicsContext::setPlatformStrokeColor):
123         (WebCore::GraphicsContext::setPlatformFillColor):
124
125         Attempt to keep Haiku building.
126         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
127         (WebCore::GraphicsContext::fillRect):
128         (WebCore::GraphicsContext::fillRoundedRect):
129         (WebCore::GraphicsContext::setPlatformStrokeColor):
130         (WebCore::GraphicsContext::setPlatformFillColor):
131
132         Attempt to keep QT building.
133         * platform/graphics/qt/GraphicsContextQt.cpp:
134         (WebCore::GraphicsContext::fillRect):
135         (WebCore::GraphicsContext::fillRoundedRect):
136         (WebCore::GraphicsContext::setPlatformStrokeColor):
137         (WebCore::GraphicsContext::setPlatformFillColor):
138
139         Attempt to keep Wince building.
140         * platform/graphics/wince/GraphicsContextWince.cpp:
141         (WebCore::GraphicsContext::fillRect):
142         (WebCore::GraphicsContext::setPlatformFillColor):
143         (WebCore::GraphicsContext::setPlatformStrokeColor):
144         (WebCore::GraphicsContext::clearRect):
145         (WebCore::GraphicsContext::fillRoundedRect):
146         (WebCore::GraphicsContext::setPlatformShadow):
147
148         Attempt to keep WX building.
149         * platform/graphics/wx/GraphicsContextWx.cpp:
150         (WebCore::GraphicsContext::fillRect):
151         (WebCore::GraphicsContext::fillRoundedRect):
152         (WebCore::GraphicsContext::setPlatformStrokeColor):
153         (WebCore::GraphicsContext::setPlatformFillColor):
154
155         Added functions colorSpace() and setColorSpace()
156         * rendering/style/RenderStyle.h:
157         (WebCore::InheritedFlags::colorSpace):
158         (WebCore::InheritedFlags::setColorSpace):
159
160         The ColorSpace is stored here.
161         * rendering/style/StyleRareInheritedData.cpp:
162         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
163         (WebCore::StyleRareInheritedData::operator==):
164         * rendering/style/StyleRareInheritedData.h:
165
166         All of these call sites call GraphicsContext functions which now 
167         require ColorSpaces.
168         * editing/SelectionController.cpp:
169         (WebCore::SelectionController::paintCaret):
170         * html/canvas/CanvasRenderingContext2D.cpp:
171         (WebCore::CanvasRenderingContext2D::drawTextInternal):
172         * html/canvas/CanvasStyle.cpp:
173         (WebCore::CanvasStyle::applyStrokeColor):
174         (WebCore::CanvasStyle::applyFillColor):
175         * inspector/InspectorController.cpp:
176         (WebCore::drawOutlinedQuad):
177         * page/FrameView.cpp:
178         (WebCore::FrameView::paintContents):
179         * platform/ScrollbarTheme.h:
180         (WebCore::ScrollbarTheme::paintScrollCorner):
181         * platform/ScrollbarThemeComposite.cpp:
182         (WebCore::ScrollbarThemeComposite::paintScrollCorner):
183         * platform/graphics/Image.cpp:
184         (WebCore::Image::fillWithSolidColor):
185         * platform/graphics/mac/FontMac.mm:
186         (WebCore::Font::drawGlyphs):
187         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
188         (WebCore::MediaPlayerPrivate::paint):
189         * rendering/EllipsisBox.cpp:
190         (WebCore::EllipsisBox::paint):
191         * rendering/InlineFlowBox.cpp:
192         (WebCore::InlineFlowBox::paintTextDecorations):
193         * rendering/InlineTextBox.cpp:
194         (WebCore::updateGraphicsContext):
195         (WebCore::paintTextWithShadows):
196         (WebCore::InlineTextBox::paint):
197         (WebCore::InlineTextBox::paintSelection):
198         (WebCore::InlineTextBox::paintCompositionBackground):
199         (WebCore::InlineTextBox::paintDecoration):
200         (WebCore::InlineTextBox::paintTextMatchMarker):
201         (WebCore::InlineTextBox::paintCompositionUnderline):
202         * rendering/InlineTextBox.h:
203         * rendering/RenderBlock.cpp:
204         (WebCore::RenderBlock::fillHorizontalSelectionGap):
205         (WebCore::RenderBlock::fillVerticalSelectionGap):
206         (WebCore::RenderBlock::fillLeftSelectionGap):
207         (WebCore::RenderBlock::fillRightSelectionGap):
208         * rendering/RenderBoxModelObject.cpp:
209         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
210         (WebCore::RenderBoxModelObject::paintBoxShadow):
211         * rendering/RenderFileUploadControl.cpp:
212         (WebCore::RenderFileUploadControl::paintObject):
213         * rendering/RenderFrameSet.cpp:
214         (WebCore::RenderFrameSet::paintColumnBorder):
215         (WebCore::RenderFrameSet::paintRowBorder):
216         * rendering/RenderImage.cpp:
217         (WebCore::RenderImage::paintReplaced):
218         * rendering/RenderLayer.cpp:
219         (WebCore::RenderLayer::paintScrollCorner):
220         (WebCore::RenderLayer::paintResizer):
221         * rendering/RenderListBox.cpp:
222         (WebCore::RenderListBox::paintItemForeground):
223         (WebCore::RenderListBox::paintItemBackground):
224         * rendering/RenderListMarker.cpp:
225         (WebCore::RenderListMarker::paint):
226         * rendering/RenderObject.cpp:
227         (WebCore::RenderObject::drawLineForBoxSide):
228         (WebCore::RenderObject::drawArcForBoxSide):
229         * rendering/RenderReplaced.cpp:
230         (WebCore::RenderReplaced::paint):
231         * rendering/RenderScrollbarTheme.cpp:
232         (WebCore::RenderScrollbarTheme::paintScrollCorner):
233         * rendering/RenderThemeMac.mm:
234         (WebCore::RenderThemeMac::paintMenuListButton):
235         * rendering/RenderView.cpp:
236         (WebCore::RenderView::paintBoxDecorations):
237         * rendering/RenderWidget.cpp:
238         (WebCore::RenderWidget::paint):
239         * rendering/SVGInlineTextBox.cpp:
240         (WebCore::SVGInlineTextBox::paintSelection):
241         * svg/graphics/SVGPaintServerGradient.cpp:
242         (WebCore::SVGPaintServerGradient::setup):
243         * svg/graphics/SVGPaintServerSolid.cpp:
244         (WebCore::SVGPaintServerSolid::setup):
245
246 2009-11-10  Keishi Hattori  <casey.hattori@gmail.com>
247
248         Reviewed by Timothy Hatcher.
249
250         Web Inspector: Speed up syntax highlighter
251         https://bugs.webkit.org/show_bug.cgi?id=31291
252
253         * inspector/front-end/SourceFrame.js:
254         (WebInspector.SourceFrame.prototype._loaded):
255         (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine): Replace the line content node.
256         (WebInspector.SourceSyntaxHighlighter.prototype.process):
257         (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken):
258         (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode):
259         (WebInspector.CSSSourceSyntaxHighlighter):
260         (WebInspector.JavaScriptSourceSyntaxHighlighter):
261
262 2009-11-09  Jeremy Orlow  <jorlow@chromium.org>
263
264         Reviewed by Eric Seidel.
265
266         Remove session storage setting
267         https://bugs.webkit.org/show_bug.cgi?id=31279
268
269         Remove session storage from Settings.  It was added temporarily so we could
270         disable it by default at runtime in Chromium.  We now disable these things in a
271         different way, so it's time to remove it.  Qt also depended on this setting for
272         a short period of time, but after talking to them we agreed that it should be
273         removed.
274
275         This bug is the second half of https://bugs.webkit.org/show_bug.cgi?id=30602
276
277         * page/DOMWindow.cpp:
278         (WebCore::DOMWindow::sessionStorage):
279         * page/Settings.cpp:
280         (WebCore::Settings::Settings):
281         * page/Settings.h:
282
283 2009-11-10  Dan Bernstein  <mitz@apple.com>
284
285         Reviewed by Eric Carlson and Darin Adler.
286
287         WebCore part of making full-screen video pause during scrubbing.
288
289         * WebCore.Video.exp: Sorted and added HTMLMediaElement::beginScrubbing()
290         and HTMLMediaElement::endScrubbing().
291
292 2009-11-10  Anton Muhin  <antonm@chromium.org>
293
294         Reviewed by Adam Barth.
295
296         Reapply 50562 reverted by 50588 due to issues with sandboxing (should be fine now).
297         https://bugs.webkit.org/show_bug.cgi?id=31051
298
299         * bindings/v8/V8GCController.cpp:
300         (WebCore::V8GCController::gcEpilogue):
301         (WebCore::V8GCController::checkMemoryUsage):
302         * bindings/v8/V8GCController.h:
303         * bindings/v8/V8Proxy.cpp:
304         (WebCore::V8Proxy::evaluate):
305         (WebCore::V8Proxy::runScript):
306         (WebCore::V8Proxy::callFunction):
307
308 2009-11-10  Zoltan Horvath  <zoltan@webkit.org>
309
310         Reviewed by Darin Adler.
311
312         Allow custom memory allocation control for the part of loader directory in WebCore
313         https://bugs.webkit.org/show_bug.cgi?id=31161
314
315         Inherits the following classes from Noncopyable because these are instantiated
316         by 'new' and these are no need to be copyable:
317
318         class Request - WebCore/loader/loader.cpp:100
319         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
320         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
321         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
322         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
323         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
324
325         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
326         MainThreadBridge is instantiated by 'new' in 
327         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
328
329         ThreadableLoaderClient's inheriting has been changed to public.
330
331         * loader/ImageLoader.cpp:
332         * loader/ProgressTracker.cpp:
333         * loader/RedirectScheduler.cpp:
334         * loader/Request.h:
335         * loader/ThreadableLoaderClient.h:
336         * loader/WorkerThreadableLoader.h:
337         * loader/appcache/ApplicationCacheHost.h:
338         * loader/appcache/ApplicationCacheStorage.h:
339
340 2009-11-10  Philippe Normand  <pnormand@igalia.com>
341
342         Reviewed by Eric Seidel.
343
344         https://bugs.webkit.org/show_bug.cgi?id=31047
345         [GTK] Failing test media/video-played-ranges-1.html
346
347         WebKit coding style fixes.
348
349         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
350         (WebCore::mediaPlayerPrivateMessageCallback):
351         (WebCore::MediaPlayerPrivate::naturalSize):
352         (WebCore::MediaPlayerPrivate::paint):
353         (WebCore::mimeTypeCache):
354
355 2009-11-10  Oliver Hunt  <oliver@apple.com>
356
357         Remove build failure introduced by earlier build fix.
358
359         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
360
361 2009-11-10  Oliver Hunt  <oliver@apple.com>
362
363         Is this the last build fix? grep tells me yes.
364
365         * bindings/v8/custom/V8DocumentCustom.cpp:
366         (WebCore::CALLBACK_FUNC_DECL):
367
368 2009-11-10  Oliver Hunt  <oliver@apple.com>
369
370         Hopefully the last one.  Why aren't these autogenerated?
371
372         * bindings/v8/V8DOMWrapper.cpp:
373         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
374         (WebCore::V8DOMWrapper::getTemplate):
375         (WebCore::V8DOMWrapper::convertToV8Object):
376
377 2009-11-10  Oliver Hunt  <oliver@apple.com>
378
379         Another chrome build fix.
380
381         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
382         (WebCore::CALLBACK_FUNC_DECL):
383
384 2009-11-10  Oliver Hunt  <oliver@apple.com>
385
386         Yet another chrome buildfix
387
388         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
389         (WebCore::CALLBACK_FUNC_DECL):
390         * bindings/v8/custom/V8WebGLArrayCustom.h:
391         (WebCore::constructCanvasArray):
392         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
393         (WebCore::CALLBACK_FUNC_DECL):
394         (WebCore::INDEXED_PROPERTY_GETTER):
395         (WebCore::INDEXED_PROPERTY_SETTER):
396         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
397         (WebCore::CALLBACK_FUNC_DECL):
398         (WebCore::INDEXED_PROPERTY_GETTER):
399         (WebCore::INDEXED_PROPERTY_SETTER):
400         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
401         (WebCore::CALLBACK_FUNC_DECL):
402         (WebCore::INDEXED_PROPERTY_GETTER):
403         (WebCore::INDEXED_PROPERTY_SETTER):
404         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
405         (WebCore::CALLBACK_FUNC_DECL):
406         (WebCore::vertexAttribAndUniformHelperf):
407         (WebCore::uniformHelperi):
408         (WebCore::uniformMatrixHelper):
409         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
410         (WebCore::CALLBACK_FUNC_DECL):
411         (WebCore::INDEXED_PROPERTY_GETTER):
412         (WebCore::INDEXED_PROPERTY_SETTER):
413         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
414         (WebCore::CALLBACK_FUNC_DECL):
415         (WebCore::INDEXED_PROPERTY_GETTER):
416         (WebCore::INDEXED_PROPERTY_SETTER):
417         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
418         (WebCore::CALLBACK_FUNC_DECL):
419         (WebCore::INDEXED_PROPERTY_GETTER):
420         (WebCore::INDEXED_PROPERTY_SETTER):
421         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
422         (WebCore::CALLBACK_FUNC_DECL):
423         (WebCore::INDEXED_PROPERTY_GETTER):
424         (WebCore::INDEXED_PROPERTY_SETTER):
425
426 2009-11-10  Oliver Hunt  <oliver@apple.com>
427
428         Chrome build fix.
429
430         * bindings/v8/V8Index.h:
431
432 2009-11-10  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
433
434         Reviewed by Reviewed by Jan Alonzo.
435
436         https://bugs.webkit.org/show_bug.cgi?id=30901
437         [Gtk] Need to de-lint the Atk a11y code
438
439         Removal of various and sundry style-violating nits.
440
441         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
442
443 2009-11-10  Philippe Normand  <pnormand@igalia.com>
444
445         Reviewed by Jan Alonzo.
446
447         https://bugs.webkit.org/show_bug.cgi?id=31047
448         [GTK] Failing test media/video-played-ranges-1.html
449
450         Fix playback rate setter by remembering the rate was changed. Also
451         correctly handle reverse playback by doing a seek from end to
452         beginning of the media.
453
454         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
455         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
456         (WebCore::MediaPlayerPrivate::currentTime):
457         (WebCore::MediaPlayerPrivate::seek):
458         (WebCore::MediaPlayerPrivate::hasAudio):
459         (WebCore::MediaPlayerPrivate::setVolume):
460         (WebCore::MediaPlayerPrivate::setRate):
461         (WebCore::MediaPlayerPrivate::updateStates):
462         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
463
464 2009-11-10  Oliver Hunt  <oliver@apple.com>
465
466         Reviewed by Maciej Stachowiak.
467
468         Rename 3D Canvas related classes to use WebGL prefix
469         https://bugs.webkit.org/show_bug.cgi?id=29095
470
471         Automatic rename of all WebGL related types from Canvas* to
472         WebGL* per more recent version of the WebGL spec.
473
474         Due to the automatic rename I've removed the 600+ line change list.
475
476 2009-11-09  Dirk Schulze  <krit@webkit.org>
477
478         Reviewed by Oliver Hunt.
479
480         SVG feDisplacementMap is not implemented
481         [https://bugs.webkit.org/show_bug.cgi?id=31255]
482
483         This is the implementation of the SVG filter effect
484         feDisplacementMap. 
485
486         Test: svg/filters/feDisplacementMap.svg
487
488         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
489         (WebCore::FEDisplacementMap::apply):
490
491 2009-11-09  Kent Tamura  <tkent@chromium.org>
492
493         Reviewed by Darin Adler.
494
495         Add a comment about null strings and hash functions.
496         https://bugs.webkit.org/show_bug.cgi?id=29118
497
498         * platform/text/StringHash.h:
499
500 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
501
502         Reviewed by Darin Adler.
503
504         Compiler warnings in InspectorResource.h
505         https://bugs.webkit.org/show_bug.cgi?id=29231
506
507         Fix compilation warnings by removing addition operation on an enum type.
508
509         * inspector/InspectorResource.h:
510         (WebCore::InspectorResource::):
511         (WebCore::InspectorResource::Changes::hasChange):
512         (WebCore::InspectorResource::Changes::set):
513         (WebCore::InspectorResource::Changes::setAll):
514
515 2009-11-09  Anders Carlsson  <andersca@apple.com>
516
517         Reviewed by Darin Adler and Dan Bernstein.
518
519         <rdar://problem/7328395>
520         https://bugs.webkit.org/show_bug.cgi?id=31277
521
522         When an object tag's style changes (for example when child nodes are added/removed),
523         reuse its Frame (if it has one) instead of creating multiple Frames.
524
525         Test: fast/dom/HTMLObjectElement/children-changed.html
526
527         * loader/FrameLoader.cpp:
528         (WebCore::FrameLoader::requestObject):
529
530 2009-11-09  Norbert Leser  <norbert.leser@nokia.com>
531
532         Reviewed by Kenneth Rohde Christiansen.
533
534         Moved macro MMP_RULES (LINKEROPTION) into symbian instead of symbian-sbsv2,
535         since adjustment of RW-section base address will be needed for all new symbian
536         tool chains, specifically for arm and gcc compilation targets.
537         Also, change target address to 0xE00000 to be sufficient for all targets.
538
539         * WebCore.pro:
540
541 2009-11-09  Pavel Feldman  <pfeldman@chromium.org>
542
543         Reviewed by Timothy Hatcher.
544
545         Web Inspector: Crash when inspecting
546         WebCore\manual-tests\inspector\dom-mutation.html
547
548         https://bugs.webkit.org/show_bug.cgi?id=31259
549
550         * inspector/InspectorDOMAgent.cpp:
551         (WebCore::InspectorDOMAgent::handleEvent):
552
553 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
554
555         Reviewed by Kenneth Rohde Christiansen.
556
557         [Qt] Few classes have virtual functions but non-virtual destructor
558         https://bugs.webkit.org/show_bug.cgi?id=31269
559
560         No new tests as there is no functional change.
561
562         * platform/qt/QWebPageClient.h:
563         (QWebPageClient::~QWebPageClient): Add virtual destructor.
564
565 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
566
567         Reviewed by Kenneth Rohde Christiansen.
568
569         [Qt] Allow setting HTTP headers with empty value in XMLHTTPRequest
570         https://bugs.webkit.org/show_bug.cgi?id=31140
571
572         QtNetwork interprets null string as request to remove the header, not add it.
573         Replace null values with empty values before passing them to QtNetwork.
574
575         Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-value.html
576
577         * platform/network/qt/ResourceRequestQt.cpp:
578         (WebCore::ResourceRequest::toNetworkRequest):
579
580 2009-11-09  Vadim Zeitlin  <vadim@wxwidgets.org>
581
582         Reviewed by Kevin Ollivier.
583
584         [wx] Fix handling of alpha channel when using wxWidgets 2.9: it was
585         simply ignored before resulting in transparent areas being black in PNG
586         images for example.
587         
588         https://bugs.webkit.org/show_bug.cgi?id=30823
589
590         * platform/image-decoders/wx/ImageDecoderWx.cpp:
591         (WebCore::RGBA32Buffer::asNewNativeImage):
592
593 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
594
595         Reviewed by Kenneth Rohde Christiansen.
596
597         Use explicit parentheses to silence gcc 4.4 -Wparentheses warnings
598         https://bugs.webkit.org/show_bug.cgi?id=31040
599
600         No new tests as there is no functional change.
601
602         * dom/Document.cpp:
603         (WebCore::Document::recalcStyleSelector):
604         * editing/TextIterator.cpp:
605         (WebCore::pushFullyClippedState):
606         * editing/VisibleSelection.cpp:
607         (WebCore::VisibleSelection::appendTrailingWhitespace):
608         * html/HTMLLinkElement.cpp:
609         (WebCore::HTMLLinkElement::process):
610         * loader/RedirectScheduler.cpp:
611         (WebCore::RedirectScheduler::mustLockBackForwardList):
612         * loader/appcache/ApplicationCacheGroup.cpp:
613         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
614         * platform/graphics/qt/FontCacheQt.cpp:
615         (WebCore::FontPlatformDataCacheKey::computeHash):
616         * rendering/RenderBlock.cpp:
617         (WebCore::RenderBlock::handleRunInChild):
618         * rendering/RenderBox.cpp:
619         (WebCore::RenderBox::calcHeight):
620         * rendering/RenderTextControlMultiLine.cpp:
621         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
622         * rendering/style/RenderStyle.cpp:
623         (WebCore::RenderStyle::diff):
624         * svg/SVGAnimateElement.cpp:
625         (WebCore::parseNumberValueAndUnit):
626         * svg/SVGAnimationElement.cpp:
627         (WebCore::SVGAnimationElement::startedActiveInterval):
628         * svg/SVGPreserveAspectRatio.cpp:
629         (WebCore::SVGPreserveAspectRatio::getCTM):
630
631 2009-11-09  Shinichiro Hamaji  <hamaji@chromium.org>
632
633         Reviewed by Dimitri Glazkov.
634
635         Win chromium is slow to draw transparent texts
636         https://bugs.webkit.org/show_bug.cgi?id=31258
637
638         Clip graphics context to reduce calculation.
639
640         No new tests because this change only affects performance.
641
642         * platform/graphics/chromium/FontChromiumWin.cpp:
643         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
644         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
645
646 2009-11-09  Carol Szabo  <carol.szabo@nokia.com>
647
648         Reviewed by Darin Adler.
649
650         showTree(CounterNode*) generates too little info and has too many spaces.
651         https://bugs.webkit.org/show_bug.cgi?id=31212
652
653         No new tests as the change has no functional effect it is just for
654         improved debugging.
655
656         * rendering/CounterNode.cpp:
657         (WebCore::showTreeAndMark):
658         Changed to also show addresses of parent, next and previous
659         siblings.
660
661 2009-11-09  Stuart Morgan  <stuartmorgan@chromium.org>
662
663         Reviewed by Darin Adler.
664
665         Moves Mac implementation of setUseSecureKeyboardEntry to Frame.cpp and
666         enables it PLATFORM(CHROMIUM) in addition to PLATFORM(MAC).
667
668         https://bugs.webkit.org/show_bug.cgi?id=31083
669
670         No new tests; implementation is unchanged.
671
672         * page/Frame.cpp:
673         (WebCore::Frame::setUseSecureKeyboardEntry):
674         * page/mac/FrameMac.mm:
675
676 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
677
678         Reviewed by Jan Alonzo.
679
680         Make XP_UNIX tests consistent
681         https://bugs.webkit.org/show_bug.cgi?id=31250
682
683         No new tests as there is no functional change.
684
685         * plugins/PluginView.cpp:
686         (WebCore::PluginView::setFrameRect): Test if XP_UNIX is defined
687         instead of the value of the macro
688
689         * plugins/gtk/PluginViewGtk.cpp:
690         (WebCore::PluginView::setNPWindowIfNeeded): Test if the XP_UNIX is
691         defined instead of using the PLATFORM macro to be consistent
692         (WebCore::PluginView::getValue): Ditto.
693
694 2009-11-09  Kevin Watters  <kevinwatters@gmail.com>
695
696         Reviewed by Darin Adler.
697
698         Thunk to the main thread from ~Database to deref Database's m_document.
699
700         If the Database was the Document's last referrer, then ~Document occurs on the
701         Database thread, and ASSERT(!m_styleRecalcTimer.isActive()) hits a main thread
702         ASSERT in debug builds.
703
704         * storage/Database.cpp:
705         (WebCore::derefDocument):
706         (WebCore::Database::~Database):
707
708 2009-11-09  Mark Mentovai  <mark@chromium.org>
709
710         Reviewed by Dan Bernstein.
711
712         Track "can have scrollbar" state within FrameView independently of the
713         individual scrollbar states in ScrollView.
714
715         rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167
716         REGRESSION (r48064): mint.com loses scrollbars after coming out of
717         edit mode.
718
719         rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517
720         REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store.
721
722         Test: fast/overflow/scrollbar-restored.html
723
724         * WebCore.base.exp:
725         * page/FrameView.cpp:
726         (WebCore::FrameView::FrameView):
727         (WebCore::FrameView::resetScrollbars):
728         (WebCore::FrameView::setCanHaveScrollbars):
729         (WebCore::FrameView::updateCanHaveScrollbars):
730         (WebCore::FrameView::layout):
731         * page/FrameView.h:
732         * platform/ScrollView.h:
733
734 2009-11-09  Keishi Hattori  <casey.hattori@gmail.com>
735
736         Reviewed by Timothy Hatcher.
737
738         Web Inspector: CSS syntax highlighter doesn't recognize negative numbers
739         https://bugs.webkit.org/show_bug.cgi?id=31257
740
741         * inspector/front-end/SourceFrame.js:
742
743 2009-11-09  Alexander Pavlov  <apavlov@chromium.org>
744
745         Reviewed by Timothy Hatcher.
746
747         Web Inspector: Debugger shortcuts (F8, F10, F11) have no effect if the Console view is open
748         https://bugs.webkit.org/show_bug.cgi?id=31252
749
750         Route F1-F12 keypresses in the Console view to the current panel if there is one.
751
752         Test: manual-tests/inspector/debugger-shortcuts-with-console-opened.html
753
754         * inspector/front-end/ConsoleView.js:
755         (WebInspector.ConsoleView.prototype._promptKeyDown):
756         * inspector/front-end/utilities.js:
757         ():
758         * manual-tests/inspector/debugger-shortcuts-with-console-opened.html: Added.
759
760 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
761
762         Reviewed by Kenneth Rohde Christiansen.
763
764         [Qt] Pass credentials provided by XMLHTTPRequest to the network request.
765         https://bugs.webkit.org/show_bug.cgi?id=31208
766
767         After r42483, the credentials are no longer passed to the network request
768         in the URL of the request.
769         Pass the credentials from XMLHTTPRequest to the network request, the same
770         way that other ports do.
771
772         After this patch LayoutTests/http/xmlhttprequest/basic-auth.html passes.
773
774         * platform/network/qt/ResourceHandleQt.cpp:
775         (WebCore::ResourceHandle::start):
776         (WebCore::ResourceHandle::loadResourceSynchronously):
777
778 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
779
780         Unreviewed.
781
782         https://bugs.webkit.org/show_bug.cgi?id=31161
783
784         Roll back r50657 because it breaks the MAC builds.
785
786         * loader/ImageLoader.cpp:
787         * loader/ProgressTracker.cpp:
788         * loader/RedirectScheduler.cpp:
789         * loader/Request.h:
790         * loader/ThreadableLoaderClient.h:
791         * loader/WorkerThreadableLoader.h:
792         * loader/appcache/ApplicationCacheHost.h:
793         * loader/appcache/ApplicationCacheStorage.h:
794         * loader/icon/IconDatabaseClient.h:
795
796 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
797
798         Reviewed by Darin Adler.
799
800         Allow custom memory allocation control for the part of loader directory in WebCore
801         https://bugs.webkit.org/show_bug.cgi?id=31161
802
803         Inherits the following classes from Noncopyable because these are instantiated
804         by 'new' and these are no need to be copyable:
805
806         class Request - WebCore/loader/loader.cpp:100
807         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
808         class IconDatabaseClient - WebCore/loader/icon/IconDatabase.cpp:89
809         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
810         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
811         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
812         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
813
814         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
815         MainThreadBridge is instantiated by 'new' in 
816         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
817
818         ThreadableLoaderClient's inheriting has been changed to public.
819
820         * loader/ImageLoader.cpp:
821         * loader/ProgressTracker.cpp:
822         * loader/RedirectScheduler.cpp:
823         * loader/Request.h:
824         * loader/ThreadableLoaderClient.h:
825         * loader/WorkerThreadableLoader.h:
826         * loader/appcache/ApplicationCacheHost.h:
827         * loader/appcache/ApplicationCacheStorage.h:
828         * loader/icon/IconDatabaseClient.h:
829
830 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
831
832         Reviewed by Darin Adler.
833
834         Allow custom memory allocation control for WebCore's DocLoader
835         https://bugs.webkit.org/show_bug.cgi?id=31163
836
837         Inherits DocLoader class from Noncopyable because it is
838         instantiated by 'new' in WebCore/dom/Document.cpp:370 and 
839         it is no need to be copyable.
840
841         * loader/DocLoader.h:
842
843 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
844
845         Reviewed by Darin Adler.
846
847         Allow custom memory allocation control for WebCore's Tokenizer
848         https://bugs.webkit.org/show_bug.cgi?id=31162
849
850         Inherits Tokenizer class from Noncopyable because (its child class)
851         ImageTokenizer instantiated by 'new' in WebCore/loader/ImageDocument.cpp:178 
852         and it is no need to be copyable.
853
854         * dom/Tokenizer.h:
855
856 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
857
858         Reviewed by Darin Adler.
859
860         Allow custom memory allocation control for WebCore's DeleteButtonController
861         https://bugs.webkit.org/show_bug.cgi?id=31105
862
863         Inherits DeleteButtonController class from Noncopyable because it is 
864         instantiated by 'new' in WebCore/editing/Editor.cpp:919 and
865         it is no need to be copyable.  
866
867         * editing/DeleteButtonController.h:
868
869 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
870
871         Reviewed by Jan Alonzo.
872
873         [GTK] Expose Page::tabKeyCyclesThroughElements in the API
874         https://bugs.webkit.org/show_bug.cgi?id=30482
875
876         Expose Page::tabKeyCyclesThroughElements as a property of
877         WebKitWebView.
878
879         No new tests; fast/events/keypress-insert-tab.html is no longer skipped.
880
881         * platform/gtk/KeyEventGtk.cpp: Correct m_text for tab key presses.
882         (WebCore::singleCharacterString):
883
884 2009-11-09  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
885
886         Reviewed by Xan Lopez.
887
888         https://bugs.webkit.org/show_bug.cgi?id=25415
889         [GTK][ATK] Please implement support for get_text_at_offset
890
891         Fix a crasher that occurred with text which included newline
892         chars in the markup.
893
894         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
895         (convertUniCharToUTF8):
896
897 2009-11-05  Jakub Wieczorek  <faw217@gmail.com>
898
899         Reviewed by Holger Freyther.
900
901         [Qt] The XML tokenizer reports a parse error twice if it occurs before the document element is found.
902         https://bugs.webkit.org/show_bug.cgi?id=31144
903
904         XMLTokenizer::doEnd() uses an additional logic to report a parse failure in
905         documents that end prematurely but are not considered invalid by QXmlStream.
906         This is to stay compatible with the libxml2 implementation.
907         However, that code path would be also hit in situations when it should not,
908         i.e. the error would have already been caught and handled. As a result, the
909         same error would be reported twice.
910
911         No new tests, because the problem is already covered by
912         fast/parser/xml-declaration-missing-ending-mark.html.
913
914         * dom/XMLTokenizerQt.cpp:
915         (WebCore::XMLTokenizer::doEnd):
916
917 2009-11-08  Keishi Hattori  <casey.hattori@gmail.com>
918
919         Reviewed by Pavel Feldman.
920
921         Web Inspector: Inspector should support copy() in the command line
922         https://bugs.webkit.org/show_bug.cgi?id=31238
923
924         * inspector/InspectorBackend.cpp:
925         (WebCore::InspectorBackend::copyText): Added.
926         * inspector/InspectorBackend.h: Added copyText
927         * inspector/InspectorBackend.idl: Added copyText
928         * inspector/front-end/InjectedScript.js:
929         (InjectedScript._copy): Added.
930         (InjectedScript._ensureCommandLineAPIInstalled):
931
932 2009-11-08  Drew Wilson  <atwilson@chromium.org>
933
934         Reviewed by Dimitri Glazkov.
935
936         V8 WorkerContextExecutionProxy does not handle SharedWorkers
937         https://bugs.webkit.org/show_bug.cgi?id=31226
938
939         Now checks to see what type of context is active and creates the
940         appropriate wrapper (DEDICATEDWORKERCONTEXT vs SHAREDWORKERCONTEXT).
941
942         Added support for converting to SharedWorkers and SharedWorkerContexts.
943
944         Test: Existing layout tests cover this case (start passing in Chrome).
945
946         * bindings/v8/WorkerContextExecutionProxy.cpp:
947         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
948         Now generates the right type of DOMWrapper for SharedWorkerContexts.
949         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
950         Added support for SHAREDWORKERCONTEXT.
951         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
952         Added support for SharedWorker and SharedWorkerContext.
953
954 2009-11-08  Johnny Ding  <johnnyding.webkit@gmail.com>
955
956         Reviewed by Dimitri Glazkov.
957
958         https://bugs.webkit.org/show_bug.cgi?id=31224
959         [V8] Return StyleSheet object instead of HTMLStyleElement w/document.styleSheets named property getter.
960
961         Test: fast/dom/StyleSheet/get-stylesheet-byname.html
962
963         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
964         (WebCore::NAMED_PROPERTY_GETTER):
965
966 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
967
968         Reviewed by Timothy Hatcher.
969
970         Web Inspector: "Search again" on scripts panel switches
971         to the script this search started with.
972
973         https://bugs.webkit.org/show_bug.cgi?id=31243
974
975         * inspector/front-end/Panel.js:
976         (WebInspector.Panel.prototype.jumpToNextSearchResult):
977
978 2009-11-08  Kent Tamura  <tkent@chromium.org>
979
980         Reviewed by Darin Adler.
981
982         Simplify Icon interface.
983         https://bugs.webkit.org/show_bug.cgi?id=31154
984
985         - Remove Icon::createIconForFile().  createIconForFiles() covers
986           createIconForFile()'s role.
987         - Remove FileChooser::chooseIcon()
988         - Change the parameter types of FileChooser constructor and the
989           factory method, String -> const Vector<String>&, in order to
990           support initialization with multiple files.
991         - Remove the icon loading code in IconChromiumWin.cpp, which
992           doesn't work because of the sandbox.
993
994         No tests because it's just a refactoring.
995
996         * platform/FileChooser.cpp:
997         (WebCore::FileChooser::FileChooser):
998         (WebCore::FileChooser::create):
999         (WebCore::FileChooser::chooseFile):
1000         (WebCore::FileChooser::chooseFiles):
1001         * platform/FileChooser.h:
1002         * platform/graphics/Icon.h:
1003         * platform/graphics/chromium/IconChromiumLinux.cpp:
1004         * platform/graphics/chromium/IconChromiumMac.cpp:
1005         * platform/graphics/chromium/IconChromiumWin.cpp:
1006         (WebCore::Icon::createIconForFiles):
1007         * platform/graphics/gtk/IconGtk.cpp:
1008         (WebCore::Icon::createIconForFiles):
1009         * platform/graphics/haiku/IconHaiku.cpp:
1010         * platform/graphics/mac/IconMac.mm:
1011         (WebCore::Icon::createIconForFiles):
1012         * platform/graphics/qt/IconQt.cpp:
1013         (WebCore::Icon::createIconForFiles):
1014         * platform/graphics/win/IconWin.cpp:
1015         (WebCore::Icon::createIconForFiles):
1016         * platform/graphics/wx/IconWx.cpp:
1017         * rendering/RenderFileUploadControl.cpp:
1018         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
1019
1020 2009-11-08  Daniel Bates  <dbates@webkit.org>
1021
1022         Reviewed by Adam Barth.
1023
1024         https://bugs.webkit.org/show_bug.cgi?id=31098
1025
1026         Allows same-origin plugin-based content to load.
1027
1028         Test: http/tests/security/xssAuditor/object-src-inject.html
1029
1030         * page/XSSAuditor.cpp:
1031         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): Modified to call XSSAuditor::isSameOriginResource.
1032         (WebCore::XSSAuditor::canLoadObject): Ditto.
1033         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto. 
1034         (WebCore::XSSAuditor::isSameOriginResource): Added.
1035         * page/XSSAuditor.h:
1036
1037 2009-11-08  David Levin  <levin@chromium.org>
1038
1039         Reviewed by NOBODY (chromium build fix).
1040
1041         * platform/network/HTTPParsers.cpp:
1042         (WebCore::parseDate): Changed this to not
1043         use a date parser that needs ExecState passed.
1044         
1045 2009-11-08  David Levin  <levin@chromium.org>
1046
1047         Unreviewed build fix for chromium.
1048
1049         * platform/graphics/skia/GraphicsContextSkia.cpp:
1050         (WebCore::GraphicsContext::fillPath):
1051         (WebCore::GraphicsContext::fillRect):
1052         (WebCore::GraphicsContext::strokePath):
1053         (WebCore::GraphicsContext::strokeRect):
1054
1055 2009-11-08  David Levin  <levin@chromium.org>
1056
1057         Unreviewed build fix for chromium.
1058
1059         Build fix for https://bugs.webkit.org/show_bug.cgi?id=31219
1060         Clean up GraphicsContext's current concept of ColorSpace
1061
1062         * platform/graphics/skia/GraphicsContextSkia.cpp:
1063         (WebCore::GraphicsContext::fillPath):
1064         (WebCore::GraphicsContext::fillRect):
1065         (WebCore::GraphicsContext::strokePath):
1066         (WebCore::GraphicsContext::strokeRect):
1067
1068 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
1069
1070         Reviewed by Timothy Hatcher.
1071
1072         Web Inspector: [REGRESSION] committing style edit
1073         clears elements panel selection.
1074
1075         https://bugs.webkit.org/show_bug.cgi?id=31242
1076
1077         * inspector/front-end/ElementsTreeOutline.js:
1078         (WebInspector.ElementsTreeOutline.prototype.update):
1079         * inspector/front-end/StylesSidebarPane.js:
1080         (WebInspector.StylePropertyTreeElement.prototype.):
1081         (WebInspector.StylePropertyTreeElement.prototype):
1082
1083 2009-11-08  Janne Koskinen  <janne.p.koskinen@digia.com>
1084
1085         Reviewed by Holger Freyther.
1086
1087         ResourceRequest to be class instead of struct
1088         https://bugs.webkit.org/show_bug.cgi?id=30670
1089
1090         Started as a compilation fix for Symbian where the compiler makes a distinction between
1091         class and struct in function argument signatures.
1092         Changed all forward declarations of ResourceRequest to have class in the forward
1093         declaration instead of struct and changed the definition of ResourceRequest to be class
1094         and added access qualifiers where missing. Additionally two references of friend
1095         struct ResourceRequestBase changed to class instead.
1096
1097         * history/HistoryItem.h:
1098         * inspector/InspectorController.h:
1099         * inspector/InspectorResource.h:
1100         * loader/DocumentThreadableLoader.h:
1101         * loader/FrameLoaderClient.h:
1102         * loader/MainResourceLoader.h:
1103         * loader/ResourceLoadNotifier.h:
1104         * loader/SubresourceLoader.h:
1105         * loader/SubresourceLoaderClient.h:
1106         * loader/ThreadableLoader.h:
1107         * loader/WorkerThreadableLoader.h:
1108         * loader/appcache/ApplicationCache.h:
1109         * loader/appcache/ApplicationCacheHost.h:
1110         * platform/CrossThreadCopier.h:
1111         * platform/network/ResourceHandle.h:
1112         * platform/network/ResourceHandleClient.h:
1113         * platform/network/ResourceRequestBase.h:
1114         * platform/network/cf/ResourceRequest.h:
1115         * platform/network/cf/ResourceRequestCFNet.h:
1116         * platform/network/chromium/ResourceRequest.h:
1117         * platform/network/curl/ResourceRequest.h:
1118         * platform/network/qt/ResourceRequest.h:
1119         * platform/network/soup/ResourceRequest.h:
1120         * xml/XMLHttpRequest.h:
1121
1122 2009-11-08  Dan Bernstein  <mitz@apple.com>
1123
1124         Reviewed by Simon Fraser.
1125
1126         <rdar://problem/7363434> Crash inside RenderObject::localToAbsolute
1127         below FrameView::layout
1128         https://bugs.webkit.org/show_bug.cgi?id=31093
1129
1130         Test: fast/block/positioning/relative-positioned-inline-container.html
1131
1132         In <http://trac.webkit.org/changeset/19148>, setStaticY() was changed
1133         to mark the object for layout, doing so without marking its ancestors.
1134         However, RenderBlock::skipLeadingWhitespace and
1135         RenderBlock::skipTrailingWhitespace() call setStaticY() on a relative-
1136         positioned inline container, causing it to be marked for layout without
1137         ever going back to give it layout, and thus layout could end with a
1138         dirty object still in the tree, leading to all sorts of badness.
1139
1140         The fix is to revert setStaticY() to not marking the object dirty, and
1141         instead do it in the call sites that require it, which are in
1142         RenderBlock and RenderFlexibleBox.
1143
1144         * rendering/RenderBlock.cpp:
1145         (WebCore::RenderBlock::adjustPositionedBlock):
1146         * rendering/RenderFlexibleBox.cpp:
1147         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
1148         (WebCore::RenderFlexibleBox::layoutVerticalBox):
1149         * rendering/RenderLayer.cpp:
1150         * rendering/RenderLayer.h:
1151         (WebCore::RenderLayer::setStaticY):
1152
1153 2009-11-07  Daniel Bates  <dbates@webkit.org>
1154
1155         Reviewed by Darin Adler.
1156
1157         https://bugs.webkit.org/show_bug.cgi?id=20780
1158         
1159         Fixes an issue where the onchange event handler is not fired when the 
1160         input field is autocompleted.
1161         
1162         We cannot test this using DRT since DRT cannot emulate autocompletion.
1163         So, a manual-test is included.
1164
1165         Tests: manual-tests/autocompletion-fire-onchange.html
1166
1167         * manual-tests/autocompletion-fire-onchange.html: Added.
1168         * rendering/RenderTextControl.cpp:
1169         (WebCore::RenderTextControl::setInnerTextValue):
1170
1171 2009-11-07  Benjamin Otte  <otte@gnome.org>
1172
1173         Reviewed by Holger Freyther.
1174
1175         Mark redrawn areas on image surfaces as dirty.
1176
1177         This is required to conform to the Cairo API, but is currently only
1178         used by debugging tools like cairo-trace.
1179
1180         * platform/graphics/cairo/ImageBufferCairo.cpp:
1181         (WebCore::ImageBuffer::platformTransformColorSpace):
1182         (WebCore::putImageData):
1183
1184 2009-11-07  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1185
1186         Reviewed by Xan Lopez.
1187
1188         https://bugs.webkit.org/show_bug.cgi?id=30878
1189         [Gtk] atk_text_get_text() fails in entries when the end_offset is -1
1190
1191         If the end_offset is -1, use the String length as the end_offset.
1192
1193         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1194         (webkit_accessible_text_get_text):
1195
1196 2009-11-06  Beth Dakin  <bdakin@apple.com>
1197
1198         Reviewed by Adele Peterson.
1199
1200         Fix for https://bugs.webkit.org/show_bug.cgi?id=31219 Clean up 
1201         GraphicsContext's current concept of ColorSpace
1202
1203         ColorSpace is now called ColorType. The variables on the state we 
1204         appropriately re-named as well. I removed strokeColorSpace() and 
1205         fillColorSpace() from GraphicsContext since they were never called. 
1206
1207         * platform/graphics/GraphicsContext.cpp:
1208         (WebCore::GraphicsContext::setStrokeColor):
1209         (WebCore::GraphicsContext::setFillColor):
1210         (WebCore::GraphicsContext::setStrokePattern):
1211         (WebCore::GraphicsContext::setFillPattern):
1212         (WebCore::GraphicsContext::setStrokeGradient):
1213         (WebCore::GraphicsContext::setFillGradient):
1214         * platform/graphics/GraphicsContext.h:
1215         (WebCore::):
1216         * platform/graphics/GraphicsContextPrivate.h:
1217         (WebCore::GraphicsContextState::GraphicsContextState):
1218         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1219         (WebCore::GraphicsContext::fillPath):
1220         (WebCore::GraphicsContext::strokePath):
1221         * platform/graphics/cg/GraphicsContextCG.cpp:
1222         (WebCore::calculateDrawingMode):
1223         (WebCore::GraphicsContext::drawPath):
1224         (WebCore::GraphicsContext::fillPath):
1225         (WebCore::GraphicsContext::strokePath):
1226         (WebCore::GraphicsContext::fillRect):
1227         (WebCore::GraphicsContext::strokeRect):
1228         * platform/graphics/qt/GraphicsContextQt.cpp:
1229         (WebCore::GraphicsContext::fillPath):
1230         (WebCore::GraphicsContext::strokePath):
1231         (WebCore::GraphicsContext::fillRect):
1232         * platform/graphics/wince/GraphicsContextWince.cpp:
1233         (WebCore::GraphicsContext::fillPath):
1234         (WebCore::GraphicsContext::fillRect):
1235
1236 2009-11-06  Brian Weinstein  <bweinstein@apple.com>
1237
1238         Reviewed by Tim Hatcher.
1239
1240         Fixes <http://webkit.org/b/31177>.
1241         Web Inspector: Bind backspace to delete cookies and DOM Storage.
1242         
1243         Refactor editing code from DOMStorageDataGrid to DataGrid, so other
1244         places in the inspector can use editing in DataGrid (added a FIXME for
1245         some stuff that needs to be generalized).
1246         
1247         Also added deleting functionality to DataGrid, and implemented it for
1248         Cookies and DOM Storage. The reason this patch is so big is because of
1249         the refactoring of editing code, which won't be used yet in a cross-datagrid
1250         way, but should be able to.
1251         
1252         Additionally, moved the callbacks members from DOMStorageDataGrid to
1253         DOMStorageItemsView, which allowed us to delete DOMStorageDataGrid, to 
1254         make the architecture of DOM Storage look a lot more like the Cookies view.
1255         
1256         Lastly, added a preventDefault call in ElementsTreeOutline to prevent the 
1257         inspector from beeping at you when you delete an element.
1258
1259         * WebCore.gypi: Removed DOMStorageDataGrid.
1260         * WebCore.vcproj/WebCore.vcproj: Removed DOMStorageDataGrid.
1261         * inspector/front-end/CookieItemsView.js:
1262         (WebInspector.CookieItemsView.prototype.dataGridForCookies):
1263         (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
1264         (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
1265         * inspector/front-end/DOMStorageDataGrid.js: Removed.
1266         * inspector/front-end/DOMStorageItemsView.js:
1267         (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
1268         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
1269         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
1270         (WebInspector.DOMStorageItemsView.prototype._editingCallback):
1271         (WebInspector.DOMStorageItemsView.prototype.deleteSelectedRow):
1272         (WebInspector.DOMStorageItemsView.prototype._deleteCallback):
1273         * inspector/front-end/DataGrid.js:
1274         (WebInspector.DataGrid):
1275         (WebInspector.DataGrid.prototype._ondblclick): Moved from DOMStorageDataGrid to DataGrid + Refactoring.
1276         (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode): Ditto.
1277         (WebInspector.DataGrid.prototype._startEditing): Ditto.
1278         (WebInspector.DataGrid.prototype._editingCommitted.moveToNextIfNeeded): Ditto.
1279         (WebInspector.DataGrid.prototype._editingCommitted): Ditto.
1280         (WebInspector.DataGrid.prototype._editingCancelled): Ditto.
1281         (WebInspector.DataGrid.prototype.handleKeyEvent): Added case for delete/backspace.
1282         * inspector/front-end/ElementsTreeOutline.js:
1283         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): Added preventDefault call.
1284         * inspector/front-end/WebKit.qrc: Removed DOMStorageDataGrid.
1285         * inspector/front-end/inspector.html: Removed DOMStorageDataGrid.
1286
1287 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
1288
1289         Qt build fix: added an ExecState parameter.
1290
1291         * bridge/qt/qt_runtime.cpp:
1292         (JSC::Bindings::convertValueToQVariant):
1293         (JSC::Bindings::convertQVariantToValue):
1294
1295 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
1296
1297         https://bugs.webkit.org/show_bug.cgi?id=31197
1298         Implemented a timezone cache not based on Mac OS X's notify_check API.
1299
1300         Updated for JavaScriptCore internal API change.
1301
1302         * bridge/qt/qt_runtime.cpp:
1303         (JSC::Bindings::convertValueToQVariant):
1304         (JSC::Bindings::convertQVariantToValue): Updated for namespace change.
1305
1306         * platform/network/HTTPParsers.cpp:
1307         (WebCore::parseDate): Pass 0 for ExecState, since we don't have one.
1308         (This function probably shouldn't be using a JavaScript date parser
1309         to begin with, but oh well.)
1310
1311 2009-11-06  Anantanarayanan G Iyengar  <ananta@chromium.org>
1312
1313         Reviewed by Adam Barth.
1314
1315         The associated webkit bug is https://bugs.webkit.org/show_bug.cgi?id=31067,
1316         which affects Chromium only.
1317         
1318         Changes to V8HTMLDocumentCustom.cpp are as below:-
1319         1. The HTMLDocumentOpen function would cause a crash in Chromium if
1320            there was no calling javascript context. We now check for this case
1321            and pass in NULL to the HTMLDocument::open function which can handle
1322            a NULL document parameter.
1323         2. The other functions like HTMLDocumentWrite, HTMLDocumentWriteln, etc
1324            had ASSERTS for a NULL caller frame, which was bogus as it would crash
1325            anyway. We now check for this case and return a failure.
1326            
1327         Changes to V8DOMWindowCustom.cpp are as below:-
1328         1. Instead of failing the window.open call made by NPAPI for lack of a
1329            calling javascript context, we now use the entered context as the calling
1330            context.
1331
1332         Tests: plugins/document-open.html
1333                plugins/window-open.html
1334
1335         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1336         (WebCore::CALLBACK_FUNC_DECL):
1337         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1338         (WebCore::CALLBACK_FUNC_DECL):
1339
1340 2009-11-06  Steve Block  <steveblock@google.com>
1341
1342         Reviewed by Eric Seidel.
1343
1344         Geolocation error code UNKNOWN_ERROR is deprecated.
1345         https://bugs.webkit.org/show_bug.cgi?id=31184
1346
1347         Remove this error code from PositionError, both for use from C++ code and from the JS object.
1348
1349         Updated fast/dom/Geolocation/error.html to test this.
1350
1351         * page/PositionError.h: Modified.
1352         (WebCore::PositionError::): Remove ErrorCode::UNKNOWN_ERROR.
1353         * page/PositionError.idl: Modified. Remove UNKNOWN_ERROR constant.
1354         * page/Geolocation.cpp: Modified.
1355         (WebCore::Geolocation::startRequest): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
1356         * platform/gtk/GeolocationServiceGtk.cpp: Modified.
1357         (WebCore::GeolocationServiceGtk::startUpdating): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
1358
1359 2009-11-06  Dirk Schulze  <krit@webkit.org>
1360
1361         Reviewed by Nikolas Zimmermann.
1362
1363         feMorphology filter is not implemented
1364         [https://bugs.webkit.org/show_bug.cgi?id=5863]
1365
1366         The Implementation of feMorphology.
1367         
1368         Test: We have allready a test for feMorphology
1369               svg/W3C-SVG-1.1/filters-morph-01-f.svg
1370
1371         * svg/graphics/filters/SVGFEMorphology.cpp:
1372         (WebCore::FEMorphology::apply):
1373
1374 2009-11-06  Steve Block  <steveblock@google.com>
1375
1376         Reviewed by Eric Seidel.
1377
1378         V8DOMWindowCustom.cpp is missing WEB_SOCKETS guard on include.
1379         https://bugs.webkit.org/show_bug.cgi?id=31209
1380
1381         Build fix only. No new tests possible.
1382
1383         * bindings/v8/custom/V8DOMWindowCustom.cpp: Modified. Added WEB_SOCKETS guard on inclue of WebSockets.h.
1384
1385 2009-11-06  Drew Wilson  <atwilson@chromium.org>
1386
1387         Reviewed by David Levin.
1388
1389         V8 bindings do not support SharedWorkers as event targets
1390         https://bugs.webkit.org/show_bug.cgi?id=31199
1391
1392         No new tests because existing layout tests suffice (they currently
1393         crash on Chromium)
1394
1395         * bindings/v8/V8DOMWrapper.cpp:
1396         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1397         Added clause to create a DOM wrapper for SharedWorkers.
1398
1399 2009-11-06  Anton Muhin  <antonm@chromium.org>
1400
1401         Reviewed by Adam Barth.
1402
1403         Do not unnecessarly synchronzie in weak reference callbacks.
1404         https://bugs.webkit.org/show_bug.cgi?id=31191
1405
1406         * bindings/v8/DOMData.h:
1407         (WebCore::DOMData::handleWeakObject):
1408
1409 2009-11-06  Alexander Pavlov  <apavlov@chromium.org>
1410
1411         Reviewed by Pavel Feldman.
1412
1413         Fix resource content search.
1414         https://bugs.webkit.org/show_bug.cgi?id=31202
1415
1416         * inspector/front-end/AbstractTimelinePanel.js:
1417         (WebInspector.AbstractTimelinePanel.prototype.refresh):
1418         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
1419         * inspector/front-end/TimelinePanel.js:
1420         (WebInspector.TimelineGraph.prototype.refresh):
1421
1422 2009-11-05  Yuta Kitamura  <yutak@chromium.org>
1423
1424         Reviewed by Eric Seidel.
1425
1426         Fix ASSERT(currentStyle = renderStyle()).
1427         https://bugs.webkit.org/show_bug.cgi?id=31152
1428
1429         * dom/Element.cpp:
1430         (WebCore::Element::pseudoStyleCacheIsInvalid): We should have used "==" instead of "=".
1431
1432 2009-11-05  Alpha Lam  <hclam@chromium.org>
1433
1434         Revert 50562 because it broke Chromium. Not reviewed since this is a build fix and revert.
1435
1436         * bindings/v8/V8GCController.cpp:
1437         (WebCore::V8GCController::gcEpilogue):
1438         * bindings/v8/V8GCController.h:
1439         * bindings/v8/V8Proxy.cpp:
1440         (WebCore::V8Proxy::evaluate):
1441         (WebCore::V8Proxy::runScript):
1442         (WebCore::V8Proxy::callFunction):
1443
1444 2009-11-05  Adam Barth  <abarth@webkit.org>
1445
1446         Reviewed by Sam Weinig.
1447
1448         Cross-domain access to stylesheet text should not be allowed
1449         https://bugs.webkit.org/show_bug.cgi?id=20527
1450
1451         Check whether whether the current document can read the cssRules from
1452         the style sheet.  Firefox throws a security error here, but we return
1453         null instead because that's what we usually do in these cases.
1454
1455         Test: http/tests/security/cannot-read-cssrules-redirect.html
1456               http/tests/security/cannot-read-cssrules.html
1457
1458         * css/CSSStyleSheet.cpp:
1459         (WebCore::CSSStyleSheet::cssRules):
1460
1461 2009-11-05  Steve Block  <steveblock@google.com>
1462
1463         Reviewed by Eric Seidel.
1464
1465         If the Geolocation service fails to start, invoke the error callback asynchronously.
1466         https://bugs.webkit.org/show_bug.cgi?id=28276
1467
1468         All Geolocation callbacks must be invoked asynchronously.
1469         See http://www.w3.org/TR/geolocation-API/#geolocation_interface
1470
1471         No new tests possible with current LayoutTestController.
1472
1473         * page/Geolocation.cpp:
1474         (WebCore::Geolocation::getCurrentPosition): Modified. Asserts that startRequest returned a notifier.
1475         (WebCore::Geolocation::watchPosition): Modified. Asserts that startRequest returned a notifier.
1476         (WebCore::Geolocation::startRequest): Modified. If the Geolocation service fails to start, set a fatal error on the notifier.
1477
1478 2009-11-05  Chris Jerdonek  <chris.jerdonek@gmail.com>
1479
1480         Reviewed by Eric Seidel.
1481
1482         Removed the "this is part of the KDE project" comments from 
1483         all *.h, *.cpp, *.idl, and *.pm files.
1484         
1485         https://bugs.webkit.org/show_bug.cgi?id=31167
1486         
1487         The maintenance and architecture page in the project wiki lists
1488         this as a task.
1489         
1490         This change includes no changes or additions to test cases 
1491         since the change affects only comments.
1492
1493         * bindings/scripts/CodeGeneratorV8.pm:
1494         * bindings/scripts/IDLParser.pm:
1495         * bindings/scripts/IDLStructure.pm:
1496         * css/CSSInheritedValue.cpp:
1497         * css/CSSInitialValue.cpp:
1498         * css/CSSMediaRule.cpp:
1499         * css/CSSNamespace.h:
1500         * css/CSSProperty.cpp:
1501         * css/CSSProperty.h:
1502         * css/CSSRuleList.cpp:
1503         * css/CSSRuleList.h:
1504         * css/CSSSelector.h:
1505         * css/CSSValueList.cpp:
1506         * css/FontValue.cpp:
1507         * css/MediaFeatureNames.cpp:
1508         * css/MediaFeatureNames.h:
1509         * css/Pair.h:
1510         * css/SVGCSSStyleSelector.cpp:
1511         * css/ShadowValue.cpp:
1512         * css/StyleSheet.cpp:
1513         * css/StyleSheetList.cpp:
1514         * css/maketokenizer:
1515         * dom/BeforeUnloadEvent.cpp:
1516         * dom/BeforeUnloadEvent.h:
1517         * dom/CSSMappedAttributeDeclaration.cpp:
1518         * dom/EventNames.cpp:
1519         * dom/EventTarget.cpp:
1520         * dom/MappedAttributeEntry.h:
1521         * dom/MouseRelatedEvent.h:
1522         * dom/RangeException.h:
1523         * dom/StyleElement.h:
1524         * dom/Tokenizer.h:
1525         * html/HTMLHeadElement.h:
1526         * html/HTMLHeadingElement.cpp:
1527         * html/HTMLHeadingElement.h:
1528         * html/HTMLHtmlElement.h:
1529         * html/HTMLImageLoader.h:
1530         * html/HTMLMetaElement.h:
1531         * html/HTMLModElement.cpp:
1532         * html/HTMLModElement.h:
1533         * html/HTMLOptionsCollection.cpp:
1534         * html/HTMLPlugInElement.cpp:
1535         * html/HTMLPreElement.cpp:
1536         * html/HTMLPreElement.h:
1537         * html/HTMLTableCellElement.cpp:
1538         * html/HTMLTableCellElement.h:
1539         * html/HTMLTableColElement.cpp:
1540         * html/HTMLTableColElement.h:
1541         * html/HTMLTablePartElement.cpp:
1542         * html/HTMLTablePartElement.h:
1543         * html/HTMLTitleElement.h:
1544         * page/MouseEventWithHitTestResults.h:
1545         * platform/StaticConstructors.h:
1546         * platform/text/AtomicStringImpl.h:
1547         * platform/text/qt/TextBreakIteratorQt.cpp:
1548         * rendering/AutoTableLayout.h:
1549         * rendering/CounterNode.cpp:
1550         * rendering/EllipsisBox.cpp:
1551         * rendering/EllipsisBox.h:
1552         * rendering/FixedTableLayout.cpp:
1553         * rendering/FixedTableLayout.h:
1554         * rendering/HitTestRequest.h:
1555         * rendering/HitTestResult.h:
1556         * rendering/InlineRunBox.h:
1557         * rendering/PointerEventsHitRules.cpp:
1558         * rendering/PointerEventsHitRules.h:
1559         * rendering/RenderBR.cpp:
1560         * rendering/RenderBR.h:
1561         * rendering/RenderButton.cpp:
1562         * rendering/RenderButton.h:
1563         * rendering/RenderFieldset.cpp:
1564         * rendering/RenderFrameSet.cpp:
1565         * rendering/RenderListItem.cpp:
1566         * rendering/RenderTableRow.cpp:
1567         * rendering/RenderView.h:
1568         * rendering/RootInlineBox.h:
1569         * rendering/SVGInlineTextBox.cpp:
1570         * rendering/SVGInlineTextBox.h:
1571         * rendering/TableLayout.h:
1572         * rendering/break_lines.h:
1573         * rendering/style/SVGRenderStyle.cpp:
1574         * rendering/style/SVGRenderStyle.h:
1575         * rendering/style/SVGRenderStyleDefs.cpp:
1576         * rendering/style/SVGRenderStyleDefs.h:
1577         * svg/GradientAttributes.h:
1578         * svg/LinearGradientAttributes.h:
1579         * svg/PatternAttributes.h:
1580         * svg/RadialGradientAttributes.h:
1581         * svg/SVGAElement.cpp:
1582         * svg/SVGAngle.idl:
1583         * svg/SVGAnimateColorElement.cpp:
1584         * svg/SVGAnimateColorElement.h:
1585         * svg/SVGAnimateElement.cpp:
1586         * svg/SVGAnimateElement.h:
1587         * svg/SVGAnimateTransformElement.h:
1588         * svg/SVGAnimatedPathData.cpp:
1589         * svg/SVGAnimatedPathData.h:
1590         * svg/SVGAnimatedPoints.cpp:
1591         * svg/SVGAnimatedPoints.h:
1592         * svg/SVGAnimationElement.cpp:
1593         * svg/SVGCircleElement.cpp:
1594         * svg/SVGClipPathElement.cpp:
1595         * svg/SVGColor.cpp:
1596         * svg/SVGColor.idl:
1597         * svg/SVGComponentTransferFunctionElement.cpp:
1598         * svg/SVGComponentTransferFunctionElement.h:
1599         * svg/SVGCursorElement.cpp:
1600         * svg/SVGDefsElement.cpp:
1601         * svg/SVGDescElement.cpp:
1602         * svg/SVGDescElement.h:
1603         * svg/SVGDocument.idl:
1604         * svg/SVGElement.idl:
1605         * svg/SVGElementInstanceList.cpp:
1606         * svg/SVGElementInstanceList.h:
1607         * svg/SVGEllipseElement.cpp:
1608         * svg/SVGExternalResourcesRequired.cpp:
1609         * svg/SVGFEBlendElement.cpp:
1610         * svg/SVGFEBlendElement.h:
1611         * svg/SVGFEColorMatrixElement.cpp:
1612         * svg/SVGFEColorMatrixElement.h:
1613         * svg/SVGFEComponentTransferElement.cpp:
1614         * svg/SVGFEComponentTransferElement.h:
1615         * svg/SVGFECompositeElement.cpp:
1616         * svg/SVGFECompositeElement.h:
1617         * svg/SVGFEFloodElement.cpp:
1618         * svg/SVGFEFloodElement.h:
1619         * svg/SVGFEFuncAElement.cpp:
1620         * svg/SVGFEFuncAElement.h:
1621         * svg/SVGFEFuncBElement.cpp:
1622         * svg/SVGFEFuncBElement.h:
1623         * svg/SVGFEFuncGElement.cpp:
1624         * svg/SVGFEFuncGElement.h:
1625         * svg/SVGFEFuncRElement.cpp:
1626         * svg/SVGFEFuncRElement.h:
1627         * svg/SVGFEGaussianBlurElement.cpp:
1628         * svg/SVGFEGaussianBlurElement.h:
1629         * svg/SVGFEImageElement.cpp:
1630         * svg/SVGFEMergeElement.cpp:
1631         * svg/SVGFEMergeElement.h:
1632         * svg/SVGFEMergeNodeElement.cpp:
1633         * svg/SVGFEOffsetElement.cpp:
1634         * svg/SVGFEOffsetElement.h:
1635         * svg/SVGFETileElement.cpp:
1636         * svg/SVGFETileElement.h:
1637         * svg/SVGFETurbulenceElement.cpp:
1638         * svg/SVGFETurbulenceElement.h:
1639         * svg/SVGFilterElement.cpp:
1640         * svg/SVGGElement.cpp:
1641         * svg/SVGGradientElement.cpp:
1642         * svg/SVGHKernElement.idl:
1643         * svg/SVGLangSpace.cpp:
1644         * svg/SVGLangSpace.h:
1645         * svg/SVGLength.cpp:
1646         * svg/SVGLength.h:
1647         * svg/SVGLength.idl:
1648         * svg/SVGLengthList.cpp:
1649         * svg/SVGLengthList.h:
1650         * svg/SVGLineElement.cpp:
1651         * svg/SVGLinearGradientElement.h:
1652         * svg/SVGList.h:
1653         * svg/SVGListTraits.h:
1654         * svg/SVGLocatable.h:
1655         * svg/SVGMaskElement.cpp:
1656         * svg/SVGMatrix.idl:
1657         * svg/SVGMetadataElement.cpp:
1658         * svg/SVGMetadataElement.h:
1659         * svg/SVGMetadataElement.idl:
1660         * svg/SVGNumber.idl:
1661         * svg/SVGNumberList.cpp:
1662         * svg/SVGNumberList.h:
1663         * svg/SVGPaint.cpp:
1664         * svg/SVGPathElement.cpp:
1665         * svg/SVGPathSeg.h:
1666         * svg/SVGPathSegArc.cpp:
1667         * svg/SVGPathSegArc.h:
1668         * svg/SVGPathSegClosePath.cpp:
1669         * svg/SVGPathSegClosePath.h:
1670         * svg/SVGPathSegCurvetoCubic.cpp:
1671         * svg/SVGPathSegCurvetoCubic.h:
1672         * svg/SVGPathSegCurvetoCubicSmooth.cpp:
1673         * svg/SVGPathSegCurvetoCubicSmooth.h:
1674         * svg/SVGPathSegCurvetoQuadratic.cpp:
1675         * svg/SVGPathSegCurvetoQuadratic.h:
1676         * svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1677         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
1678         * svg/SVGPathSegLineto.cpp:
1679         * svg/SVGPathSegLineto.h:
1680         * svg/SVGPathSegLinetoHorizontal.cpp:
1681         * svg/SVGPathSegLinetoHorizontal.h:
1682         * svg/SVGPathSegLinetoVertical.cpp:
1683         * svg/SVGPathSegLinetoVertical.h:
1684         * svg/SVGPathSegMoveto.cpp:
1685         * svg/SVGPathSegMoveto.h:
1686         * svg/SVGPatternElement.cpp:
1687         * svg/SVGPoint.idl:
1688         * svg/SVGPointList.cpp:
1689         * svg/SVGPointList.h:
1690         * svg/SVGPolyElement.cpp:
1691         * svg/SVGPolygonElement.cpp:
1692         * svg/SVGPolygonElement.h:
1693         * svg/SVGPolylineElement.cpp:
1694         * svg/SVGPolylineElement.h:
1695         * svg/SVGPreserveAspectRatio.cpp:
1696         * svg/SVGPreserveAspectRatio.h:
1697         * svg/SVGRadialGradientElement.h:
1698         * svg/SVGRect.idl:
1699         * svg/SVGRectElement.cpp:
1700         * svg/SVGRenderingIntent.h:
1701         * svg/SVGSVGElement.idl:
1702         * svg/SVGScriptElement.cpp:
1703         * svg/SVGSetElement.cpp:
1704         * svg/SVGSetElement.h:
1705         * svg/SVGStopElement.cpp:
1706         * svg/SVGStringList.cpp:
1707         * svg/SVGStringList.h:
1708         * svg/SVGStylable.cpp:
1709         * svg/SVGStylable.h:
1710         * svg/SVGStyleElement.cpp:
1711         * svg/SVGStyleElement.h:
1712         * svg/SVGStyledElement.h:
1713         * svg/SVGStyledLocatableElement.cpp:
1714         * svg/SVGStyledLocatableElement.h:
1715         * svg/SVGStyledTransformableElement.cpp:
1716         * svg/SVGStyledTransformableElement.h:
1717         * svg/SVGSwitchElement.cpp:
1718         * svg/SVGSymbolElement.cpp:
1719         * svg/SVGTRefElement.cpp:
1720         * svg/SVGTSpanElement.cpp:
1721         * svg/SVGTSpanElement.h:
1722         * svg/SVGTests.h:
1723         * svg/SVGTextElement.cpp:
1724         * svg/SVGTextElement.h:
1725         * svg/SVGTextPathElement.cpp:
1726         * svg/SVGTextPositioningElement.cpp:
1727         * svg/SVGTextPositioningElement.h:
1728         * svg/SVGTitleElement.cpp:
1729         * svg/SVGTitleElement.h:
1730         * svg/SVGTransform.cpp:
1731         * svg/SVGTransform.h:
1732         * svg/SVGTransform.idl:
1733         * svg/SVGTransformList.cpp:
1734         * svg/SVGTransformList.h:
1735         * svg/SVGTransformable.h:
1736         * svg/SVGURIReference.h:
1737         * svg/SVGUnitTypes.h:
1738         * svg/SVGUseElement.cpp:
1739         * svg/SVGViewElement.cpp:
1740         * svg/SVGZoomAndPan.cpp:
1741         * svg/SVGZoomAndPan.h:
1742         * svg/SVGZoomEvent.cpp:
1743
1744 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
1745
1746         Reviewed by Dimitri Glazkov.
1747
1748         REGRESSION Clean up security origin usage in DOM Storage.
1749         https://bugs.webkit.org/show_bug.cgi?id=31188
1750
1751         Clean up security origin usage in DOM Storage.  This fixes a bug in my
1752         refactoring here: https://bugs.webkit.org/show_bug.cgi?id=31149
1753
1754         Instead of having StorageAreaSync's constructor (which is called in the
1755         constructor for StorageAreaImpl) calling a method on StoargeAreaImpl to get the
1756         database identifier, simply have StorageAreaImpl pass the identifier into
1757         StorageAreaSync.
1758
1759         No test because there's no change in externally observable behavior.
1760
1761         * storage/StorageAreaImpl.cpp:
1762         (WebCore::StorageAreaImpl::StorageAreaImpl):
1763         * storage/StorageAreaImpl.h:
1764         * storage/StorageAreaSync.cpp:
1765         (WebCore::StorageAreaSync::create):
1766         (WebCore::StorageAreaSync::StorageAreaSync):
1767         * storage/StorageAreaSync.h:
1768
1769 2009-11-05  Scott Violet  <sky@google.com>
1770
1771         Reviewed by Dimitri Glazkov.
1772
1773         Need notification of scrolling frame
1774         https://bugs.webkit.org/show_bug.cgi?id=31145
1775
1776         Adds FrameLoaderClient::didChangeScrollOffset that is called when
1777         the frame scrolls. This will be used to know when history state
1778         needs to be updated.
1779
1780         * loader/FrameLoaderClient.h:
1781         (WebCore::FrameLoaderClient::didChangeScrollOffset):
1782         * page/FrameView.cpp:
1783         (WebCore::FrameView::valueChanged):
1784
1785 2009-11-05  Kenneth Russell  <kbr@google.com>
1786
1787         Reviewed by Dimitri Glazkov.
1788
1789         [V8] Update bindings to use new API for external arrays
1790         https://bugs.webkit.org/show_bug.cgi?id=31181
1791
1792         No new tests; covered by existing WebGL tests.
1793
1794         * bindings/v8/V8DOMWrapper.cpp:
1795         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
1796         (WebCore::V8DOMWrapper::getTemplate):
1797         (WebCore::V8DOMWrapper::convertToV8Object):
1798         * bindings/v8/V8DOMWrapper.h:
1799         * bindings/v8/custom/V8CanvasArrayCustom.h:
1800         (WebCore::constructCanvasArray):
1801
1802 2009-11-05  Alpha Lam  <hclam@chromium.org>
1803
1804         Not reviewed, Chromium build fix.
1805
1806         50561 introduces a custom method for SVGMatrix, we need to implement
1807         this in V8.
1808
1809         * bindings/v8/custom/V8CustomBinding.h:
1810         Adding definition for V8SVGMatrixMultiply.
1811         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
1812         (WebCore::CALLBACK_FUNC_DECL):
1813         Implement V8SVGMatrixMultiply according to the same method in JSC.
1814
1815 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
1816
1817         Revert 50569 since it broke QT.  Build fix and just a revert, so no review.
1818
1819         * page/DOMWindow.cpp:
1820         (WebCore::DOMWindow::sessionStorage):
1821         * page/Settings.cpp:
1822         (WebCore::Settings::Settings):
1823         (WebCore::Settings::setSessionStorageEnabled):
1824         * page/Settings.h:
1825         (WebCore::Settings::sessionStorageEnabled):
1826
1827 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
1828
1829         Reviewed by Timothy Hatcher.
1830
1831         REGRESSION: Web Inspector doesn't show CSS rules properly for iframes
1832
1833         https://bugs.webkit.org/show_bug.cgi?id=30884
1834
1835         Test: inspector/styles-iframe.html
1836
1837         * inspector/front-end/DOMAgent.js:
1838         (WebInspector.DOMNode):
1839         * inspector/front-end/InjectedScript.js:
1840         (InjectedScript.getStyles):
1841         (InjectedScript.getComputedStyle):
1842         (InjectedScript.addStyleSelector):
1843         * inspector/front-end/TestController.js:
1844         (WebInspector.TestController.prototype.notifyDone):
1845         (WebInspector.TestController.prototype.runAfterPendingDispatches):
1846         (WebInspector.evaluateForTestInFrontend.invokeMethod):
1847         (WebInspector.evaluateForTestInFrontend):
1848
1849 2009-11-05  Vitaly Repeshko  <vitalyr@chromium.org>
1850
1851         Reviewed by Geoffrey Garen and Dimitri Glazkov.
1852
1853         Rehashing of EventListenerMap leads to loss of EvenListenerList.
1854         https://bugs.webkit.org/show_bug.cgi?id=31027
1855
1856         Tested by new fast/events/event-listener-map-rehash-crash.html.
1857
1858         EventListenerMap modified to store pointers to listener vectors:
1859         * dom/EventTarget.cpp:
1860         (WebCore::EventTargetData::~EventTargetData):
1861         (WebCore::EventTarget::addEventListener):
1862         (WebCore::EventTarget::removeEventListener):
1863         (WebCore::EventTarget::fireEventListeners):
1864         (WebCore::EventTarget::getEventListeners):
1865         (WebCore::EventTarget::removeAllEventListeners):
1866         * dom/EventTarget.h:
1867
1868         Usages updated after interface changes:
1869         * inspector/InspectorDOMAgent.cpp:
1870         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1871         * svg/SVGUseElement.cpp:
1872         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
1873
1874 2009-11-05  Dan Kegel  <dank@chromium.org>
1875
1876         Reviewed by Dmitri Titov.
1877
1878         Add missing initialization for m_createdByParser.
1879         https://bugs.webkit.org/show_bug.cgi?id=31089
1880
1881         Test: fast/dom/beforeload/pi-before-load.xhtml in Valgrind
1882
1883         * dom/ProcessingInstruction.cpp:
1884         (WebCore::ProcessingInstruction::ProcessingInstruction):
1885
1886 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
1887
1888         Reviewed by Adam Barth.
1889
1890         DOM Storage runtime flag changes
1891         https://bugs.webkit.org/show_bug.cgi?id=30602
1892
1893         Part 2/2.
1894
1895         Revert my changes to Settings and instead implement DOM Storage enabling via
1896         the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240
1897
1898         This stuff was (intentionally) never exposed to web pages or DRT, so there's no
1899         LayoutTest visible changes and thus no tests.
1900
1901         * bindings/v8/custom/V8CustomBinding.h:
1902         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1903         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1904         * page/DOMWindow.cpp:
1905         (WebCore::DOMWindow::sessionStorage):
1906         * page/DOMWindow.idl:
1907         * page/Settings.cpp:
1908         (WebCore::Settings::Settings):
1909         * page/Settings.h:
1910         * storage/Storage.cpp:
1911         (WebCore::Storage::setLocalStorageAvailable):
1912         (WebCore::Storage::localStorageAvailable):
1913         (WebCore::Storage::setSessionStorageAvailable):
1914         (WebCore::Storage::sessionStorageAvailable):
1915         * storage/Storage.h:
1916
1917 2009-11-05  Jian Li  <jianli@chromium.org>
1918
1919         Reviewed by Pavel Feldman.
1920
1921         Bug 31108 - [V8] REGRESSION: Pause on exception is broken
1922         https://bugs.webkit.org/show_bug.cgi?id=31108
1923
1924         * bindings/v8/V8AbstractEventListener.cpp:
1925         (WebCore::V8AbstractEventListener::invokeEventHandler):
1926         * bindings/v8/V8Utilities.cpp:
1927         (WebCore::reportException):
1928
1929 2009-11-05  Jian Li  <jianli@chromium.org>
1930
1931         Reviewed by Dmitri Titov.
1932
1933         We should not bubble up events if we drag something to an iframe that
1934         has an invalid source.
1935         https://bugs.webkit.org/show_bug.cgi?id=30469
1936
1937         Test: http/tests/misc/bubble-drag-events.html
1938
1939         * page/EventHandler.cpp:
1940         (WebCore::EventHandler::handleDragAndDropForTarget):
1941         (WebCore::EventHandler::updateDragAndDrop):
1942         (WebCore::EventHandler::cancelDragAndDrop):
1943         (WebCore::EventHandler::performDragAndDrop):
1944         * page/EventHandler.h:
1945         (WebCore::EventHandler::):
1946
1947 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
1948
1949         Reviewed by Timothy Hatcher.
1950
1951         Web Inspector: speed up Timelines Clear by a factor of thousands.
1952
1953         https://bugs.webkit.org/show_bug.cgi?id=31160
1954
1955         * inspector/front-end/utilities.js:
1956         (Element.prototype.removeChildren):
1957
1958 2009-11-05  Anton Muhin  <antonm@chromium.org>
1959
1960         Reviewed by Adam Barth.
1961
1962         If high memory usage is detected, hint to V8 that it might be due
1963         to external objects retained by V8 objects.
1964         https://bugs.webkit.org/show_bug.cgi?id=31051
1965
1966         * bindings/v8/V8GCController.cpp:
1967         (WebCore::GetMemoryUsageInMB):
1968         (WebCore::V8GCController::gcEpilogue):
1969         (WebCore::V8GCController::checkMemoryUsage):
1970         * bindings/v8/V8GCController.h:
1971         * bindings/v8/V8Proxy.cpp:
1972         (WebCore::V8Proxy::evaluate):
1973         (WebCore::V8Proxy::runScript):
1974         (WebCore::V8Proxy::callFunction):
1975
1976 2009-11-05  Jeff Schiller  <codedread@gmail.com>
1977
1978         Reviewed by Simon Fraser.
1979
1980         Correct order of matrix multiplication for SVGMatrix.
1981         https://bugs.webkit.org/show_bug.cgi?id=16062
1982
1983         Test: svg/dom/SVGMatrix-interface.xhtml
1984
1985         * bindings/js/JSSVGMatrixCustom.cpp:
1986         (WebCore::JSSVGMatrix::multiply):
1987         * svg/SVGMatrix.idl:
1988
1989 2009-11-04  Pavel Feldman  <pfeldman@chromium.org>
1990
1991         Reviewed by Timothy Hatcher.
1992
1993         Web Inspector: Make resource-related records in timeline
1994         actually take some time.
1995
1996         https://bugs.webkit.org/show_bug.cgi?id=31139
1997
1998         * English.lproj/localizedStrings.js:
1999         * inspector/front-end/TimelinePanel.js:
2000         (WebInspector.TimelinePanel):
2001         (WebInspector.TimelinePanel.prototype._formatRecord):
2002         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2003         (WebInspector.TimelinePanel.prototype.reset):
2004
2005 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
2006
2007         Reviewed by Darin Fisher.
2008
2009         Simplify LocalStorageThread
2010         https://bugs.webkit.org/show_bug.cgi?id=30935
2011
2012         This is a re-submit of 50519.  LocalStorageTask should have never been ref
2013         counted.  I've removed that and switched a PassRefPtr over to a PassOwnPtr.
2014
2015         On LocalStoragethread: Remove reference counting. Get rid of locking. Make some
2016         of the method names a bit more clear. Assert proper thread usage. Join rather
2017         than detaching the thread and doing an ad-hoc form of join. Avoid touching
2018         variables on the background thread when simple to do so.  Also create a generic
2019         scheduleTask function rather than one for each task.
2020
2021         No behavior should have changed.
2022
2023         * storage/LocalStorageTask.h:
2024         * storage/LocalStorageThread.cpp:
2025         (WebCore::LocalStorageThread::create):
2026         (WebCore::LocalStorageThread::LocalStorageThread):
2027         (WebCore::LocalStorageThread::~LocalStorageThread):
2028         (WebCore::LocalStorageThread::start):
2029         (WebCore::LocalStorageThread::threadEntryPointCallback):
2030         (WebCore::LocalStorageThread::threadEntryPoint):
2031         (WebCore::LocalStorageThread::scheduleTask):
2032         (WebCore::LocalStorageThread::terminate):
2033         (WebCore::LocalStorageThread::performTerminate):
2034         * storage/LocalStorageThread.h:
2035         * storage/StorageSyncManager.cpp:
2036         (WebCore::StorageSyncManager::StorageSyncManager):
2037         (WebCore::StorageSyncManager::~StorageSyncManager):
2038         (WebCore::StorageSyncManager::scheduleImport):
2039         (WebCore::StorageSyncManager::scheduleSync):
2040         * storage/StorageSyncManager.h:
2041
2042 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
2043
2044         Reviewed by Darin Fisher.
2045
2046         Calling databaseIdentifier on LocalStorage's background thread is not safe.
2047         https://bugs.webkit.org/show_bug.cgi?id=31149
2048
2049         Calling SecurityOrigin::databaseIdentifier on LocalStorage's background thread
2050         is not safe.  databaseIdentifier does a bunch of string concatenation which
2051         ref-counts StringImpls in some cases.  This was caught by valgrind thread
2052         sanitizer: http://code.google.com/p/chromium/issues/detail?id=25645
2053
2054         There's no way to test for such racyness, unfortunately.
2055
2056         * storage/StorageAreaSync.cpp:
2057         (WebCore::StorageAreaSync::StorageAreaSync):
2058         (WebCore::StorageAreaSync::performImport):
2059         * storage/StorageAreaSync.h:
2060         * storage/StorageSyncManager.cpp:
2061         (WebCore::StorageSyncManager::fullDatabaseFilename):
2062         * storage/StorageSyncManager.h:
2063
2064 2009-11-03  Jeremy Orlow  <jorlow@chromium.org>
2065
2066         Reviewed by Darin Fisher.
2067
2068         Clean up StorageAreaSync
2069         https://bugs.webkit.org/show_bug.cgi?id=31100
2070
2071         Major fixes: Break the ref count cycle for StorageArea on the main
2072         thread, not the background thread since the latter is not safe.
2073         Length() needs to block on the import completing.
2074
2075         Small fixes: setItem needs to handle the copy on write case even if it
2076         has an exception.  setItem and removeItem should just bail from the
2077         the function if the value hasn't changed rather than wrapping the end
2078         in an if block.  Clear should only send an event if it wasn't already
2079         cleared.  StorageAreaSync should assert that the final sync was
2080         scheduled.
2081
2082         * storage/StorageAreaImpl.cpp:
2083         (WebCore::StorageAreaImpl::length):
2084           Forgot to block on the import.
2085         (WebCore::StorageAreaImpl::key):
2086         (WebCore::StorageAreaImpl::setItem):
2087           Handle the copy on write case even when there's an exception.
2088         (WebCore::StorageAreaImpl::removeItem):
2089         (WebCore::StorageAreaImpl::clear):
2090         * storage/StorageAreaSync.cpp:
2091         (WebCore::StorageAreaSync::~StorageAreaSync):
2092         (WebCore::StorageAreaSync::scheduleFinalSync):
2093         (WebCore::StorageAreaSync::performImport):
2094         (WebCore::StorageAreaSync::markImported):
2095         (WebCore::StorageAreaSync::blockUntilImportComplete):
2096         * storage/StorageAreaSync.h:
2097
2098 2009-11-05  Zoltan Horvath  <zoltan@webkit.org>
2099
2100         Reviewed by Eric Seidel.
2101
2102         Allow custom memory allocation control for WebCore's CachedResource
2103         https://bugs.webkit.org/show_bug.cgi?id=31114
2104
2105         Inherits CachedResource class from Noncopyable because its (its child
2106         class) CachedCSSStyleSheet instantiated by 'new' in WebCore/loader/Cache.cpp:75 
2107         and it is no need to be copyable.
2108
2109         * loader/CachedResource.h:
2110
2111 2009-11-04  Mark Mentovai  <mark@chromium.org>
2112
2113         Reviewed by Mark Rowe.
2114
2115         Separate the difference between HAVE(CGINTERPOLATION_MEDIUM), which
2116         is true when building on 10.6 or later, and USE(CGINTERPOLATION_MEDIUM)
2117         which is true when targeting 10.6 or later.
2118
2119         HAVE(CGINTERPOLATION_MEDIUM) indicates that kCGInterpolationMedium
2120         is present in the CGInterpolationQuality enum, and must be handled
2121         by a switch that has cases for each enumerated value.
2122
2123         USE(CGINTERPOLATION_MEDIUM) indicates that the product will only run
2124         on 10.6 or later, and that CoreGraphics will understand when
2125         InterpolationMedium is mapped to kCGInterpolationMedium at runtime.
2126
2127         * platform/graphics/cg/GraphicsContextCG.cpp:
2128         (WebCore::GraphicsContext::setImageInterpolationQuality):
2129         (WebCore::GraphicsContext::imageInterpolationQuality):
2130
2131 2009-11-04  Dan Kegel  <dank@chromium.org>
2132
2133         Reviewed by Alexey Proskuryakov.
2134
2135         Fix buffer overrun in WebCore::Page::userStyleSheetLocationChanged()
2136         https://bugs.webkit.org/show_bug.cgi?id=31138
2137
2138         Test: LayoutTests/platform/mac/fast/loader/user-stylesheet-fast-path.html in Valgrind
2139
2140         * page/Page.cpp:
2141         (WebCore::Page::userStyleSheetLocationChanged):
2142
2143 2009-11-04  Timothy Hatcher  <timothy@apple.com>
2144
2145         Update the Web Inspector Timeline panel to better match the mock-up.
2146
2147         https://bugs.webkit.org/show_bug.cgi?id=31150
2148
2149         Reviewed by Pavel Feldman.
2150
2151         * inspector/front-end/TimelinePanel.js:
2152         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2153         (WebInspector.TimelinePanel.prototype._dragWindow):
2154         (WebInspector.TimelinePanel.prototype._resizeWindowLeft):
2155         (WebInspector.TimelinePanel.prototype._resizeWindowRight):
2156         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
2157         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
2158         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
2159         (WebInspector.TimelineCategoryGraph):
2160         * inspector/front-end/inspector.css:
2161
2162 2009-11-05  Justin Garcia  <justin.garcia@apple.com>
2163
2164         Reviewed by Adele Peterson.
2165
2166         https://bugs.webkit.org/show_bug.cgi?id=25439
2167         Deleting when in front of a block image removes character from previous paragraph
2168
2169         Added editing/deleting/25439-{1,2,3}.html
2170
2171         * editing/DeleteSelectionCommand.cpp:
2172         (WebCore::DeleteSelectionCommand::mergeParagraphs): Block images, tables and HRs cannot 
2173         be made inline with other content.  Instead of merging, just move the caret to just before 
2174         the selection we deleted.
2175         * editing/htmlediting.cpp:
2176         (WebCore::firstInSpecialElement): Added a FIXME.  This function begins iterating up from pos.node(), which 
2177         doesn't necessarily contain pos (suppose pos was [img, 0]).
2178         (WebCore::lastInSpecialElement): Ditto.
2179         (WebCore::isRenderedAsNonInlineTableImageOrHR): Moved from visible_units.cpp.  Added a check for non-inline images.
2180         * editing/htmlediting.h:
2181         * editing/visible_units.cpp:
2182         (WebCore::startOfParagraph): Use moved/renamed function.  Removed FIXME.  The problem causing 
2183         5027702 is now squarely in first/lastInSpecialElement
2184         (WebCore::endOfParagraph): Ditto.
2185         
2186 2009-11-04  Enrica Casucci  <enrica@apple.com>
2187
2188         Reviewed by Adele Peterson.
2189
2190         Hang in Mail on attempting to change indent level.
2191         <rdar://problem/7131805>
2192         https://bugs.webkit.org/show_bug.cgi?id=31127
2193
2194         The hang was caused by an infinite loop inside outdentRegion.
2195         The code did not account for the fact that, when a list item
2196         contains multiple paragraphs, outdent moves all paragraphs at
2197         once, invalidating some of the positions we keep track of in the loop.
2198         Some code refactoring has also been done to minimize duplicated code.
2199         
2200         Test: editing/execCommand/outdent-multiparagraph-list.html
2201
2202         * editing/IndentOutdentCommand.cpp:
2203         (WebCore::IndentOutdentCommand::indentRegion): Moved code in common with
2204         outdentRegion to doApply.
2205         (WebCore::IndentOutdentCommand::outdentRegion): Fixed endless loop.
2206         (WebCore::IndentOutdentCommand::doApply): Some code refactoring.
2207         * editing/IndentOutdentCommand.h: Added VisiblePosition parameters to
2208         indentRegion and outdentRegion.
2209
2210 2009-11-04  Alpha Lam  <hclam@chromium.org>
2211
2212         Reviewed by Eric Carlson.
2213
2214         Volume slider doesn't have a thumb
2215         https://bugs.webkit.org/show_bug.cgi?id=31135
2216
2217         Fixed an incorrect if statement that prevents volume slider
2218         being updated.
2219
2220         The statement checks if the slider value equals to the current
2221         volume value of the media control to avoid updating the volume
2222         slider. Updating the volume slider control shouldn't be within
2223         this condition because we explicitly set them to be equals
2224         during creation of the controls and also when mouse events are
2225         received on the volume control.
2226
2227         No new tests because existing code breaks:
2228         LayoutTests/media/video-volume-slider.html
2229
2230         It should now start passing on Chromium.
2231
2232         * rendering/MediaControlElements.cpp:
2233         (WebCore::MediaControlVolumeSliderElement::update):
2234         Update the volume slider regardless of the current volume value
2235         of the media control.
2236
2237 2009-11-04  Jenn Braithwaite  <jennb@chromium.org>
2238
2239         Reviewed by David Levin.
2240
2241         Need to properly disable applicationCache at runtime
2242         https://bugs.webkit.org/show_bug.cgi?id=30417
2243
2244         Adding applicationCacheEnabled bit to V8 RuntimeEnabledFeatures.
2245
2246         No new exposed functionality, so no new tests.
2247
2248         * bindings/v8/RuntimeEnabledFeatures.cpp:
2249         * bindings/v8/RuntimeEnabledFeatures.h:
2250         (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled):
2251         (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled):
2252         * bindings/v8/custom/V8CustomBinding.h:
2253         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2254         (WebCore::ACCESSOR_RUNTIME_ENABLER):
2255         * page/DOMWindow.idl:
2256
2257 2009-11-04  Alexey Proskuryakov  <ap@apple.com>
2258
2259         Reviewed by Dan Bernstein.
2260
2261         https://bugs.webkit.org/show_bug.cgi?id=31143
2262         Assertion failure in CredentialStorage::set() when proxy credentials are being set
2263
2264         No test, cannot test proxy behavior.
2265
2266         * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::set): Account for the
2267         possibility of null url. Release mode changes are likely inconsequential - e.g. we used to
2268         add "://" to origin set, which is weird, but safe.
2269
2270 2009-11-04  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2271
2272         Reviewed by Timothy Hatcher.
2273
2274         Web Inspector: Leftover Breakpoints in the Sidebar Pane
2275         https://bugs.webkit.org/show_bug.cgi?id=30659
2276
2277         No new tests.
2278
2279         * inspector/front-end/ScriptsPanel.js:
2280         (WebInspector.ScriptsPanel.prototype.addScript):
2281
2282 2009-11-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2283
2284         Reviewed by Timothy Hatcher.
2285
2286         WebInspector: Use a different method to identify the webkit port in
2287         InspectorBackent::platform().
2288         This corrects the inspector expected behavior with Qt on Windows.
2289         https://bugs.webkit.org/show_bug.cgi?id=31116
2290
2291         * inspector/InspectorBackend.cpp:
2292         (WebCore::InspectorBackend::platform):
2293         (WebCore::InspectorBackend::port):
2294         * inspector/InspectorBackend.h:
2295         * inspector/InspectorBackend.idl:
2296         * inspector/front-end/InspectorControllerStub.js:
2297         (.WebInspector.InspectorControllerStub.prototype.port):
2298         * inspector/front-end/inspector.css:
2299         * inspector/front-end/inspector.js:
2300         (WebInspector.loaded):
2301         (WebInspector.toolbarDragStart):
2302
2303 2009-11-04  Benjamin Otte  <otte@gnome.org>
2304
2305         Reviewed by Gustavo Noronha.
2306
2307         Update Cairo requirement to 1.6.
2308
2309         Also remove all conditional code and workarounds for older versions of
2310         Cairo.
2311         In particular, gain image quality by removing the use of
2312         CAIRO_FILTER_NEAREST when rendering images and use the default
2313         bilinear filter instead.
2314         https://bugs.webkit.org/show_bug.cgi?id=19266
2315
2316         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2317         (WebCore::GraphicsContext::clipOut):
2318         * platform/graphics/cairo/ImageCairo.cpp:
2319         (WebCore::BitmapImage::draw):
2320         (WebCore::BitmapImage::drawPattern):
2321         * platform/graphics/cairo/PathCairo.cpp:
2322         (WebCore::Path::isEmpty):
2323         (WebCore::Path::boundingRect):
2324         * platform/gtk/RenderThemeGtk.cpp:
2325         (WebCore::paintMozWidget):
2326
2327 2009-11-04  Kevin Ollivier  <kevino@theolliviers.com>
2328
2329         wx build fix. Restore removed string conversion after cleanup.
2330
2331         * platform/graphics/wx/FontPlatformDataWx.cpp:
2332         (WebCore::FontPlatformData::computeHash):
2333
2334 2009-11-04  Chris Fleizach  <cfleizach@apple.com>
2335
2336         Reviewed by Beth Dakin.
2337
2338         Need to implement ARIA role="combobox"
2339         https://bugs.webkit.org/show_bug.cgi?id=31096
2340
2341         Test: accessibility/aria-combobox.html
2342
2343         * accessibility/AccessibilityObject.h:
2344         (WebCore::AccessibilityObject::isComboBox):
2345         (WebCore::AccessibilityObject::isExpanded):
2346         (WebCore::AccessibilityObject::expandObject):
2347         (WebCore::AccessibilityObject::increment):
2348         (WebCore::AccessibilityObject::decrement):
2349         * accessibility/AccessibilityRenderObject.cpp:
2350         (WebCore::AccessibilityRenderObject::expandObject):
2351         (WebCore::AccessibilityRenderObject::isExpanded):
2352         (WebCore::createARIARoleMap):
2353         * accessibility/AccessibilityRenderObject.h:
2354         * accessibility/mac/AccessibilityObjectWrapper.mm:
2355         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2356         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2357         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
2358         * html/HTMLAttributeNames.in:
2359
2360 2009-11-04  Kelly Norton  <knorton@google.com>
2361
2362         Reviewed by Pavel Feldman.
2363
2364         Fixes naming inconsistencies in TimelineRecordFactory.
2365         https://bugs.webkit.org/show_bug.cgi?id=31132
2366
2367         * inspector/InspectorTimelineAgent.cpp:
2368         (WebCore::InspectorTimelineAgent::willPaint):
2369         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
2370         (WebCore::InspectorTimelineAgent::willLoadXHR):
2371         (WebCore::InspectorTimelineAgent::willEvaluateScript):
2372         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2373         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2374         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2375         * inspector/TimelineRecordFactory.cpp:
2376         (WebCore::TimelineRecordFactory::createXHRReadyStateChangeRecord):
2377         (WebCore::TimelineRecordFactory::createXHRLoadRecord):
2378         (WebCore::TimelineRecordFactory::createEvaluateScriptRecord):
2379         (WebCore::TimelineRecordFactory::createMarkTimelineRecord):
2380         (WebCore::TimelineRecordFactory::createResourceSendRequestRecord):
2381         (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord):
2382         (WebCore::TimelineRecordFactory::createResourceFinishRecord):
2383         (WebCore::TimelineRecordFactory::createPaintRecord):
2384         * inspector/TimelineRecordFactory.h:
2385
2386 2009-11-04  Eric Z. Ayers  <zundel@google.com>
2387
2388         Reviewed by Pavel Feldman.
2389
2390         Followon to bug 31080, which protects Timeline
2391         instrumentation in the case where InspectorTimelineAgent
2392         is enabled or disabled during an event dispatch.
2393         
2394         https://bugs.webkit.org/show_bug.cgi?id=31121
2395
2396         * bindings/v8/V8Proxy.cpp:
2397         (WebCore::V8Proxy::evaluate):
2398         * dom/Document.cpp:
2399         (WebCore::Document::recalcStyle):
2400         * dom/Node.cpp:
2401         (WebCore::Node::dispatchGenericEvent):
2402         * html/HTMLTokenizer.cpp:
2403         (WebCore::HTMLTokenizer::write):
2404         * page/DOMWindow.cpp:
2405         (WebCore::DOMWindow::inspectorTimelineAgent):
2406         (WebCore::DOMWindow::dispatchEvent):
2407         * page/DOMWindow.h:
2408         * page/FrameView.cpp:
2409         (WebCore::FrameView::layout):
2410         (WebCore::FrameView::paintContents):
2411         * xml/XMLHttpRequest.cpp:
2412         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2413
2414 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
2415
2416         Revert 50519 while I work out what went wrong.
2417
2418         * storage/LocalStorageThread.cpp:
2419         (WebCore::LocalStorageThread::create):
2420         (WebCore::LocalStorageThread::LocalStorageThread):
2421         (WebCore::LocalStorageThread::start):
2422         (WebCore::LocalStorageThread::localStorageThreadStart):
2423         (WebCore::LocalStorageThread::localStorageThread):
2424         (WebCore::LocalStorageThread::scheduleImport):
2425         (WebCore::LocalStorageThread::scheduleSync):
2426         (WebCore::LocalStorageThread::terminate):
2427         (WebCore::LocalStorageThread::performTerminate):
2428         * storage/LocalStorageThread.h:
2429         * storage/StorageSyncManager.cpp:
2430         (WebCore::StorageSyncManager::StorageSyncManager):
2431         (WebCore::StorageSyncManager::~StorageSyncManager):
2432         (WebCore::StorageSyncManager::scheduleImport):
2433         (WebCore::StorageSyncManager::scheduleSync):
2434         * storage/StorageSyncManager.h:
2435
2436 2009-11-04  Pavel Feldman  <pfeldman@chromium.org>
2437
2438         Reviewed by Timothy Hatcher.
2439
2440         Web Inspector: Add basic support for resource events and marks.
2441         Couple of drive-by fixes. Enabling the panel!
2442
2443         https://bugs.webkit.org/show_bug.cgi?id=31130
2444
2445         * English.lproj/localizedStrings.js:
2446         * inspector/front-end/TimelinePanel.js:
2447         (WebInspector.TimelinePanel):
2448         (WebInspector.TimelinePanel.prototype._formatRecord):
2449         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2450         (WebInspector.TimelinePanel.prototype.reset):
2451         (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClicked):
2452         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
2453         * inspector/front-end/inspector.js:
2454         (WebInspector._createPanels):
2455
2456 2009-11-03  Jeremy Orlow  <jorlow@chromium.org>
2457
2458         Reviewed by Darin Fisher.
2459
2460         Simplify LocalStorageThread
2461         https://bugs.webkit.org/show_bug.cgi?id=30935
2462
2463         On LocalStoragethread: Remove reference counting. Get rid of locking. Make some
2464         of the method names a bit more clear. Assert proper thread usage. Join rather
2465         than detaching the thread and doing an ad-hoc form of join. Avoid touching
2466         variables on the background thread when simple to do so.  Also create a generic
2467         scheduleTask function rather than one for each task.
2468
2469         No behavior should have changed.
2470
2471         * storage/LocalStorageThread.cpp:
2472         (WebCore::LocalStorageThread::create):
2473         (WebCore::LocalStorageThread::LocalStorageThread):
2474         (WebCore::LocalStorageThread::~LocalStorageThread):
2475         (WebCore::LocalStorageThread::start):
2476         (WebCore::LocalStorageThread::threadEntryPointCallback):
2477         (WebCore::LocalStorageThread::threadEntryPoint):
2478         (WebCore::LocalStorageThread::scheduleTask):
2479         (WebCore::LocalStorageThread::terminate):
2480         (WebCore::LocalStorageThread::performTerminate):
2481         * storage/LocalStorageThread.h:
2482         * storage/StorageSyncManager.cpp:
2483         (WebCore::StorageSyncManager::StorageSyncManager):
2484         (WebCore::StorageSyncManager::~StorageSyncManager):
2485         (WebCore::StorageSyncManager::scheduleImport):
2486         (WebCore::StorageSyncManager::scheduleSync):
2487         * storage/StorageSyncManager.h:
2488
2489 2009-11-04  Vadim Zeitlin  <vadim@wxwidgets.org>
2490
2491         Reviewed by Eric Seidel.
2492
2493         [wx] Small cleanup: avoid unnecessary wxString::mb_str() calls.
2494
2495         * platform/graphics/wx/FontPlatformDataWx.cpp:
2496         (WebCore::FontPlatformData::computeHash):
2497
2498 2009-11-04  Kelly Norton  <knorton@google.com>
2499
2500         Reviewed by Pavel Feldman.
2501
2502         Adds lightweight network resources to InspectorTimelineAgent.
2503         https://bugs.webkit.org/show_bug.cgi?id=31065
2504
2505         * inspector/InspectorController.cpp:
2506         (WebCore::InspectorController::willSendRequest):
2507         (WebCore::InspectorController::didReceiveResponse):
2508         (WebCore::InspectorController::didFinishLoading):
2509         (WebCore::InspectorController::didFailLoading):
2510         * inspector/InspectorTimelineAgent.cpp:
2511         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2512         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2513         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2514         * inspector/InspectorTimelineAgent.h:
2515         (WebCore::):
2516         * inspector/TimelineRecordFactory.cpp:
2517         (WebCore::TimelineRecordFactory::createResourceSendRequestTimelineRecord):
2518         (WebCore::TimelineRecordFactory::createResourceReceiveResponseTimelineRecord):
2519         (WebCore::TimelineRecordFactory::createResourceFinishTimelineRecord):
2520         * inspector/TimelineRecordFactory.h:
2521         * inspector/front-end/TimelineAgent.js:
2522
2523 2009-11-04  Yael Aharon  <yael.aharon@nokia.com>
2524
2525         Reviewed by Tor Arne Vestbø.
2526
2527         [Qt] ASSERT failure when receiving 401 HTTP Authentication response.
2528         https://bugs.webkit.org/show_bug.cgi?id=31077
2529
2530         Allow sending the response body under the same conditions that we
2531         allow it to finish without reporting an error.
2532
2533         * platform/network/qt/QNetworkReplyHandler.cpp:
2534         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
2535
2536 2009-11-04  Adam Roben  <aroben@apple.com>
2537
2538         Sort WebCore.base.exp
2539
2540         Rubber-stamped by Dan Bernstein.
2541
2542         * WebCore.base.exp: Sorted.
2543
2544 2009-11-04  Csaba Osztrogonác  <ossy@webkit.org>
2545
2546         Unreviewed rollout.
2547
2548         Revert r50496 because it broke all layout tests on QtBuildBot.
2549
2550         * WebCore.pro:
2551         * platform/graphics/qt/FontCacheQt.cpp:
2552         (WebCore::fontCache):
2553         (WebCore::FontCache::FontCache):
2554         (WebCore::FontCache::getTraitsInFamily):
2555         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
2556         (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
2557         (WebCore::FontPlatformDataCacheKey::):
2558         (WebCore::FontPlatformDataCacheKey::operator==):
2559         (WebCore::FontPlatformDataCacheKey::hash):
2560         (WebCore::FontPlatformDataCacheKey::computeHash):
2561         (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
2562         (WebCore::FontPlatformDataCacheKeyHash::hash):
2563         (WebCore::FontPlatformDataCacheKeyHash::equal):
2564         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
2565         (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
2566         (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
2567         (WebCore::FontCache::getCachedFontPlatformData):
2568         (WebCore::FontCache::getCachedFontData):
2569         (WebCore::FontCache::getLastResortFallbackFont):
2570         (WebCore::FontCache::releaseFontData):
2571         (WebCore::FontCache::purgeInactiveFontData):
2572         (WebCore::FontCache::addClient):
2573         (WebCore::FontCache::removeClient):
2574         (WebCore::FontCache::invalidate):
2575         * platform/graphics/qt/FontFallbackListQt.cpp: Added.
2576         (WebCore::FontFallbackList::FontFallbackList):
2577         (WebCore::FontFallbackList::invalidate):
2578         (WebCore::FontFallbackList::releaseFontData):
2579         (WebCore::FontFallbackList::determinePitch):
2580         (WebCore::FontFallbackList::fontDataAt):
2581         (WebCore::FontFallbackList::fontDataForCharacters):
2582         (WebCore::FontFallbackList::setPlatformFont):
2583         * platform/graphics/qt/FontPlatformData.h:
2584         (WebCore::FontPlatformData::pixelSize):
2585         * platform/graphics/qt/FontPlatformDataQt.cpp:
2586         (WebCore::FontPlatformData::FontPlatformData):
2587
2588 2009-11-04  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2589
2590         Reviewed by Jan Alonzo.
2591
2592         https://bugs.webkit.org/show_bug.cgi?id=31044
2593         [Gtk] assertion when webkit_accessible_get_index_in_parent attempts to get parent of the web view
2594
2595         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2596         (atkParentOfWebView):
2597         (webkit_accessible_get_index_in_parent):
2598         (webkit_accessible_get_parent):
2599
2600 2009-11-04  Dominik Röttsches  <dominik.roettsches@access-company.com>
2601
2602         Reviewed by Eric Seidel.
2603
2604         https://bugs.webkit.org/show_bug.cgi?id=15914
2605         [GTK] Implement Unicode functionality using GLib
2606
2607         Initial version of this patch by Jürg Billeter and Naiem Shaik.
2608         Patch 2/4 - Moving TextCodecs to GLib
2609         
2610         Added probing for a hard-coded lists of text encodings.
2611         The basis of this list is taken from the encodings supported by iconv,
2612         then extended by e.g. tis-620, windows-1251, euc-kr, windows-1253 and
2613         a number of Chinese ones.
2614
2615         Probing is necessary with the current design of text codecs
2616         as iconv/GLib do not support enumerating available encodings.
2617
2618         * GNUmakefile.am:
2619         * platform/ThreadGlobalData.cpp:
2620         (WebCore::ThreadGlobalData::ThreadGlobalData):
2621         (WebCore::ThreadGlobalData::~ThreadGlobalData):
2622         * platform/text/TextEncoding.cpp:
2623         (WebCore::TextEncoding::encode):
2624         * platform/text/TextEncodingRegistry.cpp:
2625         (WebCore::buildBaseTextCodecMaps):
2626         (WebCore::extendTextCodecMaps):
2627         * platform/text/gtk/TextCodecGtk.cpp: Added.
2628         (WebCore::):
2629         (WebCore::newTextCodecGtk):
2630         (WebCore::TextCodecGtk::isEncodingAvailable):
2631         (WebCore::TextCodecGtk::registerEncodingNames):
2632         (WebCore::TextCodecGtk::registerCodecs):
2633         (WebCore::TextCodecGtk::registerBaseEncodingNames):
2634         (WebCore::TextCodecGtk::registerBaseCodecs):
2635         (WebCore::TextCodecGtk::registerExtendedEncodingNames):
2636         (WebCore::TextCodecGtk::registerExtendedCodecs):
2637         (WebCore::TextCodecGtk::TextCodecGtk):
2638         (WebCore::TextCodecGtk::~TextCodecGtk):
2639         (WebCore::TextCodecGtk::releaseIConv):
2640         (WebCore::TextCodecGtk::createIConvDecoder):
2641         (WebCore::TextCodecGtk::createIConvEncoder):
2642         (WebCore::TextCodecGtk::decode):
2643         (WebCore::TextCodecGtk::encode):
2644         * platform/text/gtk/TextCodecGtk.h: Added.
2645
2646 2009-11-04  Martin Robinson  <martin.james.robinson@gmail.com>
2647
2648         Reviewed by Jan Alonzo.
2649
2650         [GTK] Enable DOM clipboard and drag-and-drop access
2651         https://bugs.webkit.org/show_bug.cgi?id=30623
2652
2653         Unify redudant methods which will always return the same value.
2654
2655         * platform/gtk/PasteboardGtk.cpp:
2656         (WebCore::Pasteboard::writeSelection):
2657         * platform/gtk/PasteboardHelper.h:
2658
2659 2009-11-04  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2660
2661         Reviewed by Jan Alonzo.
2662
2663         https://bugs.webkit.org/show_bug.cgi?id=31035
2664         [GTK] some accessibility tests hitting assertion in debug builds
2665
2666         Removes the assertions in webkit_accessible_ref_child; adds sanity checks.
2667         Any app or AT can attempt to ref a child at a bogus index.
2668
2669         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2670         (webkit_accessible_ref_child):
2671
2672 2009-11-04  Benjamin Otte  <otte@gnome.org>
2673
2674         Reviewed by Jan Alonzo.
2675
2676         [gtk] Use gst_element_class_set_details_simple()
2677
2678         Cosmetic change, just code simplification
2679
2680         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
2681         (webkit_video_sink_base_init):
2682 2009-11-04  Kelly Norton  <knorton@google.com>
2683
2684         Reviewed by Timothy Hatcher.
2685
2686         Adds paint rectangle information to TimelineAgent's didPaint callback.
2687         https://bugs.webkit.org/show_bug.cgi?id=31087
2688
2689         * inspector/InspectorTimelineAgent.cpp:
2690         (WebCore::InspectorTimelineAgent::willPaint):
2691         * inspector/InspectorTimelineAgent.h:
2692         * inspector/TimelineRecordFactory.cpp:
2693         (WebCore::TimelineRecordFactory::createPaintTimelineRecord):
2694         * inspector/TimelineRecordFactory.h:
2695         * page/FrameView.cpp:
2696         (WebCore::FrameView::paintContents):
2697
2698 2009-11-04  Jaime Yap  <jaimeyap@google.com>
2699
2700         Reviewed by Timothy Hatcher.
2701
2702         This patch adds API to the console object for annotating the
2703         inspector timeline. This allows developers to mark logical
2704         checkpoints in their apps and have them overlaid in the event
2705         record tree.
2706
2707         tests updated: LayoutTests/fast/dom/Window/window-properties.html
2708         https://bugs.webkit.org/show_bug.cgi?id=31082
2709
2710
2711         * inspector/InspectorController.cpp:
2712         (WebCore::InspectorController::markTimeline):
2713         * inspector/InspectorController.h:
2714         * inspector/InspectorTimelineAgent.cpp:
2715         (WebCore::InspectorTimelineAgent::didMarkTimeline):
2716         * inspector/InspectorTimelineAgent.h:
2717         (WebCore::):
2718         * inspector/TimelineRecordFactory.cpp:
2719         (WebCore::TimelineRecordFactory::createMarkTimelineRecord):
2720         * inspector/TimelineRecordFactory.h:
2721         * inspector/front-end/TimelineAgent.js:
2722         * page/Console.cpp:
2723         (WebCore::Console::markTimeline):
2724         * page/Console.h:
2725         * page/Console.idl:
2726
2727 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
2728
2729         Unreviewed build fix for WebInspector with Qt build.
2730
2731         Simply re-generate the Qt resource file by running
2732         WebKitTools/Scripts/generate-qt-inspector-resource
2733
2734         * inspector/front-end/WebKit.qrc:
2735
2736 2009-11-02  Benjamin Poulain  <benjamin.poulain@nokia.com>
2737
2738         Reviewed by Simon Hausmann.
2739
2740         [Qt] Handle fonts like the other ports
2741
2742         Remove FontFallbackListQt and rely on the common FontFallbackList
2743         to handle the fonts. FontCache and FontPlatformData have been
2744         updated to work with the common FontFallbackList.
2745
2746         In the previous implementation, FontPlatformDataCacheKey
2747         was a clone of FontPlatformData with the hashing
2748         capabilities added in order to use it as a key in the cache's
2749         hashmap. FontPlatformData has been modified to handle the hashing
2750         function directly so the data are not copied twice in memory.
2751
2752         FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of
2753         code from FontCache::getFontData() and FontFallbackList::fontDataAt().
2754         The behavior is similar except currFamily->family().length() was
2755         not tested and the fallback fonts selector were not used.
2756
2757         https://bugs.webkit.org/show_bug.cgi?id=29856
2758
2759         Test: svg/text/text-font-invalid.html
2760
2761         * WebCore.pro:
2762         * platform/graphics/qt/FontCacheQt.cpp:
2763         (WebCore::FontCache::platformInit):
2764         (WebCore::FontCache::getFontDataForCharacters):
2765         (WebCore::FontCache::getSimilarFontPlatformData):
2766         (WebCore::FontCache::getLastResortFallbackFont):
2767         (WebCore::FontCache::getTraitsInFamily):
2768         (WebCore::FontCache::createFontPlatformData):
2769         * platform/graphics/qt/FontFallbackListQt.cpp:
2770         Removed. We now use the implementation from FontFallbackList.cpp
2771         * platform/graphics/qt/FontPlatformData.h:
2772         Add hashing capabilities to be able to use the data with the FontCache.
2773         This was previously done in FontCacheQt.cpp
2774         (WebCore::FontPlatformData::FontPlatformData):
2775         Added a boolean to identify deleted value in the hash table.
2776         (WebCore::FontPlatformData::isHashTableDeletedValue):
2777         (WebCore::FontPlatformData::hash):
2778         (WebCore::FontPlatformData::operator==):
2779         * platform/graphics/qt/FontPlatformDataQt.cpp:
2780         (WebCore::FontPlatformData::FontPlatformData):
2781
2782 2009-11-03  Dan Bernstein  <mitz@apple.com>
2783
2784         Leopard build fix
2785
2786         * platform/network/mac/AuthenticationMac.mm:
2787         (WebCore::mac):
2788         (WebCore::core):
2789
2790 2009-11-03  Dan Bernstein  <mitz@apple.com>
2791
2792         Reviewed by Alexey Proskuryakov.
2793
2794         Fix an assertion failure in core(NSURLProtectionSpace *) by handling NTLM
2795         authentication in AuthenticationMac
2796
2797         * platform/network/mac/AuthenticationMac.mm:
2798
2799 2009-11-03  Eric Z. Ayers  <zundel@google.com>
2800
2801         Reviewed by Timothy Hatcher.
2802
2803         Fixes a problem where the timeline instrumentation crashes if
2804         timeline profiling is enabled or disabled in the middle of an
2805         event dispatch.
2806
2807         https://bugs.webkit.org/show_bug.cgi?id=31080
2808
2809         Test: inspector/timeline-trivial.html
2810
2811         * bindings/js/ScriptController.cpp:
2812         (WebCore::ScriptController::evaluateInWorld):
2813         (WebCore::ScriptController::processingUserGestureEvent):
2814         * inspector/InspectorTimelineAgent.cpp:
2815         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
2816         * page/DOMTimer.cpp:
2817         (WebCore::DOMTimer::fired):
2818
2819 2009-11-03  Dan Bernstein  <mitz@apple.com>
2820
2821         Reviewed by Dave Hyatt.
2822
2823         Allow a frame to go back to copy-on-scroll when it ceases being overlapped
2824
2825         The code was not testing slow-scrolling frames for overlappedness, thinking the answer
2826         would not matter. That is not the case if the only reason for the slow-scrolling is
2827         being overlapped.
2828
2829         * page/FrameView.cpp:
2830         (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): Added. Returns whether there is any
2831         reason besides being overlapped that the frame would need to fully repaint on scroll.
2832         * page/FrameView.h:
2833         * rendering/RenderWidget.cpp:
2834         (WebCore::RenderWidget::paint): Use useSlowRepaintsIfNotOverlapped().
2835
2836 2009-11-03  Dmitry Titov  <dimich@chromium.org>
2837
2838         Not reviewed, Qt build fix.
2839
2840         Need to use right capitalization for include file.
2841
2842         * page/Navigator.cpp:
2843
2844 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2845
2846         Reviewed by Timothy Hatcher.
2847
2848         Web Inspector: Migrate from top bar filters to check boxes in Timeline.
2849
2850         https://bugs.webkit.org/show_bug.cgi?id=31081
2851
2852         * inspector/front-end/AbstractTimelinePanel.js:
2853         (WebInspector.AbstractTimelinePanel.prototype.showCategory):
2854         (WebInspector.AbstractTimelinePanel.prototype.hideCategory):
2855         (WebInspector.AbstractTimelinePanel.prototype.filter):
2856         * inspector/front-end/TimelinePanel.js:
2857         (WebInspector.TimelinePanel):
2858         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
2859         (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClick):
2860         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
2861         (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
2862         * inspector/front-end/inspector.css:
2863
2864 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2865
2866         Reviewed by Timothy Hatcher.
2867
2868         Web Inspector: clear overview on Clear action and panel reset.
2869
2870         https://bugs.webkit.org/show_bug.cgi?id=31078
2871
2872         * inspector/front-end/TimelinePanel.js:
2873         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2874         (WebInspector.TimelinePanel.prototype.reset):
2875
2876 2009-11-03  Yaar Schnitman  <yaar@chromium.org>
2877
2878         Reviewed by Dimitri Glazkov.
2879
2880         Imported action and rules python files that WebCore.gyp depends on. 
2881         These files used to live in chromium.org and deal mostly with auto-generation
2882         of code by wrapping existing webkit perl scripts.
2883
2884         https://bugs.webkit.org/show_bug.cgi?id=31071
2885
2886         * WebCore.gyp/WebCore.gyp: Fixed paths in actions and rules.
2887         * WebCore.gyp/scripts/action_csspropertynames.py: Added.
2888         * WebCore.gyp/scripts/action_cssvaluekeywords.py: Added.
2889         * WebCore.gyp/scripts/action_makenames.py: Added.
2890         * WebCore.gyp/scripts/action_maketokenizer.py: Added.
2891         * WebCore.gyp/scripts/action_useragentstylesheets.py: Added.
2892         * WebCore.gyp/scripts/rule_binding.py: Added.
2893         * WebCore.gyp/scripts/rule_bison.py: Added.
2894         * WebCore.gyp/scripts/rule_gperf.py: Added.
2895
2896 2009-11-03  Bradley Green  <brg@chromium.org>
2897
2898         Reviewed by Dmitry Titov.
2899
2900         Implement window.navigator.registerProtocolHandler in webkit,
2901         https://bugs.webkit.org/b/29651
2902
2903         Also implemented its sister API window.navigator.registerContentHandler.
2904
2905         These methods are as described in the HTML5 specification which can be
2906         found here,
2907         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler
2908         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registercontenthandler
2909
2910         As specified in the document, the behavior of the browser is determined
2911         by the current registered handler.  The state of a registered handler
2912         can change at any time, with the user clearing a registered handler,
2913         registering a different page as handler, or deferring the hander to the
2914         OS.  If webkit was to track the state of the currently registered
2915         handlers, it would need more APIs and complexity to keep in sync with
2916         user actions reported to webkit from the UA.  For simplicity, the state
2917         of protocol handlers should be kept isolated from webkit and webkit only
2918         notifies the UA that a page has made the call.  The UA is then
2919         responsible for correctly handling the registerProtocolHandler call and
2920         the redirects which result from registration.
2921
2922         We do however follow the specification in insuring that the reserved
2923         schemes and mimeTypes are not passed to the UA as custom handler
2924         registration tests.  We also insure that the "%s" token is present as
2925         required by the specification.
2926
2927         Updated test expectations for window.clientInformation and navigator
2928         objects.
2929
2930         Tests: fast/dom/registerContentHandler.html
2931                fast/dom/registerProtocolHandler.html
2932
2933         * page/Chrome.cpp:
2934         (WebCore::Chrome::registerProtocolHandler):
2935         (WebCore::Chrome::registerContentHandler):
2936         * page/Chrome.h:
2937         * page/ChromeClient.h:
2938         (WebCore::ChromeClient::registerProtocolHandler):
2939         (WebCore::ChromeClient::registerContentHandler):
2940         * page/Navigator.cpp:
2941         (WebCore::verifyCustomHandlerURL):
2942         (WebCore::verifyProtocolHandlerScheme):
2943         (WebCore::Navigator::registerProtocolHandler):
2944         (WebCore::verifyProtocolHandlerMimeType):
2945         (WebCore::Navigator::registerContentHandler):
2946         * page/Navigator.h:
2947         * page/Navigator.idl:
2948
2949 2009-11-03  Brady Eidson  <beidson@apple.com>
2950
2951         Reviewed by Darin Adler.
2952
2953         https://bugs.webkit.org/show_bug.cgi?id=31079 - Remove #include "Page.h" from Document.h
2954
2955         No new tests. (No change in functionality)
2956
2957         * dom/Document.cpp:
2958         (WebCore::Document::inspectorTimelineAgent): Moved from Document.h
2959         * dom/Document.h:
2960
2961         Include "Page.h" directly:
2962         * html/HTMLVideoElement.cpp:
2963         * loader/RedirectScheduler.cpp:
2964         * page/History.cpp:
2965         * rendering/MediaControlElements.cpp:
2966         * storage/StorageAreaImpl.cpp:
2967
2968 2009-11-03  Keishi Hattori  <casey.hattori@gmail.com>
2969
2970         Reviewed by Timothy Hatcher.
2971
2972         Web Inspector: hover over JS "things" in source and see their values
2973         https://bugs.webkit.org/show_bug.cgi?id=30913
2974
2975         * inspector/front-end/SourceFrame.js:
2976
2977 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2978
2979         Reviewed by Timothy Hatcher.
2980
2981         Web Inspector: update timeline content boundaries on timer.
2982
2983         https://bugs.webkit.org/show_bug.cgi?id=31072
2984
2985         * inspector/front-end/TimelinePanel.js:
2986         (WebInspector.TimelinePanel.prototype.refresh):
2987         (WebInspector.TimelinePanel.prototype._setWindowPosition):
2988
2989 2009-11-03  Dan Bernstein  <mitz@apple.com>
2990
2991         Reviewed by Anders Carlsson and Beth Dakin.
2992
2993         https://bugs.webkit.org/show_bug.cgi?id=31070
2994         Fix <rdar://problem/7194735> Crashes at RenderText::RenderText()
2995         Fix <rdar://problem/6937089> Crashes at RenderWidget::destroy()
2996
2997         Tests: plugins/attach-during-destroy.html
2998                plugins/destroy-reentry.html
2999
3000         These crashes were caused by plug-in code running during detach(),
3001         causing re-entry into RenderWidget::destroy() in one case and a call
3002         into attach() in the other. The fix is to prevent plug-in code from
3003         being called at certain unsafe times (during attach(), detach(), and
3004         recalcStyle()) by deferring changes to the widget hierarchy.
3005
3006         * dom/Document.cpp:
3007         (WebCore::Document::recalcStyle): Suspend widget hierarchy updates
3008             during style recalculation.
3009
3010         * dom/Element.cpp:
3011         (WebCore::Element::attach): Suspend widget hierarchy updates during
3012             attach().
3013         (WebCore::Element::detach): Suspend widget hierarchy updates during
3014             detach().
3015
3016         * rendering/RenderWidget.cpp:
3017         (WebCore::widgetNewParentMap): Returns a static map of pending changes
3018             to the widget hierarchy.
3019         (WebCore::RenderWidget::suspendWidgetHierarchyUpdates): Increments the
3020             suspend count.
3021         (WebCore::RenderWidget::resumeWidgetHierarchyUpdates): Decrements the
3022             suspend count. If the count is going to be zero, updates the widget
3023             hierarchy by executing the pending changes stored in the map.
3024         (WebCore::moveWidgetToParentSoon): Updates the widget hierarchy
3025             immediately or makes or updates an entry in the map, depending on
3026             whether updates are suspended.
3027         (WebCore::RenderWidget::destroy): Removed earlier bandaid fix for
3028             <rdar://problem/6937089>.
3029         (WebCore::RenderWidget::setWidgetGeometry): Assert that widget updates
3030             are not suspended, because this function updates the widget’s
3031             bounds, which can result in arbitrary native and JavaScript code
3032             execution. I think this assertion is true thanks to some deferred-
3033             update mechanisms that have already been deployed in other places
3034             in the code.
3035         (WebCore::RenderWidget::setWidget): Call moveWidgetToParentSoon instead
3036             of changing the widget hierarchy directly.
3037         * rendering/RenderWidget.h: Declared suspendWidgetHierarchyUpdates()
3038             and resumeWidgetHierarchyUpdates().
3039
3040 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
3041
3042         Reviewed by Timothy Hatcher.
3043
3044         Web Inspector: only show timeline records that contribute
3045         to the current window.
3046
3047         https://bugs.webkit.org/show_bug.cgi?id=31069
3048
3049         * inspector/front-end/TimelinePanel.js:
3050         (WebInspector.TimelinePanel.prototype.refresh):
3051         (WebInspector.TimelineGraph):
3052         (WebInspector.TimelineGraph.prototype.refresh):
3053
3054 2009-11-03  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3055
3056         Reviewed by Timothy Hatcher.
3057
3058         Watch expression editor should stay open after Add button was clicked
3059         https://bugs.webkit.org/show_bug.cgi?id=31049
3060
3061         No new tests, was a regression, use existing manual test.
3062
3063         * inspector/front-end/WatchExpressionsSidebarPane.js:
3064         (WebInspector.WatchExpressionsSection.prototype.update):
3065         (WebInspector.WatchExpressionsSection.prototype.addExpression):
3066
3067 2009-11-03  Evan Martin  <evan@chromium.org>
3068
3069         Reviewed by Darin Adler.
3070
3071         Fix an off-by-one in the CSS lexer that causes memory corruption in
3072         hard-to-trigger circumstances.
3073
3074         https://bugs.webkit.org/show_bug.cgi?id=30827
3075
3076         Test: fast/css/end-of-buffer-crash.html
3077
3078         * css/maketokenizer: Add comments, fix off-by-one.
3079
3080 2009-11-02  Darin Adler  <darin@apple.com>
3081
3082         Reviewed by Dan Bernstein.
3083
3084         Crash due to double-destroy related to CSS run-in property
3085         https://bugs.webkit.org/show_bug.cgi?id=31034
3086         rdar://problem/7328458
3087
3088         Test: fast/css/run-in-crash.html
3089
3090         * rendering/RenderBlock.cpp:
3091         (WebCore::RenderBlock::destroy): Reorder destruction so the
3092         continuation is destroyed after anonymous children. See comment
3093         in the code for more details of why this is right.
3094         * rendering/RenderInline.cpp:
3095         (WebCore::RenderInline::destroy): Ditto.
3096
3097 2009-11-03  Alexander Pavlov  <apavlov@chromium.org>
3098
3099         Reviewed by Pavel Feldman.
3100
3101         Fix exception in ElementsPanel.js when moving pointer out of crumbs and window
3102
3103         There might be no new node under mouse if the pointer is moved out of the window
3104         in which case we get an exception.
3105         https://bugs.webkit.org/show_bug.cgi?id=31061
3106
3107         * inspector/front-end/ElementsPanel.js:
3108         (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
3109
3110 2009-11-03  Zoltan Horvath  <zoltan@webkit.org>
3111
3112         Reviewed by Darin Adler.
3113
3114         Allow custom memory allocation control for the dom directory of WebCore
3115         https://bugs.webkit.org/show_bug.cgi?id=31053
3116
3117         Inherits the following classes from Noncopyable because these are
3118         instantiated by 'new' and these are no need to be copyable:
3119
3120         class EventNames - 'new' call: WebCore/platform/ThreadGlobalData.cpp:73
3121         struct PerformTaskContext - 'new' call: WebCore/dom/Document.cpp:4581
3122         class EventData - 'new' call: WebCore/dom/MessagePortChannel.cpp:38
3123         struct NodeListsNodeData - 'new' call: WebCore/dom/NodeRareData.h:51 
3124         struct EventTargetData - 'new' call: WebCore/dom/NodeRareData.h:100
3125         class NodeRareData - 'new' call: WebCore/dom/Node.cpp:552
3126
3127         Inherits QualifiedName class from FastAllocBase because it is
3128         instantiated by 'new' in WebCore/editing/markup.cpp:319
3129
3130         * dom/Document.cpp:
3131         * dom/EventNames.h:
3132         * dom/EventTarget.h:
3133         * dom/MessagePortChannel.h:
3134         * dom/NodeRareData.h:
3135         * dom/QualifiedName.h:
3136
3137 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
3138
3139         Reviewed by Timothy Hatcher.
3140
3141         Web Inspector: Implement timeline summary panel.
3142
3143         https://bugs.webkit.org/show_bug.cgi?id=31064
3144
3145         * inspector/front-end/TimelinePanel.js:
3146         (WebInspector.TimelinePanel.prototype._createOverview):
3147         (WebInspector.TimelinePanel.prototype.refresh):
3148         (WebInspector.TimelineCategoryGraph):
3149         (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
3150         (WebInspector.TimelineCategoryGraph.prototype.addChunk):
3151         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
3152         (WebInspector.TimelineGraph.prototype.refresh):
3153         * inspector/front-end/inspector.css:
3154
3155 2009-11-03  Alexander Pavlov  <apavlov@chromium.org>
3156
3157         Reviewed by Timothy Hatcher.
3158
3159         Toggle off 'Search for node' when the Inspector window is closing
3160
3161         Searching for node should be toggled off when the Inspector window is closed,
3162         in a platform-independent manner.
3163         https://bugs.webkit.org/show_bug.cgi?id=31059
3164
3165         * inspector/InspectorController.cpp:
3166         (WebCore::InspectorController::setWindowVisible):
3167
3168 2009-11-03  Mikhail Naganov  <mnaganov@chromium.org>
3169
3170         Reviewed by Timothy Hatcher.
3171
3172         Prepare for heap profiles upstreaming:
3173         - pass profile type id from InspectorController;
3174         - this makes WebInspector.CPUProfile redundant---removed;
3175         - support multiple profile types when populating profiles.
3176
3177         https://bugs.webkit.org/show_bug.cgi?id=31052
3178
3179         * inspector/InspectorController.cpp:
3180         (WebCore::InspectorController::createProfileHeader):
3181         * inspector/front-end/ProfileView.js:
3182         (WebInspector.CPUProfileView.profileCallback):
3183         (WebInspector.CPUProfileView):
3184         (WebInspector.CPUProfileView.prototype._sortData):
3185         * inspector/front-end/ProfilesPanel.js:
3186         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3187         * inspector/front-end/inspector.js:
3188         (WebInspector.addProfileHeader):
3189
3190 2009-11-03  Dan Kegel  <dank@chromium.org>
3191
3192         Reviewed by Dimitri Glazkov.
3193
3194         UMR in WebCore::AccessibilityRenderObject::children(); m_childrenDirty uninitialized in constructor
3195         https://bugs.webkit.org/show_bug.cgi?id=31063
3196
3197         * accessibility/AccessibilityRenderObject.cpp:
3198         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
3199
3200 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
3201
3202         Reviewed by Timothy Hatcher.
3203
3204         Web Inspector: Implement Timeline Window, wire it to the bottom timeline.
3205
3206         https://bugs.webkit.org/show_bug.cgi?id=31056
3207
3208         * English.lproj/localizedStrings.js:
3209         * inspector/front-end/AbstractTimelinePanel.js:
3210         (WebInspector.AbstractTimelinePanel.prototype.get items):
3211         (WebInspector.AbstractTimelinePanel.prototype.createInterface):
3212         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
3213         (WebInspector.AbstractTimelinePanel.prototype._updateDividersLabelBarPosition):
3214         (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
3215         (WebInspector.AbstractTimelinePanel.prototype.refresh):
3216         (WebInspector.AbstractTimelinePanel.prototype.adjustScrollPosition):
3217         (WebInspector.AbstractTimelinePanel.prototype.addExtraDivider):
3218         (WebInspector.TimelineGrid):
3219         (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
3220         (WebInspector.TimelineGrid.prototype.updateDividers):
3221         (WebInspector.TimelineGrid.prototype.addExtraDivider):
3222         (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
3223         * inspector/front-end/ResourcesPanel.js:
3224         (WebInspector.ResourcesPanel):
3225         (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded):
3226         (WebInspector.ResourcesPanel.prototype.get _resources):
3227         * inspector/front-end/TimelinePanel.js:
3228         (WebInspector.TimelinePanel):
3229         (WebInspector.TimelinePanel.prototype.get categories):
3230         (WebInspector.TimelinePanel.prototype._formatRecord):
3231         (WebInspector.TimelinePanel.prototype.reset):
3232         (WebInspector.TimelinePanel.prototype._createOverview):
3233         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
3234         (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
3235         (WebInspector.TimelinePanel.prototype.updateGraphDividersIfNeeded):
3236         (WebInspector.TimelinePanel.prototype.refresh):
3237         (WebInspector.TimelinePanel.prototype._resizeWindow):
3238         (WebInspector.TimelinePanel.prototype._windowResizeDragging):
3239         (WebInspector.TimelinePanel.prototype._dragWindow):
3240         (WebInspector.TimelinePanel.prototype._windowDragging):
3241         (WebInspector.TimelinePanel.prototype._resizeWindowLeft):
3242         (WebInspector.TimelinePanel.prototype._resizeWindowRight):
3243         (WebInspector.TimelinePanel.prototype._setWindowPosition):
3244         (WebInspector.TimelinePanel.prototype._endWindowDragging):
3245         (WebInspector.TimelineCategoryTreeElement):
3246         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
3247         (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
3248         (WebInspector.TimelineCalculator.prototype.get minimumBoundary):
3249         (WebInspector.TimelineCalculator.prototype.get maximumBoundary):
3250         (WebInspector.TimelineCalculator.prototype.reset):
3251         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
3252         (WebInspector.TimelineCalculator.prototype.formatValue):
3253         * inspector/front-end/inspector.css:
3254
3255 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
3256
3257         Reviewed by Tor Arne Vestbø.
3258
3259         Make QWebPluginDatabase private API for now.
3260
3261         https://bugs.webkit.org/show_bug.cgi?id=30775
3262
3263         * WebCore.pro:
3264
3265 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
3266
3267         Reviewed by Tor Arne Vestbø.
3268
3269         Extended the conversion of the WebCore ResourceRequest to the
3270         QNetworkRequest with a mandatory originating object argument,
3271         which is meant to be the QWebFrame the request belongs to.
3272
3273         https://bugs.webkit.org/show_bug.cgi?id=29975
3274
3275         * platform/network/qt/QNetworkReplyHandler.cpp:
3276         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
3277         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
3278         (WebCore::QNetworkReplyHandler::start):
3279         * platform/network/qt/ResourceRequest.h:
3280         * platform/network/qt/ResourceRequestQt.cpp:
3281         (WebCore::ResourceRequest::toNetworkRequest):
3282
3283 2009-11-03  Keishi Hattori  <casey.hattori@gmail.com>
3284
3285         Reviewed by Pavel Feldman.
3286
3287         Web Inspector: monitorEvent should be monitorEvents
3288         https://bugs.webkit.org/show_bug.cgi?id=31042
3289
3290         * inspector/front-end/InjectedScript.js:
3291         (InjectedScript._ensureCommandLineAPIInstalled):
3292
3293 2009-11-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3294
3295         Rubber-stamped by Antti Koivisto.
3296
3297         [Qt] Build fix for Windows CE
3298
3299         * plugins/PluginDatabase.cpp:
3300
3301 2009-11-02  Chris Fleizach  <cfleizach@apple.com>
3302
3303         Reviewed by David Levin.
3304
3305         fix accessibility webkit-style-check errors
3306         https://bugs.webkit.org/show_bug.cgi?id=29672
3307
3308         * accessibility/AXObjectCache.cpp:
3309         (WebCore::AXObjectCache::getOrCreate):
3310         (WebCore::AXObjectCache::remove):
3311         (WebCore::AXObjectCache::platformGenerateAXID):
3312         (WebCore::AXObjectCache::removeAXID):
3313         * accessibility/AXObjectCache.h:
3314         (WebCore::AXObjectCache::enableAccessibility):
3315         (WebCore::AXObjectCache::enableEnhancedUserInterfaceAccessibility):
3316         (WebCore::AXObjectCache::accessibilityEnabled):
3317         (WebCore::AXObjectCache::accessibilityEnhancedUserInterfaceEnabled):
3318         (WebCore::AXObjectCache::isIDinUse):
3319         (WebCore::AXObjectCache::objectFromAXID):
3320         (WebCore::AXObjectCache::):
3321         (WebCore::AXObjectCache::handleActiveDescendantChanged):
3322         (WebCore::AXObjectCache::handleAriaRoleChanged):
3323         (WebCore::AXObjectCache::detachWrapper):
3324         (WebCore::AXObjectCache::attachWrapper):
3325         (WebCore::AXObjectCache::selectedChildrenChanged):
3326         (WebCore::AXObjectCache::postNotification):
3327         (WebCore::AXObjectCache::postPlatformNotification):
3328         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
3329         (WebCore::AXObjectCache::handleScrolledToAnchor):
3330         * accessibility/AccessibilityARIAGrid.cpp:
3331         (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
3332         * accessibility/AccessibilityAllInOne.cpp:
3333         * accessibility/AccessibilityImageMapLink.cpp:
3334         * accessibility/AccessibilityList.h:
3335         (WebCore::AccessibilityList::isList):
3336         * accessibility/AccessibilityListBox.cpp:
3337         * accessibility/AccessibilityListBox.h:
3338         (WebCore::AccessibilityListBox::isListBox):
3339         * accessibility/AccessibilityListBoxOption.cpp:
3340         * accessibility/AccessibilityListBoxOption.h:
3341         (WebCore::AccessibilityListBoxOption::isListBoxOption):
3342         * accessibility/AccessibilityMediaControls.h:
3343         (WebCore::AccessibilityMediaControl::~AccessibilityMediaControl):
3344         (WebCore::AccessibilityMediaTimeline::~AccessibilityMediaTimeline):
3345         (WebCore::AccessibilityMediaTimeline::isMediaTimeline):
3346         (WebCore::AccessibilityMediaControlsContainer::~AccessibilityMediaControlsContainer):
3347         (WebCore::AccessibilityMediaControlsContainer::roleValue):
3348         (WebCore::AccessibilityMediaControlsContainer::accessibilityIsIgnored):
3349         (WebCore::AccessibilityMediaTimeDisplay::~AccessibilityMediaTimeDisplay):
3350         (WebCore::AccessibilityMediaTimeDisplay::roleValue):
3351         * accessibility/AccessibilityObject.cpp:
3352         (WebCore::AccessibilityObject::parentObjectUnignored):
3353         (WebCore::AccessibilityObject::rightLineVisiblePositionRange):
3354         (WebCore::replacedNodeNeedsCharacter):
3355         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
3356         (WebCore::AccessibilityObject::lengthForVisiblePositionRange):
3357         (WebCore::AccessibilityObject::actionVerb):
3358         * accessibility/AccessibilityObject.h:
3359         (WebCore::PlainTextRange::isNull):
3360         (WebCore::AccessibilityObject::isAccessibilityRenderObject):
3361         (WebCore::AccessibilityObject::isAnchor):
3362         (WebCore::AccessibilityObject::isAttachment):
3363         (WebCore::AccessibilityObject::isHeading):
3364         (WebCore::AccessibilityObject::isLink):
3365         (WebCore::AccessibilityObject::isImage):
3366         (WebCore::AccessibilityObject::isNativeImage):
3367         (WebCore::AccessibilityObject::isImageButton):
3368         (WebCore::AccessibilityObject::isPasswordField):
3369         (WebCore::AccessibilityObject::isTextControl):
3370         (WebCore::AccessibilityObject::isNativeTextControl):
3371         (WebCore::AccessibilityObject::isWebArea):
3372         (WebCore::AccessibilityObject::isCheckboxOrRadio):
3373         (WebCore::AccessibilityObject::isListBox):
3374         (WebCore::AccessibilityObject::isFileUploadButton):
3375         (WebCore::AccessibilityObject::isProgressIndicator):
3376         (WebCore::AccessibilityObject::isSlider):
3377         (WebCore::AccessibilityObject::isControl):
3378         (WebCore::AccessibilityObject::isList):
3379         (WebCore::AccessibilityObject::isDataTable):
3380         (WebCore::AccessibilityObject::isTableRow):
3381         (WebCore::AccessibilityObject::isTableColumn):
3382         (WebCore::AccessibilityObject::isTableCell):
3383         (WebCore::AccessibilityObject::isFieldset):
3384         (WebCore::AccessibilityObject::isGroup):
3385         (WebCore::AccessibilityObject::isChecked):
3386         (WebCore::AccessibilityObject::isEnabled):
3387         (WebCore::AccessibilityObject::isSelected):
3388         (WebCore::AccessibilityObject::isFocused):
3389         (WebCore::AccessibilityObject::isHovered):
3390         (WebCore::AccessibilityObject::isIndeterminate):
3391         (WebCore::AccessibilityObject::isLoaded):
3392         (WebCore::AccessibilityObject::isMultiSelect):
3393         (WebCore::AccessibilityObject::isOffScreen):
3394         (WebCore::AccessibilityObject::isPressed):
3395         (WebCore::AccessibilityObject::isReadOnly):
3396         (WebCore::AccessibilityObject::isVisited):
3397         (WebCore::AccessibilityObject::isRequired):
3398         (WebCore::AccessibilityObject::canSetFocusAttribute):
3399         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
3400         (WebCore::AccessibilityObject::canSetValueAttribute):
3401         (WebCore::AccessibilityObject::hasIntValue):
3402         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
3403         (WebCore::AccessibilityObject::accessibilityIsIgnored):
3404         * accessibility/AccessibilityRenderObject.cpp:
3405         (WebCore::AccessibilityRenderObject::parentObjectIfExists):
3406         (WebCore::AccessibilityRenderObject::parentObject):
3407         (WebCore::AccessibilityRenderObject::isMenuRelated):
3408         (WebCore::AccessibilityRenderObject::accessibilityDescription):
3409         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3410         (WebCore::AccessibilityRenderObject::isFocused):
3411         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
3412         (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
3413         (WebCore::AccessibilityRenderObject::doAXRangeForLine):
3414         (WebCore::AccessibilityRenderObject::doAXStringForRange):
3415         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
3416         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3417         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3418         (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole):
3419         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
3420         (WebCore::AccessibilityRenderObject::canHaveChildren):
3421         (WebCore::AccessibilityRenderObject::actionVerb):
3422         (WebCore::shouldReturnTagNameAsRoleForMSAA):
3423         * accessibility/AccessibilityRenderObject.h:
3424         (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject):
3425         * accessibility/AccessibilitySlider.cpp:
3426         (WebCore::AccessibilitySlider::orientation):
3427         * accessibility/AccessibilitySlider.h:
3428         (WebCore::AccessibilitySlider::~AccessibilitySlider):
3429         (WebCore::AccessibilitySlider::roleValue):
3430         (WebCore::AccessibilitySlider::accessibilityIsIgnored):
3431         (WebCore::AccessibilitySlider::isSlider):
3432         (WebCore::AccessibilitySlider::canSetValueAttribute):
3433         (WebCore::AccessibilitySliderThumb::~AccessibilitySliderThumb):
3434         (WebCore::AccessibilitySliderThumb::roleValue):
3435         (WebCore::AccessibilitySliderThumb::accessibilityIsIgnored):
3436         (WebCore::AccessibilitySliderThumb::setParentObject):
3437         (WebCore::AccessibilitySliderThumb::parentObject):
3438         * accessibility/AccessibilityTable.cpp:
3439         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
3440         * accessibility/AccessibilityTableColumn.cpp:
3441         * accessibility/AccessibilityTableHeaderContainer.cpp:
3442         (WebCore::AccessibilityTableHeaderContainer::addChildren):
3443         * accessibility/AccessibilityTableRow.cpp:
3444         * accessibility/mac/AccessibilityObjectWrapper.h:
3445
3446 2009-11-02  Darin Fisher  <darin@chromium.org>
3447
3448         Fixing JSC build bustage.
3449
3450         * bindings/js/ScriptController.cpp: Added missing #include
3451
3452 2009-10-30  Darin Fisher  <darin@chromium.org>
3453
3454         Reviewed by Adam Barth.
3455
3456         Give the FrameLoaderClient the ability to override Settings::isJavaScriptEnabled.
3457         https://bugs.webkit.org/show_bug.cgi?id=30967
3458
3459         * bindings/js/ScriptController.cpp:
3460         (WebCore::ScriptController::isEnabled):
3461         * bindings/v8/ScriptController.cpp:
3462         (WebCore::ScriptController::isEnabled):
3463         * bindings/v8/V8Proxy.cpp: Move implementation of isEnabled to ScriptController
3464         * bindings/v8/V8Proxy.h: Ditto
3465         * loader/FrameLoaderClient.h:
3466         (WebCore::FrameLoaderClient::allowJavaScript):
3467         * platform/chromium/ChromiumBridge.h: Delete uiResourceProtocol function
3468
3469 2009-11-02  Brady Eidson  <beidson@apple.com>
3470
3471         Rubberstamped by Mark Rowe.
3472
3473         Fix a typo in Mark's last commit.
3474
3475         * loader/archive/ArchiveFactory.cpp:
3476         (WebCore::archiveMIMETypes):
3477
3478 2009-11-02  Mark Rowe  <mrowe@apple.com>
3479
3480         Rubber-stamped by Brady Eidson.
3481
3482         Re-enable support for web archives on Windows.  It was mistakenly disabled in r50438.
3483
3484         * loader/archive/ArchiveFactory.cpp:
3485         (WebCore::archiveMIMETypes):
3486
3487 2009-11-02  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3488
3489         Reviewed by Darin Adler.
3490
3491         PLATFORM(CF) should be set when building for Qt on Darwin
3492         https://bugs.webkit.org/show_bug.cgi?id=23671
3493
3494         * WebCore.pro: Add SharedBufferCF.cpp and SmartReplaceCF.cpp
3495         to the Darwin build.
3496         * loader/archive/ArchiveFactory.cpp: Change the support for 
3497         legacy WebArchive from all CF platforms to Mac and Chromium 
3498         CF platforms.
3499         (WebCore::archiveMIMETypes):
3500         * platform/text/AtomicString.h: Remove PLATFORM(QT) &&
3501         PLATFORM(DARWIN) test as it is redundant now.
3502         * platform/text/PlatformString.h: Ditto.
3503         * platform/text/StringImpl.h: Ditto.
3504         * platform/text/cf/StringCF.cpp: Ditto.
3505         * platform/text/cf/StringImplCF.cpp: Ditto.
3506
3507 2009-11-02  Adam Barth  <abarth@webkit.org>
3508
3509         Reviewed by David Levin.
3510
3511         [Chromium] Actually declare getPluginMimeTypeFromExtension in a header.
3512         https://bugs.webkit.org/show_bug.cgi?id=30985
3513
3514         Our current code does not conform to our style guide.
3515
3516         * WebCore.gyp/WebCore.gyp:
3517         * WebCore.gypi:
3518         * platform/chromium/MIMETypeRegistryChromium.cpp:
3519         * plugins/chromium/PluginDataChromium.cpp:
3520         * plugins/chromium/PluginDataChromium.h: Added.
3521
3522 2009-11-02  Adele Peterson  <adele@apple.com>
3523
3524         Reviewed by Darin Adler.
3525
3526         Fix for <rdar://problem/7038305> REGRESSION (Safari 4.0.2 - ToT): After navigating back to a known phishy page, the "Ignore warning" button appears highlighted (along with the "Go Back" button)
3527
3528         This bug is timing dependent, and not always reproducible.  I could not think of a way to add a 
3529         layout test that would demonstrate the problem and fix.
3530
3531         * platform/mac/ThemeMac.mm:
3532         (WebCore::checkbox): Update style.
3533         (WebCore::paintCheckbox): ditto.
3534         (WebCore::radio): ditto.
3535         (WebCore::paintRadio): ditto.
3536         (WebCore::setupButtonCell): Added convenience method.
3537         (WebCore::button): Use a separate NSButtonCell for defaultButtons and regular buttons.
3538         (WebCore::paintButton): Don't check for the key window here.  Consider that when deciding if the button should have the default style in RenderTheme.
3539         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isDefault): Only consider a button to be default if the page is active.  This fixes 
3540         a problem I noticed where the button would flicker crazily if the page with the default button was in the background.
3541
3542 2009-11-02  Dan Bernstein  <mitz@apple.com>
3543
3544         Reviewed by Anders Carlsson.
3545
3546         Minor RenderWidget clean-up in preparation for deferring widget tree
3547         mutation when it is not safe.
3548
3549         * rendering/RenderWidget.cpp:
3550         (WebCore::RenderWidget::RenderWidget): Initialize m_refCount to 1
3551         instead of calling ref().
3552         (WebCore::RenderWidget::destroy): Call setWidget(0) instead of
3553         repeating what it does.
3554         (WebCore::RenderWidget::setWidgetGeometry): Now returns a boolean
3555         indicating whether the bounds have changed.
3556         (WebCore::RenderWidget::setWidget): Replaced all-encompassing if
3557         statement with an early return.
3558         (WebCore::RenderWidget::updateWidgetPosition): Call setWidgetGeometry().
3559         * rendering/RenderWidget.h:
3560
3561 2009-11-02  Dumitru Daniliuc  <dumi@chromium.org>
3562
3563         Reviewed by Dimitri Glazkov.
3564
3565         Adding Chromium's DatabaseTracker and SQLTransactionClient
3566         implementations.
3567
3568         https://bugs.webkit.org/show_bug.cgi?id=30701
3569
3570         * storage/chromium: Added.
3571         * storage/chromium/DatabaseObserver.h: Added.
3572         * storage/chromium/DatabaseTrackerChromium.cpp: Added.
3573         * storage/chromium/QuotaTracker.cpp: Added.
3574         * storage/chromium/QuotaTracker.h: Added.
3575         * storage/chromium/SQLTransactionClientChromium.cpp: Added.
3576
3577 2009-11-02  Enrica Casucci  <enrica@apple.com>
3578
3579         Reviewed by Adele Peterson and Dan Bernstein.
3580
3581         Safari crashes when calling execCommand on formatted html in special case
3582         <rdar://problem/7318656>
3583         https://bugs.webkit.org/show_bug.cgi?id=31023
3584
3585         Test: editing/execCommand/align-in-span.html
3586
3587         * rendering/RenderObject.cpp:
3588         (WebCore::RenderObject::containingBlock): Modified comment on containingBlock returning NULL.
3589         * rendering/RenderText.cpp:
3590         (WebCore::RenderText::setSelectionState): Added check for NULL return from containingBlock,
3591         since it is possible when dealing with orphaned trees.
3592
3593 2009-11-02  Chris Marrin  <cmarrin@apple.com>
3594
3595         Reviewed by Oliver Hunt.
3596
3597         Exception checks were being too aggressive
3598         https://bugs.webkit.org/show_bug.cgi?id=31005
3599
3600         Several calls in CanvasRenderingContext3D are allowed to
3601         have a null value passed, which indicated that the 
3602         object is being unbound. Handle this case and the corresponding
3603         null handling in GraphicsContext3DMac.
3604
3605         * html/canvas/CanvasRenderingContext3D.cpp:
3606         (WebCore::CanvasRenderingContext3D::bindBuffer):
3607         (WebCore::CanvasRenderingContext3D::bindFramebuffer):
3608         (WebCore::CanvasRenderingContext3D::bindRenderbuffer):
3609         (WebCore::CanvasRenderingContext3D::bindTexture):
3610         (WebCore::CanvasRenderingContext3D::framebufferRenderbuffer):
3611         (WebCore::CanvasRenderingContext3D::framebufferTexture2D):
3612         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3613         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
3614         (WebCore::GraphicsContext3D::framebufferTexture2D):
3615
3616 2009-11-02  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3617
3618         Reviewed by Timothy Hatcher.
3619
3620         Each JS execution in console adds extra item into "scripts" combo
3621         https://bugs.webkit.org/show_bug.cgi?id=30212
3622
3623         Added manual test
3624
3625         * inspector/front-end/ScriptsPanel.js:
3626         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3627         * manual-tests/inspector/hidden-evals.html: Added.