2010-08-25 Tony Chang <tony@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-08-25  Dawit Alemayehu  <adawit@kde.org>
2
3         Reviewed by Ariya Hidayat.
4
5         Proper workaround for missing Gtk initialization in Adobe's flash plugins.
6         https://bugs.webkit.org/show_bug.cgi?id=44405
7
8         * plugins/qt/PluginPackageQt.cpp:
9         (WebCore::initializeGtk):
10         (WebCore::PluginPackage::load):
11
12 2010-08-25  Ilya Tikhonovsky  <loislo@chromium.org>
13
14         Reviewed by Yury Semikhatsky.
15
16         WebInspector: InspectorBackendStub.js is not updated when Inspector.idl changes.
17         https://bugs.webkit.org/show_bug.cgi?id=44604
18
19         * WebCore.xcodeproj/project.pbxproj:
20
21 2010-08-25  Pavel Podivilov  <podivilov@chromium.org>
22
23         Reviewed by Yury Semikhatsky.
24
25         Web Inspector: don't stop on DOM breakpoints when all breakpoints are deactivated
26         https://bugs.webkit.org/show_bug.cgi?id=44509
27
28         * bindings/v8/ScriptDebugServer.cpp:
29         (WebCore::ScriptDebugServer::ScriptDebugServer):
30         (WebCore::ScriptDebugServer::setBreakpointsActivated):
31         (WebCore::ScriptDebugServer::breakProgram):
32         * bindings/v8/ScriptDebugServer.h:
33         * inspector/InspectorDebuggerAgent.cpp:
34         (WebCore::InspectorDebuggerAgent::create):
35
36 2010-08-25  Yury Semikhatsky  <yurys@chromium.org>
37
38         Reviewed by Pavel Feldman.
39
40         Web Inspector: lazily request frontend settings instead of pushing them on connect
41         https://bugs.webkit.org/show_bug.cgi?id=44607
42
43         * html/HTMLDocument.cpp:
44         (WebCore::HTMLDocument::createParser):
45         * inspector/Inspector.idl:
46         * inspector/InspectorController.cpp:
47         (WebCore::InspectorController::getSettings):
48         (WebCore::InspectorController::connectFrontend):
49         (WebCore::InspectorController::populateScriptObjects): this method is now called explicitely from the frontend,
50         it should be gone eventually once all panels request initial data lazily.
51         * inspector/InspectorController.h:
52         * inspector/front-end/ProfilesPanel.js:
53         (WebInspector.ProfilesPanel.prototype.show):
54         (WebInspector.ProfilesPanel.prototype.profilerWasEnabled):
55         (WebInspector.ProfilesPanel.prototype._reset):
56         * inspector/front-end/Settings.js:
57         (WebInspector.Settings):
58         (WebInspector.Settings.initialize.populateApplicationSettings):
59         (WebInspector.Settings.initialize.populateSessionSettings):
60         (WebInspector.Settings.initialize):
61         * inspector/front-end/inspector.js:
62         (WebInspector.doLoadedDone):
63
64 2010-08-25  Pavel Feldman  <pfeldman@chromium.org>
65
66         Reviewed by Yury Semikhatsky.
67
68         Web Inspector: support checked and disabled context menu items.
69         https://bugs.webkit.org/show_bug.cgi?id=44612
70
71         * platform/ContextMenu.cpp:
72         (WebCore::ContextMenu::checkOrEnableIfNeeded):
73
74 2010-08-25  Pavel Feldman  <pfeldman@chromium.org>
75
76         Reviewed by Yury Semikhatsky.
77
78         Web Inspector: support disabled and checked context menu items.
79         https://bugs.webkit.org/show_bug.cgi?id=44601
80
81         * bindings/js/JSInspectorFrontendHostCustom.cpp:
82         (WebCore::JSInspectorFrontendHost::showContextMenu):
83         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
84         (WebCore::V8InspectorFrontendHost::showContextMenuCallback):
85         * inspector/front-end/ContextMenu.js:
86         (WebInspector.ContextMenu.prototype.appendItem):
87
88 2010-08-25  Zaheer Ahmad <zaheer.mot@gmail.com>
89
90         Reviewed by Xan Lopez.
91
92         [GTK] GTK port doesnt compile with video turned off
93         https://bugs.webkit.org/show_bug.cgi?id=44236
94
95         Generate the audio GObject DOM bindings only if video enabled
96         * WebCore/GNUMakefile.am
97         * WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
98         Make the audio code invocation conditional
99
100
101 2010-08-24  Pavel Podivilov  <podivilov@chromium.org>
102
103         Reviewed by Pavel Feldman.
104
105         Web Inspector: add "Attribute Modified" and "Node Removed" DOM breakpoints
106         https://bugs.webkit.org/show_bug.cgi?id=44532
107
108         Test: inspector/dom-breakpoint.html
109
110         * inspector/InspectorDOMAgent.cpp:
111         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
112         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
113         (WebCore::InspectorDOMAgent::didInsertDOMNode):
114         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
115         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
116         * inspector/front-end/DOMAgent.js:
117         * inspector/front-end/ElementsTreeOutline.js:
118         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
119
120 2010-08-25  Satish Sampath  <satish@chromium.org>
121
122         Reviewed by Jeremy Orlow.
123
124         Pass the element's bounds to embedder during speech recognition.
125         https://bugs.webkit.org/show_bug.cgi?id=44427
126
127         The embedder would typically want to show a native UI with information, settings etc.
128         By passing the display bounds of the html element, the embedder can position the
129         native speech recognition UI appropriately.
130
131         * page/SpeechInput.cpp:
132         (WebCore::SpeechInput::startRecognition):
133         * page/SpeechInput.h:
134         * page/SpeechInputClient.h:
135         * platform/mock/SpeechInputClientMock.cpp:
136         (WebCore::SpeechInputClientMock::startRecognition):
137         * platform/mock/SpeechInputClientMock.h:
138         * rendering/TextControlInnerElements.cpp:
139         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
140         (WebCore::InputFieldSpeechButtonElement::detach):
141
142 2010-08-25  Yongjun Zhang  <yongjun_zhang@apple.com>
143
144         Reviewed by Alexey Proskuryakov.
145
146         https://bugs.webkit.org/show_bug.cgi?id=44461
147         Assertion failure at WebCore/platform/network/CredentialStorage.cpp:85.
148
149         Remove the assertion at CredentialStorage.cpp:85 since it is legal to have
150         multiple forward slashes after the path component.
151
152         No test needed.
153
154         * platform/network/CredentialStorage.cpp:
155         (WebCore::protectionSpaceMapKeyFromURL):
156
157 2010-08-25  Pavel Feldman  <pfeldman@chromium.org>
158
159         Reviewed by Yury Semikhatsky.
160
161         Web Inspector: search in Scripts panel brings ui back to original search view.
162         https://bugs.webkit.org/show_bug.cgi?id=44516
163
164         * inspector/front-end/Panel.js:
165         (WebInspector.Panel.prototype.searchCanceled):
166         (WebInspector.Panel.prototype.jumpToNextSearchResult):
167         (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
168         * inspector/front-end/ResourcesPanel.js:
169         * inspector/front-end/ScriptsPanel.js:
170         (WebInspector.ScriptsPanel):
171         (WebInspector.ScriptsPanel.prototype.searchCanceled):
172         (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
173         (WebInspector.ScriptsPanel.prototype.performSearch):
174         (WebInspector.ScriptsPanel.prototype.jumpToNextSearchResult):
175         (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
176
177 2010-08-25  Kent Tamura  <tkent@chromium.org>
178
179         Reviewed by Shinichiro Hamaji
180
181         <input type=number>: Support auto-repeat by mouse press
182         https://bugs.webkit.org/show_bug.cgi?id=44476
183
184         Like arrow button of scrollbars, spinbuttons of <input
185         type=number> should continue to increase/decrease their values
186         while the mouse button is pressed.
187
188         No new tests because the new behavior strongly depends on a timer.
189
190         * rendering/TextControlInnerElements.cpp:
191         (WebCore::SpinButtonElement::SpinButtonElement):
192          Initializes the timer.
193         (WebCore::SpinButtonElement::defaultEventHandler):
194          Starts the timer by a mousedown event.
195         (WebCore::SpinButtonElement::startRepeatingTimer):
196         (WebCore::SpinButtonElement::stopRepeatingTimer):
197         (WebCore::SpinButtonElement::repeatingTimerFired):
198         * rendering/TextControlInnerElements.h:
199
200 2010-08-25  Gabor Loki  <loki@webkit.org>
201
202         Reviewed by Gavin Barraclough.
203
204         Avoid increasing required alignment of target type warning
205         https://bugs.webkit.org/show_bug.cgi?id=43963
206
207         Fix alignment warnings on Qt.
208
209         * bridge/qt/qt_runtime.cpp:
210         (JSC::Bindings::convertQVariantToValue):
211         * platform/graphics/qt/ImageBufferQt.cpp:
212         (WebCore::getImageData):
213         (WebCore::putImageData):
214         * platform/image-decoders/ImageDecoder.h:
215         (WebCore::RGBA32Buffer::getAddr):
216         * platform/text/qt/TextCodecQt.cpp:
217         (WebCore::TextCodecQt::decode):
218
219 2010-08-25  Kent Tamura  <tkent@chromium.org>
220
221         Reviewed by Shinichiro Hamaji
222
223         Fix a bug that a spin-button doesn't release mouse capturing
224         https://bugs.webkit.org/show_bug.cgi?id=44411
225
226         - LeftButton should be checked only for clickEvent.
227           Note that this change doesn't change the behavior because
228           button() value is initialized with LeftButton even for
229           mousemoveEvent.
230         - Should pass a SpinButtonElement node to setCapturingMouseEventsNode().
231
232         Test: fast/forms/input-spinbutton-capturing.html
233
234         * rendering/TextControlInnerElements.cpp:
235         (WebCore::SpinButtonElement::defaultEventHandler):
236
237 2010-08-25  Gabor Loki  <loki@webkit.org>
238
239         Reviewed by Gavin Barraclough.
240
241         Avoid increasing required alignment of target type warning
242         https://bugs.webkit.org/show_bug.cgi?id=43963
243
244         Fix platform independent alignment warnings.
245
246         * loader/CachedMetadata.h:
247         (WebCore::CachedMetadata::readUnsigned):
248         * platform/text/TextCodecLatin1.cpp:
249         (WebCore::TextCodecLatin1::decode):
250
251 2010-08-25  Patrick Gansterer  <paroga@paroga.com>
252
253         Reviewed by Adam Roben.
254
255         Add missing methods at ResourceHandleWin
256         https://bugs.webkit.org/show_bug.cgi?id=44453
257
258         * platform/network/win/ResourceHandleWin.cpp:
259         (WebCore::ResourceHandle::willLoadFromCache):
260         (WebCore::prefetchDNS):
261         (WebCore::ResourceHandle::bufferedData):
262         (WebCore::ResourceHandle::supportsBufferedData):
263         (WebCore::ResourceHandle::loadsBlocked):
264         (WebCore::ResourceHandle::platformSetDefersLoading):
265
266 2010-08-25  Adam Barth  <abarth@webkit.org>
267
268         Second attempt to fix Qt build
269
270         * dom/XMLDocumentParserQt.cpp:
271         (WebCore::XMLDocumentParser::parseDtd):
272
273 2010-08-24  Eric Seidel  <eric@webkit.org>
274
275         Reviewed by Adam Barth.
276
277         Remove more DTD junk now that the LegacyHTMLDocumentParser is gone
278         https://bugs.webkit.org/show_bug.cgi?id=44588
279
280         Just removing dead code, thus no tests.
281
282         * html/HTMLElement.cpp:
283         (WebCore::HTMLElement::nodeName):
284         * html/HTMLElement.h:
285
286 2010-08-24  Adam Barth  <abarth@webkit.org>
287
288         Qt build fix.
289
290         * dom/XMLDocumentParserQt.cpp:
291         (WebCore::XMLDocumentParser::parseStartElement):
292         (WebCore::XMLDocumentParser::parseProcessingInstruction):
293         (WebCore::XMLDocumentParser::parseCdata):
294         (WebCore::XMLDocumentParser::parseComment):
295         (WebCore::XMLDocumentParser::parseDtd):
296
297 2010-08-24  Adam Barth  <abarth@webkit.org>
298
299         Reviewed by Eric Seidel.
300
301         Delete HTMLElement::checkDTD
302         https://bugs.webkit.org/show_bug.cgi?id=44563
303
304         This function existed to service the LegacyHTMLTreeBuilder.  The new
305         HTMLTreeBuilder has this logic internalized.  Pulling on this thread
306         caused me to remove a legacyParserAddChild and to discover some code
307         that shouldn't be calling these parser-specific APIs.
308
309         * dom/ContainerNode.cpp:
310         (WebCore::ContainerNode::parserAddChild):
311         (WebCore::ContainerNode::deprecatedParserAddChild):
312         * dom/ContainerNode.h:
313         * dom/DOMImplementation.cpp:
314         (WebCore::DOMImplementation::createDocument):
315         * dom/Node.cpp:
316         (WebCore::Node::deprecatedParserAddChild):
317         * dom/Node.h:
318         * dom/XMLDocumentParser.cpp:
319         (WebCore::XMLDocumentParser::enterText):
320         * dom/XMLDocumentParser.h:
321         * dom/XMLDocumentParserLibxml2.cpp:
322         (WebCore::XMLDocumentParser::startElementNs):
323         (WebCore::XMLDocumentParser::characters):
324         (WebCore::XMLDocumentParser::processingInstruction):
325         (WebCore::XMLDocumentParser::cdataBlock):
326         (WebCore::XMLDocumentParser::comment):
327         (WebCore::XMLDocumentParser::internalSubset):
328         * dom/XMLDocumentParserQt.cpp:
329         (WebCore::XMLDocumentParser::parse):
330         (WebCore::XMLDocumentParser::parseStartElement):
331         (WebCore::XMLDocumentParser::parseCharacters):
332         (WebCore::XMLDocumentParser::parseProcessingInstruction):
333         (WebCore::XMLDocumentParser::parseCdata):
334         (WebCore::XMLDocumentParser::parseComment):
335         (WebCore::XMLDocumentParser::parseDtd):
336         * html/HTMLDataGridElement.cpp:
337         * html/HTMLDataGridElement.h:
338         * html/HTMLDataGridRowElement.cpp:
339         * html/HTMLDataGridRowElement.h:
340         * html/HTMLDataListElement.cpp:
341         * html/HTMLDataListElement.h:
342         * html/HTMLDocument.cpp:
343         * html/HTMLDocument.h:
344         * html/HTMLElement.cpp:
345         * html/HTMLElement.h:
346         * html/HTMLFieldSetElement.cpp:
347         * html/HTMLFieldSetElement.h:
348         * html/HTMLFrameSetElement.cpp:
349         * html/HTMLFrameSetElement.h:
350         * html/HTMLHeadElement.cpp:
351         * html/HTMLHeadElement.h:
352         * html/HTMLHeadingElement.cpp:
353         * html/HTMLHeadingElement.h:
354         * html/HTMLHtmlElement.cpp:
355         * html/HTMLHtmlElement.h:
356         * html/HTMLKeygenElement.cpp:
357         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
358         * html/HTMLMapElement.cpp:
359         * html/HTMLMapElement.h:
360         * html/HTMLMediaElement.cpp:
361         * html/HTMLMediaElement.h:
362         * html/HTMLNoScriptElement.cpp:
363         * html/HTMLNoScriptElement.h:
364         * html/HTMLOptGroupElement.cpp:
365         * html/HTMLOptGroupElement.h:
366         * html/HTMLOptionElement.cpp:
367         * html/HTMLOptionElement.h:
368         * html/HTMLParagraphElement.cpp:
369         * html/HTMLParagraphElement.h:
370         * html/HTMLPlugInElement.cpp:
371         * html/HTMLPlugInElement.h:
372         * html/HTMLScriptElement.h:
373         * html/HTMLSelectElement.cpp:
374         * html/HTMLSelectElement.h:
375         * html/HTMLStyleElement.h:
376         * html/HTMLTableColElement.cpp:
377         * html/HTMLTableColElement.h:
378         * html/HTMLTableElement.cpp:
379         * html/HTMLTableElement.h:
380         * html/HTMLTableRowElement.cpp:
381         * html/HTMLTableRowElement.h:
382         * html/HTMLTableSectionElement.cpp:
383         * html/HTMLTableSectionElement.h:
384         * html/HTMLTextAreaElement.h:
385         * html/HTMLTitleElement.h:
386         * rendering/MediaControlElements.cpp:
387         (WebCore::MediaControlElement::attachToParent):
388         (WebCore::MediaControlInputElement::attachToParent):
389         * rendering/TextControlInnerElements.cpp:
390         (WebCore::TextControlInnerElement::attachInnerElement):
391
392 2010-08-24  Adam Barth  <abarth@webkit.org>
393
394         Reviewed by Eric Seidel.
395
396         Remove tagPriority
397         https://bugs.webkit.org/show_bug.cgi?id=44557
398
399         This code used to be used by the old parser.  Now it's unused.
400
401         * html/HTMLAnchorElement.h:
402         * html/HTMLAppletElement.h:
403         * html/HTMLAreaElement.h:
404         * html/HTMLAudioElement.h:
405         * html/HTMLBRElement.h:
406         * html/HTMLBaseElement.h:
407         * html/HTMLBaseFontElement.h:
408         * html/HTMLBlockquoteElement.h:
409         * html/HTMLBodyElement.h:
410         * html/HTMLCanvasElement.cpp:
411         * html/HTMLCanvasElement.h:
412         * html/HTMLDListElement.h:
413         * html/HTMLDataGridCellElement.h:
414         * html/HTMLDataGridColElement.h:
415         * html/HTMLDataGridElement.h:
416         * html/HTMLDataGridRowElement.h:
417         * html/HTMLDirectoryElement.h:
418         * html/HTMLDivElement.h:
419         * html/HTMLElement.cpp:
420         * html/HTMLElement.h:
421         * html/HTMLEmbedElement.h:
422         * html/HTMLFieldSetElement.h:
423         * html/HTMLFontElement.h:
424         * html/HTMLFormControlElement.h:
425         * html/HTMLFormElement.h:
426         * html/HTMLFrameElement.h:
427         * html/HTMLFrameSetElement.h:
428         * html/HTMLHRElement.h:
429         * html/HTMLHeadElement.h:
430         * html/HTMLHeadingElement.h:
431         * html/HTMLHtmlElement.h:
432         * html/HTMLIFrameElement.h:
433         * html/HTMLImageElement.h:
434         * html/HTMLInputElement.h:
435         * html/HTMLIsIndexElement.h:
436         * html/HTMLKeygenElement.h:
437         * html/HTMLLIElement.h:
438         * html/HTMLLabelElement.h:
439         * html/HTMLLinkElement.h:
440         * html/HTMLMapElement.h:
441         * html/HTMLMarqueeElement.h:
442         * html/HTMLMenuElement.h:
443         * html/HTMLMetaElement.h:
444         * html/HTMLModElement.h:
445         * html/HTMLOListElement.h:
446         * html/HTMLObjectElement.h:
447         * html/HTMLOptionElement.h:
448         * html/HTMLParagraphElement.h:
449         * html/HTMLParamElement.h:
450         * html/HTMLPreElement.h:
451         * html/HTMLQuoteElement.h:
452         * html/HTMLScriptElement.h:
453         * html/HTMLSelectElement.h:
454         * html/HTMLSourceElement.h:
455         * html/HTMLStyleElement.h:
456         * html/HTMLTableCaptionElement.h:
457         * html/HTMLTableCellElement.h:
458         * html/HTMLTableColElement.cpp:
459         * html/HTMLTableColElement.h:
460         * html/HTMLTableElement.h:
461         * html/HTMLTableRowElement.h:
462         * html/HTMLTableSectionElement.h:
463         * html/HTMLUListElement.h:
464         * html/HTMLVideoElement.h:
465
466 2010-08-24  Eric Seidel  <eric@webkit.org>
467
468         Reviewed by Adam Barth.
469
470         Fix one more html5lib test case for button scoping
471         https://bugs.webkit.org/show_bug.cgi?id=44583
472
473         I <3 test driven development.
474
475         * html/HTMLTreeBuilder.cpp:
476         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
477
478 2010-08-24  Eric Seidel  <eric@webkit.org>
479
480         Reviewed by Adam Barth.
481
482         Remove HTML5 parser testing infrastructure now that we don't need it
483         https://bugs.webkit.org/show_bug.cgi?id=44581
484
485         Just removing dead code, no tests.
486
487         * dom/DocumentFragment.cpp:
488         * dom/DocumentFragment.h:
489         * page/Settings.cpp:
490         (WebCore::Settings::Settings):
491         * page/Settings.h:
492
493 2010-08-24  Adam Barth  <abarth@webkit.org>
494
495         Reviewed by Eric Seidel.
496
497         Remove unneeded include in HTMLPreloadScanner
498         https://bugs.webkit.org/show_bug.cgi?id=44552
499
500         Slowly but steadily sweeping up the dust in the HTML parser.
501
502         * html/HTMLPreloadScanner.cpp:
503         * html/HTMLPreloadScanner.h:
504
505 2010-08-24  Kinuko Yasuda  <kinuko@chromium.org>
506
507         Reviewed by Dumitru Daniliuc.
508
509         Implement virtual path utilities for FileSystem API
510         https://bugs.webkit.org/show_bug.cgi?id=44132
511
512         No new tests; tests will be added later. (Each DOMFilePath's method is briefly tested locally.)
513
514         * CMakeLists.txt:
515         * GNUmakefile.am:
516         * WebCore.gypi:
517         * WebCore.pro:
518         * WebCore.vcproj/WebCore.vcproj:
519         * WebCore.xcodeproj/project.pbxproj:
520         * storage/DOMFilePath.cpp: Added.
521         * storage/DOMFilePath.h: Added.
522
523 2010-08-24  Adam Barth  <abarth@webkit.org>
524
525         Reviewed by Eric Seidel.
526
527         HTMLParserScheduler::create
528         https://bugs.webkit.org/show_bug.cgi?id=44551
529
530         * html/HTMLDocumentParser.cpp:
531         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
532         * html/HTMLParserScheduler.h:
533         (WebCore::HTMLParserScheduler::create):
534
535 2010-08-24  Daniel Bates  <dbates@rim.com>
536
537         Fix code comment as per Darin Adler's suggestion in <https://bugs.webkit.org/show_bug.cgi?id=44486#c2>.
538         I inadvertently did not update this comment when I landed changeset 65967 <http://trac.webkit.org/changeset/65967>.
539
540         * rendering/RenderListMarker.cpp:
541         (WebCore::listMarkerSuffix):
542
543 2010-08-24  Daniel Bates  <dbates@rim.com>
544
545         Reviewed by Darin Adler.
546
547         Suffix for CSS alphabetic list style types should fallback to
548         decimal for ordinals outside of their representable range
549         https://bugs.webkit.org/show_bug.cgi?id=44486
550
551         Test: fast/lists/w3-css3-list-styles-fallback-style.html
552
553         Fixes an issue where the decimal suffix is not used for
554         ordinals that cannot be represented by the alphabetic list
555         style type.
556
557         Currently, for ordinals that cannot be represented in the
558         alphabetic list style we use the suffix associated with the
559         list style. Instead, we should use the suffix for the decimal
560         list style ('.'). For instance, when the list style type is
561         Afar and the starting ordinal is 0, then we fallback to the
562         decimal list style suffix '.' because 0 cannot be represented
563         in Afar.
564
565         * rendering/RenderListMarker.cpp:
566         (WebCore::toRoman): Moved bounds check into WebCore::effectiveListMarkerType().
567         (WebCore::toAlphabetic): Ditto.
568         (WebCore::toHebrew): Ditto.
569         (WebCore::toArmenian): Ditto.
570         (WebCore::toGeorgian): Ditto.
571         (WebCore::toCJKIdeographic): Ditto.
572         (WebCore::effectiveListMarkerType): Added.
573         (WebCore::listMarkerSuffix): Added value parameter to prototype.
574         Modified to call WebCore::effectiveListMarkerType.
575         (WebCore::listMarkerText): Modified to call WebCore::effectiveListMarkerType().
576         (WebCore::RenderListMarker::paint): Modified to pass list item ordinal (i.e. m_listItem->value()) to WebCore::listMarkerSuffix().
577         (WebCore::RenderListMarker::calcPrefWidths): Ditto.
578         (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
579
580 2010-08-24  Gavin Barraclough  <barraclough@apple.com>
581
582         Windows build fix.
583
584         * ForwardingHeaders/wtf/DecimalNumber.h: Added.
585
586 2010-08-23  Gavin Barraclough  <barraclough@apple.com>
587
588         Reviewed by Oliver Hunt.
589
590         https://bugs.webkit.org/show_bug.cgi?id=44487
591
592         * html/LegacyHTMLTreeBuilder.cpp:
593         (WebCore::serializeForNumberType):
594             Update function call to numberToString.
595
596 2010-08-24  Eric Seidel  <eric@webkit.org>
597
598         Reviewed by Adam Barth.
599
600         XMLDocumentParser needs to implement DocumentParser::detach()
601         https://bugs.webkit.org/show_bug.cgi?id=44533
602
603         Test: fast/frames/set-parent-src-synchronously.xhtml
604
605         In the example from the page we were accessing document()
606         after DocumentParser::detach() was called.  To prevent this
607         I added an ASSERT(m_document) to document(), causing many
608         test cases to cover the bug shown in bug 44533.
609
610         To fix the bug, I implemented XMLDocumentParser::detach()
611         and had it call clearCurrentNodeStack(), thus making
612         it impossible for XMLDocumentParser to still have the Document
613         on the node stack after detach (which was what was causing this bug).
614
615         While fixing this, I noticed that XMLDocumentParser may have the
616         same trouble crashing that the HTMLDocumentParser did when
617         synchronously deleted from JS (for example by an iframe navigation).
618         I added a test case to cover this and protected the parser after
619         the two places it executes scripts.
620
621         * dom/DocumentParser.h:
622         (WebCore::DocumentParser::document):
623         (WebCore::DocumentParser::isDetached):
624         * dom/RawDataDocumentParser.h:
625         (WebCore::RawDataDocumentParser::finish):
626         * dom/XMLDocumentParser.cpp:
627         (WebCore::XMLDocumentParser::append):
628         (WebCore::XMLDocumentParser::detach):
629         (WebCore::XMLDocumentParser::notifyFinished):
630         * dom/XMLDocumentParser.h:
631         * dom/XMLDocumentParserLibxml2.cpp:
632         (WebCore::XMLDocumentParser::doWrite):
633         (WebCore::XMLDocumentParser::endElementNs):
634         (WebCore::XMLDocumentParser::resumeParsing):
635         * html/HTMLDocumentParser.cpp:
636         (WebCore::HTMLDocumentParser::pumpTokenizer):
637         (WebCore::HTMLDocumentParser::willPumpLexer):
638         (WebCore::HTMLDocumentParser::didPumpLexer):
639         (WebCore::HTMLDocumentParser::end):
640         (WebCore::HTMLDocumentParser::endIfDelayed):
641         (WebCore::HTMLDocumentParser::script):
642         * html/HTMLViewSourceParser.cpp:
643         (WebCore::HTMLViewSourceParser::updateTokenizerState):
644         * html/HTMLViewSourceParser.h:
645         (WebCore::HTMLViewSourceParser::document):
646         * loader/ImageDocument.cpp:
647         (WebCore::ImageDocumentParser::document):
648
649 2010-08-24  Patrick Gansterer  <paroga@paroga.com>
650
651         Reviewed by Adam Roben.
652
653         Add SynchronousLoader for ResourceHandleWin
654         https://bugs.webkit.org/show_bug.cgi?id=44452
655
656         * platform/network/win/ResourceHandleWin.cpp:
657         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
658         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
659         (WebCore::WebCoreSynchronousLoader::didReceiveData):
660         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
661         (WebCore::WebCoreSynchronousLoader::didFail):
662         (WebCore::ResourceHandle::loadResourceSynchronously):
663
664 2010-08-24  Ryosuke Niwa  <rniwa@webkit.org>
665
666         Unreviewed.
667
668         Replaced soft tab indentation by hard tab indentation for LegacyWebArchive.h.
669
670         * WebCore.xcodeproj/project.pbxproj:
671
672 2010-08-24  Joseph Pecoraro  <joepeck@webkit.org>
673
674         Reviewed by Mark Rowe.
675
676         Web Inspector: RemoteInspectorFrontend can be renamed to InspectorFrontend
677         https://bugs.webkit.org/show_bug.cgi?id=44499
678
679         Follow-up. No longer generate the RemoteInspectorFrontend files, just
680         generate the required InspectorFrontend files.
681
682         * DerivedSources.make:
683
684 2010-08-20  Joseph Pecoraro  <joepeck@webkit.org>
685
686         Reviewed by Pavel Feldman.
687
688         Web Inspector: Backend Should Provide Full Supported CSS Properties List
689         https://bugs.webkit.org/show_bug.cgi?id=40886
690
691         This allows the backend to send the front-end its complete list of
692         supported CSS Properties. This is used in CSS Autocompletion and
693         CSS Syntax Highlighting to show which styles are supported.
694
695         * css/makeprop.pl: moved CSS properties to the header file.
696         * inspector/Inspector.idl: expose getSupportedCSSProperties.
697         * inspector/InspectorDOMAgent.cpp:
698         (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
699         * inspector/InspectorDOMAgent.h:
700         * inspector/front-end/CSSCompletions.js:
701         (WebInspector.CSSCompletions._firstIndexOfPrefix): handle a possible error case before properties have loaded.
702         (WebInspector.CSSCompletions._load): fill up the special array with the received properties.
703         * inspector/front-end/SourceCSSTokenizer.js:
704         (WebInspector.SourceCSSTokenizer): use the list of support properties from the backend.
705         * inspector/front-end/SourceCSSTokenizer.re2js:
706         * inspector/front-end/inspector.js: request the list of supported CSS properties on load.
707         (WebInspector.doLoadedDone):
708
709 2010-08-24  Adam Barth  <abarth@webkit.org>
710
711         Reviewed by Eric Seidel.
712
713         Delete LegacyHTMLTreeBuilder
714         https://bugs.webkit.org/show_bug.cgi?id=44554
715
716         There were some free functions in LegacyHTMLTreeBuilder that needed a
717         new home.  I've put them in HTMLTreeBuilder, but they'll probably need
718         a better home eventually.
719
720         * Android.mk:
721         * CMakeLists.txt:
722         * GNUmakefile.am:
723         * WebCore.gypi:
724         * WebCore.pro:
725         * WebCore.vcproj/WebCore.vcproj:
726         * WebCore.xcodeproj/project.pbxproj:
727         * dom/Document.cpp:
728         (WebCore::shouldCreateImplicitHead):
729         * dom/DocumentParser.h:
730         * dom/ScriptableDocumentParser.h:
731         * html/HTMLConstructionSite.cpp:
732         * html/HTMLFormControlElement.cpp:
733         (WebCore::HTMLFormControlElement::removedFromTree):
734         * html/HTMLInputElement.cpp:
735         * html/HTMLMeterElement.cpp:
736         * html/HTMLProgressElement.cpp:
737         * html/HTMLTreeBuilder.cpp:
738         (WebCore::serializeForNumberType):
739         (WebCore::parseToDoubleForNumberType):
740         * html/HTMLTreeBuilder.h:
741         * html/HTMLViewSourceParser.h:
742         * html/LegacyHTMLTreeBuilder.cpp: Removed.
743         * html/LegacyHTMLTreeBuilder.h: Removed.
744         * html/StepRange.cpp:
745         * html/ValidityState.cpp:
746         * rendering/RenderSlider.cpp:
747
748 2010-08-24  Pavel Podivilov  <podivilov@chromium.org>
749
750         Reviewed by Yury Semikhatsky.
751
752         Web Inspector: show DOM breakpoints in sidebar pane
753         https://bugs.webkit.org/show_bug.cgi?id=44424
754
755         * inspector/front-end/BreakpointManager.js:
756         (WebInspector.BreakpointManager.prototype._setBreakpoint):
757         (WebInspector.BreakpointManager.prototype._breakpointRemoved):
758         (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
759         (WebInspector.Breakpoint.prototype.set enabled):
760         (WebInspector.Breakpoint.prototype.set condition):
761         (WebInspector.Breakpoint.prototype.remove):
762         * inspector/front-end/BreakpointsSidebarPane.js:
763         (WebInspector.BreakpointsSidebarPane):
764         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
765         (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved):
766         (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired):
767         (WebInspector.BreakpointItem):
768         (WebInspector.BreakpointItem.prototype.element):
769         (WebInspector.BreakpointItem.prototype.remove):
770         (WebInspector.BreakpointItem.prototype._checkboxClicked):
771         (WebInspector.BreakpointItem.prototype._enableChanged):
772         (WebInspector.BreakpointItem.prototype._removed):
773         (WebInspector.JSBreakpointItem):
774         (WebInspector.JSBreakpointItem.prototype._textChanged):
775         (WebInspector.DOMBreakpointItem):
776         (WebInspector.DOMBreakpointItem.prototype.compareTo):
777         * inspector/front-end/DOMAgent.js:
778         (WebInspector.DOMBreakpointManager):
779         (WebInspector.DOMBreakpointManager.prototype.setBreakpoint):
780         (WebInspector.DOMBreakpointManager.prototype.removeBreakpointsForNode):
781         (WebInspector.DOMBreakpointManager.prototype._breakpointRemoved):
782         (WebInspector.DOMBreakpoint):
783         (WebInspector.DOMBreakpoint.prototype.get enabled):
784         (WebInspector.DOMBreakpoint.prototype.set enabled):
785         (WebInspector.DOMBreakpoint.prototype.remove):
786         * inspector/front-end/ElementsPanel.js:
787         (WebInspector.ElementsPanel):
788         (WebInspector.ElementsPanel.prototype.reset):
789         * inspector/front-end/ElementsTreeOutline.js:
790         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
791         * inspector/front-end/ScriptView.js:
792         (WebInspector.ScriptView):
793         * inspector/front-end/ScriptsPanel.js:
794         (WebInspector.ScriptsPanel):
795         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
796         (WebInspector.ScriptsPanel.prototype.reset):
797         * inspector/front-end/SourceFrame.js:
798         (WebInspector.SourceFrame):
799         (WebInspector.SourceFrame.prototype.set visible):
800         (WebInspector.SourceFrame.prototype.addBreakpoint):
801         (WebInspector.SourceFrame.prototype._breakpointRemoved):
802         (WebInspector.SourceFrame.prototype._addBreakpointToSource):
803         (WebInspector.SourceFrame.prototype._removeBreakpointFromSource):
804         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
805         (WebInspector.SourceFrame.prototype._contextMenu):
806         (WebInspector.SourceFrame.prototype._mouseDown):
807         * inspector/front-end/SourceView.js:
808         (WebInspector.SourceView):
809         (WebInspector.SourceView.prototype.updateLocalContent):
810         * inspector/front-end/inspector.js:
811         (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded):
812         (WebInspector.createJSBreakpointsSidebarPane):
813         (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
814         (WebInspector.createDOMBreakpointsSidebarPane):
815         (WebInspector.doLoadedDone):
816
817 2010-08-24  Stephen White  <senorblanco@chromium.org>
818
819         Reviewed by Dumitru Daniliuc.
820
821         Speculative fix for layout test failures on Chrome/Linux.
822         https://bugs.webkit.org/show_bug.cgi?id=44550
823
824         Tests fast/canvas/arc-crash.html, fast/canvas/canvas-state-intact-after-putImageData.html, and fast/canvas/toDataURL-supportedTypes.html are failing on Chrome/Linux.  Can't repro the failure locally, but this fix can't hurt.
825
826         * html/canvas/CanvasRenderingContext2D.cpp:
827         (WebCore::CanvasRenderingContext2D::paintRenderingResultsToCanvas):
828
829 2010-08-24  Dumitru Daniliuc  <dumi@chromium.org>
830
831         Reviewed by Dimitri Glazkov.
832
833         Fix the NodeFilter wrapper and the binding for acceptNode.
834         https://bugs.webkit.org/show_bug.cgi?id=44542
835
836         * bindings/v8/V8DOMWrapper.cpp:
837         (WebCore::V8DOMWrapper::wrapNativeNodeFilter): This function
838         should always create a filter. V8NodeFilterCondition::acceptNode()
839         will check if the given object can be used as a filter, and throw
840         an exception if it can't.
841         * bindings/v8/V8NodeFilterCondition.cpp:
842         (WebCore::V8NodeFilterCondition::acceptNode): Update this binding
843         to do the same thing that the JS binding does.
844
845 2010-08-24  Simon Fraser  <simon.fraser@apple.com>
846
847         Reviewed by Tony Chang.
848
849         After r65681, caret no longer displays promptly while editing form fields
850         https://bugs.webkit.org/show_bug.cgi?id=44294
851         
852         The caret no longer eagerly updates its rect on every paint, so we have
853         to manually update it after scrolling the selection into view when
854         the selection changes.
855         
856         Tested by the pixel results of fast/forms/input-text-scroll-left-on-blur.html
857
858         * page/Frame.cpp:
859         (WebCore::Frame::revealSelection):
860
861 2010-08-24  Adam Barth  <abarth@webkit.org>
862
863         Reviewed by Darin Adler.
864
865         Remove redundant call to OwnPtr::clear
866         https://bugs.webkit.org/show_bug.cgi?id=44548
867
868         As pointed out by Darin, this call to clear is not needed.
869
870         * editing/TextIterator.cpp:
871         (WebCore::plainTextToMallocAllocatedBuffer):
872
873 2010-08-24  Adam Barth  <abarth@webkit.org>
874
875         Reviewed by Eric Seidel.
876
877         HTMLTokenizer::create
878         https://bugs.webkit.org/show_bug.cgi?id=44477
879
880         * html/HTMLDocumentParser.cpp:
881         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
882         * html/HTMLPreloadScanner.cpp:
883         (WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
884         (WebCore::HTMLPreloadScanner::scan):
885         (WebCore::HTMLPreloadScanner::processToken):
886         * html/HTMLPreloadScanner.h:
887         * html/HTMLTokenizer.h:
888         (WebCore::HTMLTokenizer::create):
889         * html/HTMLViewSourceParser.cpp:
890         (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
891         (WebCore::HTMLViewSourceParser::pumpTokenizer):
892         (WebCore::HTMLViewSourceParser::updateTokenizerState):
893         * html/HTMLViewSourceParser.h:
894
895 2010-08-24  Adam Barth  <abarth@webkit.org>
896
897         Reviewed by Darin Adler.
898
899         Remove references to LegacyHTMLTreebuilder from HTMLTreeBuilder
900         https://bugs.webkit.org/show_bug.cgi?id=44544
901
902         * html/HTMLDocumentParser.cpp:
903         * html/HTMLDocumentParser.h:
904         * html/HTMLTreeBuilder.cpp:
905         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
906         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
907         (WebCore::HTMLTreeBuilder::FragmentParsingContext::document):
908         (WebCore::HTMLTreeBuilder::constructTreeFromToken):
909         (WebCore::HTMLTreeBuilder::finished):
910         * html/HTMLTreeBuilder.h:
911         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement):
912
913 2010-08-24  Xan Lopez  <xlopez@igalia.com>
914
915         Try to fix GTK+ build.
916
917         Move GTK_API_VERSION_2 define out.
918
919         * GNUmakefile.am:
920
921 2010-08-24  Simon Fraser  <simon.fraser@apple.com>
922
923         Reviewed by Sam Weinig.
924
925         TreeWalker traversal order is wrong when skipping and rejecting
926         https://bugs.webkit.org/show_bug.cgi?id=44377
927         
928         TreeWalker's nextSibling() and previousSibling() behaved incorrectly
929         when traversing down a subtree where all nodes are skipped; it backed all
930         the way up to the root of the subtree, then jump to the subtree's parentNode.
931         This would skip later siblings.
932         
933         Fix by resetting 'node' when traversing to children so that node = node->parentNode()
934         gets the correct node later.
935
936         Test: fast/dom/TreeWalker/traversal-skip-most.html
937
938         * dom/TreeWalker.cpp:
939         (WebCore::TreeWalker::previousSibling):
940         (WebCore::TreeWalker::nextSibling):
941
942 2010-08-24  Hans Wennborg  <hans@chromium.org>
943
944         Reviewed by Steve Block.
945
946         Remove null-checks from DeviceOrientationController
947         https://bugs.webkit.org/show_bug.cgi?id=44504
948
949         Remove checks for m_client being NULL from DeviceOrientationController.
950         It will never be NULL, and this is checked by an ASSERT on construction.
951
952         Will be covered by layout tests for device orientation.
953
954         * dom/DeviceOrientationController.cpp:
955         (WebCore::DeviceOrientationController::timerFired):
956         (WebCore::DeviceOrientationController::addListener):
957         (WebCore::DeviceOrientationController::removeListener):
958         (WebCore::DeviceOrientationController::removeAllListeners):
959
960 2010-08-24  Stephen White  <senorblanco@chromium.org>
961
962         Reviewed by Kenneth Russell.
963
964         Fix accelerated 2d canvas with accelerated compositing off.
965         https://bugs.webkit.org/show_bug.cgi?id=44525
966
967         Tested by running with --enable-accelerated-2d-canvas with
968         --enable-accelerated-compositing off.
969         ImageBuffer::copyImage changes covered by
970         LayoutTests/fast/canvas/canvas-pattern-*.html.
971
972         * html/HTMLCanvasElement.cpp:
973         (WebCore::HTMLCanvasElement::paint):
974         Extend the accelerated compositing check and the readback for
975         non-accelerated compositing to accelerated 2D canvas also.
976         * html/canvas/CanvasRenderingContext.cpp:
977         * html/canvas/CanvasRenderingContext.h:
978         (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
979         Move this logic from WebGL to common canvas context code.
980         * html/canvas/WebGLRenderingContext.h:
981         Remove implementation of paintsIntoCanvasBuffer.
982         * platform/graphics/skia/ImageBufferSkia.cpp:
983         (WebCore::ImageBuffer::copyImage):
984         When copying the image for patterns, sync the software canvas.
985         * platform/graphics/skia/PlatformContextSkia.cpp:
986         (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
987         Use SkDevice::eraseColor() to clear the canvas for mixed mode rendering.
988
989 2010-08-24  Adam Barth  <abarth@webkit.org>
990
991         Reviewed by Eric Seidel.
992
993         Deploy adoptPtr in WebCore/editing
994         https://bugs.webkit.org/show_bug.cgi?id=44501
995
996         * editing/Editor.cpp:
997         (WebCore::Editor::Editor):
998         * editing/TextIterator.cpp:
999         (WebCore::plainTextToMallocAllocatedBuffer):
1000
1001 2010-08-24  Adam Barth  <abarth@webkit.org>
1002
1003         Reviewed by Eric Seidel.
1004
1005         Deploy adoptPtr in WebCore/history
1006         https://bugs.webkit.org/show_bug.cgi?id=44502
1007
1008         * history/HistoryItem.cpp:
1009         (WebCore::HistoryItem::HistoryItem):
1010         (WebCore::HistoryItem::addRedirectURL):
1011
1012 2010-08-24  Adam Barth  <abarth@webkit.org>
1013
1014         Reviewed by Eric Seidel.
1015
1016         Partial deployment of adoptPtr to WebCore/html
1017         https://bugs.webkit.org/show_bug.cgi?id=44507
1018
1019         Deploy adoptPtr to some more places in WebCore/html.  The big chunk
1020         that I haven't done yet is createRenderer, but that's going to be a big
1021         patch unto itself.
1022
1023         * html/HTMLFormCollection.cpp:
1024         (WebCore::HTMLFormCollection::formCollectionInfo):
1025         * html/HTMLFormElement.cpp:
1026         (WebCore::HTMLFormElement::addElementAlias):
1027         * html/HTMLInputElement.cpp:
1028         (WebCore::createTypeMap):
1029         (WebCore::HTMLInputElement::setInputType):
1030         (WebCore::HTMLInputElement::parseMappedAttribute):
1031         (WebCore::HTMLInputElement::attach):
1032         (WebCore::HTMLInputElement::preDispatchEventHandler):
1033         * html/HTMLObjectElement.cpp:
1034         (WebCore::HTMLObjectElement::parseMappedAttribute):
1035         (WebCore::HTMLObjectElement::attach):
1036         * html/HTMLToken.h:
1037         (WebCore::HTMLToken::beginDOCTYPE):
1038         * html/HTMLVideoElement.cpp:
1039         (WebCore::HTMLVideoElement::attach):
1040         (WebCore::HTMLVideoElement::parseMappedAttribute):
1041         * html/ValidityState.h:
1042         (WebCore::ValidityState::create):
1043
1044 2010-08-24  Adam Barth  <abarth@webkit.org>
1045
1046         Reviewed by Eric Seidel.
1047
1048         Partial deployment of adoptPtr to WebCore/html
1049         https://bugs.webkit.org/show_bug.cgi?id=44507
1050
1051         There's a lot of places that need adoptPtr in WebCore/html.  This patch
1052         does some of them.  More will follow.
1053
1054         * html/FileThreadTask.h:
1055         (WebCore::FileThreadTask0::create):
1056         (WebCore::FileThreadTask1::create):
1057         (WebCore::FileThreadTask2::create):
1058         (WebCore::FileThreadTask3::create):
1059         * html/HTMLAreaElement.cpp:
1060         (WebCore::HTMLAreaElement::mapMouseEvent):
1061         * html/HTMLCanvasElement.cpp:
1062         (WebCore::HTMLCanvasElement::getContext):
1063         * html/HTMLElementStack.cpp:
1064         (WebCore::HTMLElementStack::insertAbove):
1065         (WebCore::HTMLElementStack::pushCommon):
1066         * html/HTMLEmbedElement.cpp:
1067         (WebCore::HTMLEmbedElement::parseMappedAttribute):
1068         (WebCore::HTMLEmbedElement::attach):
1069
1070 2010-08-24  Sam Weinig  <sam@webkit.org>
1071
1072         Reviewed by Simon Fraser.
1073
1074         Improve comment for Simon.
1075
1076         * editing/Editor.h:
1077
1078 2010-08-24  Sam Weinig  <sam@webkit.org>
1079
1080         Reviewed by Oliver Hunt.
1081
1082         Paste event fires twice for mac WebKit
1083         <rdar://problem/8094611>
1084         https://bugs.webkit.org/show_bug.cgi?id=44535
1085
1086         The mac implementation of paste in WebKit was accidentally calling 
1087         Editor::tryDHTMLPaste twice, once in -[WebHTMLView paste:] and once
1088         in Editor::pasteAsPlainText (which is called by -[WebHTMLView paste:]).
1089         Use the new pasteAsPlainTextBypassingDHTML function to bypass the
1090         second call.
1091
1092         Test: editing/pasteboard/paste-event-only-once.html
1093
1094         * WebCore.exp.in:
1095         * editing/Editor.cpp:
1096         (WebCore::Editor::pasteAsPlainTextBypassingDHTML): 
1097         * editing/Editor.h:
1098         Expose a function which just pastes using from the general pasteboard,
1099         bypassing all the checking and DHTML pasting.
1100
1101 2010-08-24  Nate Chapin  <japhet@chromium.org>
1102
1103         Unreviewed.
1104
1105         Chromium build fix (add a #include missing in PingLoader.cpp)
1106
1107         * loader/PingLoader.cpp:
1108
1109 2010-08-24  Nate Chapin  <japhet@chromium.org>
1110
1111         Reviewed by David Levin.
1112
1113         Allow image loads triggered from unload handlers to run entirely
1114         independently of any other loads or navigations.
1115
1116         https://bugs.webkit.org/show_bug.cgi?id=30457
1117
1118         Test: http/tests/navigation/image-load-in-unload-handler.html
1119
1120         * Android.mk:
1121         * CMakeLists.txt:
1122         * GNUmakefile.am:
1123         * WebCore.gypi:
1124         * WebCore.pro:
1125         * WebCore.vcproj/WebCore.vcproj:
1126         * WebCore.xcodeproj/project.pbxproj:
1127         * loader/DocLoader.cpp:
1128         (WebCore::DocLoader::requestImage): Use PingLoader for image
1129             loads in unload handlers.
1130         * loader/FrameLoader.h:
1131         (WebCore::FrameLoader::pageDismissalEventBeingDispatched):
1132         * loader/PingLoader.cpp: Added.
1133         (WebCore::PingLoader::loadImage): Set the appropriate
1134             headers for an image load in unload handler (since we're
1135             not using SubresourceLoader, we need to do this manually here).
1136         (WebCore::PingLoader::PingLoader):
1137         * loader/PingLoader.h: Added.
1138         (WebCore::PingLoader::~PingLoader):
1139         (WebCore::PingLoader::didReceiveResponse):
1140         (WebCore::PingLoader::didReceiveData):
1141         (WebCore::PingLoader::didFinishLoading):
1142         (WebCore::PingLoader::didFail):
1143
1144 2010-08-24  Pavel Feldman  <pfeldman@chromium.org>
1145
1146         Reviewed by Yury Semikhatsky.
1147
1148         Web Inspector: Trace to the style that contributes to
1149         the computed styles panel.
1150         https://bugs.webkit.org/show_bug.cgi?id=44448
1151
1152         Test: inspector/styles-computed-trace.html
1153
1154         * English.lproj/localizedStrings.js:
1155         * inspector/front-end/Section.js:
1156         (WebInspector.Section.prototype.set subtitle):
1157         (WebInspector.Section.prototype.get subtitleAsTextForTest):
1158         * inspector/front-end/StylesSidebarPane.js:
1159         (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
1160         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
1161         (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
1162         (WebInspector.StylesSidebarPane.prototype._refreshSectionsForStyleRules):
1163         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
1164         (WebInspector.StylePropertiesSection.linkifyUncopyable):
1165         (WebInspector.StylePropertiesSection):
1166         (WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
1167         (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
1168         (WebInspector.StylePropertiesSection.prototype.isPropertyDisabled):
1169         (WebInspector.StylePropertiesSection.prototype.update):
1170         (WebInspector.StylePropertiesSection.prototype.onpopulate):
1171         (WebInspector.ComputedStylePropertiesSection):
1172         (WebInspector.ComputedStylePropertiesSection.prototype.collapse):
1173         (WebInspector.ComputedStylePropertiesSection.prototype._isPropertyInherited):
1174         (WebInspector.ComputedStylePropertiesSection.prototype.update):
1175         (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
1176         (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
1177         (WebInspector.BlankStylePropertiesSection):
1178         * inspector/front-end/inspector.css:
1179         (.styles-section a::before):
1180         * inspector/front-end/inspector.js:
1181         (WebInspector.documentClick.followLink):
1182         (WebInspector.documentClick):
1183         (WebInspector.linkifyResourceAsNode):
1184
1185 2010-08-24  Daniel Cheng  <dcheng@chromium.org>
1186
1187         Reviewed by Eric Seidel.
1188
1189         [chromium] Generate drag images for HTML elements and selections.
1190         https://bugs.webkit.org/show_bug.cgi?id=43449
1191
1192         We weren't properly generating drag images if an HTML element was set
1193         as the drag feedback image. I also implemented dragImageForSelection
1194         while I was working on this part of the code.
1195
1196         No new tests.
1197
1198         * WebCore.exp.in:
1199         * bindings/objc/DOM.mm:
1200         (-[DOMNode renderedImage]):
1201         * page/Frame.h:
1202         * page/brew/FrameBrew.cpp:
1203         (WebCore::Frame::nodeImage):
1204         * page/chromium/FrameChromium.cpp:
1205         (WebCore::):
1206         (WebCore::Frame::nodeImage):
1207         (WebCore::Frame::dragImageForSelection):
1208         * page/efl/FrameEfl.cpp:
1209         (WebCore::Frame::nodeImage):
1210         * page/gtk/FrameGtk.cpp:
1211         (WebCore::Frame::nodeImage):
1212         * page/haiku/FrameHaiku.cpp:
1213         (WebCore::Frame::nodeImage):
1214         * page/mac/FrameMac.mm:
1215         (WebCore::Frame::nodeImage):
1216         (WebCore::Frame::dragImageForSelection):
1217         * page/qt/FrameQt.cpp:
1218         (WebCore::Frame::nodeImage):
1219         (WebCore::Frame::dragImageForSelection):
1220         * page/win/FrameCGWin.cpp:
1221         (WebCore::Frame::nodeImage):
1222         * page/win/FrameCairoWin.cpp:
1223         (WebCore::Frame::nodeImage):
1224         * page/wince/FrameWince.cpp:
1225         (WebCore::Frame::nodeImage):
1226         * page/wx/FrameWx.cpp:
1227         (WebCore::Frame::nodeImage):
1228         * platform/chromium/ClipboardChromium.cpp:
1229         (WebCore::ClipboardChromium::createDragImage):
1230         * rendering/RenderObject.cpp:
1231         (WebCore::RenderObject::selectionForegroundColor):
1232
1233 2010-08-24  Jeremy Orlow  <jorlow@chromium.org>
1234
1235         Reviewed by Steve Block.
1236
1237         IndexedDB needs to manually delete all objectStore data and indexes
1238         https://bugs.webkit.org/show_bug.cgi?id=44522
1239
1240         Apparently it's only newer versions of SQLite that handle cascade
1241         delete.  The rest silently fail.  So do it manually.
1242
1243         Test: storage/indexeddb/objectstore-removeobjectstore.html
1244
1245         * storage/IDBDatabaseBackendImpl.cpp:
1246         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
1247         (WebCore::doDelete):
1248         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
1249         * storage/IDBDatabaseBackendImpl.h:
1250         * storage/IDBFactoryBackendImpl.cpp:
1251         (WebCore::createTables):
1252         * storage/IDBObjectStoreBackendImpl.cpp:
1253         (WebCore::IDBObjectStoreBackendImpl::removeIndex):
1254         * storage/IDBObjectStoreBackendImpl.h:
1255         (WebCore::IDBObjectStoreBackendImpl::create):
1256         (WebCore::IDBObjectStoreBackendImpl::id):
1257
1258 2010-08-23  Sam Weinig  <sam@webkit.org>
1259
1260         Reviewed by Adam Barth.
1261
1262         Fix for <rdar://problem/8153271> and <rdar://problem/8153288> 
1263         Change behavior of javascript: urls in <embed> and <object> back to 
1264         how they behaved before r50698.
1265
1266         Tests: fast/loader/javascript-url-in-embed.html
1267                fast/loader/javascript-url-in-object.html
1268
1269         * loader/SubframeLoader.cpp:
1270         (WebCore::SubframeLoader::requestFrame):
1271         (WebCore::SubframeLoader::requestObject):
1272         (WebCore::SubframeLoader::loadOrRedirectSubframe):
1273         * loader/SubframeLoader.h:
1274
1275 2010-08-24  Xan Lopez  <xlopez@igalia.com>
1276
1277         Reviewed by Gustavo Noronha.
1278
1279         Update code to compile with latest GTK+ 3.x.
1280
1281         * platform/gtk/gtk2drawing.c:
1282         (TSOffsetStyleGCs):
1283         (moz_gtk_entry_paint):
1284         * plugins/gtk/gtk2xtbin.c:
1285         (gtk_xtbin_new):
1286
1287 2010-08-24  Nikolas Zimmermann  <nzimmermann@rim.com>
1288
1289         Reviewed by Dirk Schulze.
1290
1291         -webkit-svg-shadow doesn't repaint on changes
1292         https://bugs.webkit.org/show_bug.cgi?id=44521
1293
1294         Trivial fix, to make -webkit-svg-shadow react on changes.
1295
1296         Test: svg/css/shadow-changes.svg
1297
1298         * rendering/style/SVGRenderStyle.cpp:
1299         (WebCore::SVGRenderStyle::diff): If 'svgShadow' is not equal, cause a repaint.
1300
1301 2010-08-24  Dirk Schulze  <krit@webkit.org>
1302
1303         Reviewed by Nikolas Zimmermann.
1304
1305         Cg logs "<Error>: CGPathCloseSubpath: no current point. " in lots of tests
1306         https://bugs.webkit.org/show_bug.cgi?id=43026
1307
1308         Check if the path is empty before closing it.
1309
1310         * svg/SVGPathBuilder.cpp:
1311         (WebCore::SVGPathBuilder::moveTo):
1312
1313 2010-08-24  Marcus Bulach  <bulach@chromium.org>
1314
1315         Reviewed by Jeremy Orlow.
1316
1317         Hooks IDBKeyPath with IDBObjectStorage::put.
1318         https://bugs.webkit.org/show_bug.cgi?id=44275
1319
1320         Adds a mechanism to extract an IDBKey from SerializedScriptValue using IDBKeyPath
1321         during IDBObjectStorage::put.
1322
1323         * WebCore.gyp/WebCore.gyp:
1324         * WebCore.gypi:
1325         * platform/chromium/ChromiumBridge.h:
1326         * storage/IDBKeyPathBackendImpl.cpp: Added.
1327         (IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath):
1328         * storage/IDBKeyPathBackendImpl.h: Added.
1329         * storage/IDBObjectStoreBackendImpl.cpp:
1330         (WebCore::IDBObjectStoreBackendImpl::put):
1331         * storage/chromium/IDBKeyPathBackendImpl.cpp: Added.
1332         (WebCore::IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath):
1333
1334 2010-08-24  Ilya Tikhonovsky  <loislo@chromium.org>
1335
1336         Reviewed by Pavel Feldman.
1337
1338         WebInspector: RemoteInspectorFrontend can be renamed to InspectorFrontend.
1339         The old version of InspectorFrontend was removed some time ago and now
1340         it is possible to rename the new version of inspector frontend class to its
1341         original name.
1342         https://bugs.webkit.org/show_bug.cgi?id=44499
1343
1344         * GNUmakefile.am:
1345         * WebCore.gyp/WebCore.gyp:
1346         * WebCore.pri:
1347         * WebCore.vcproj/WebCore.vcproj:
1348         * WebCore.xcodeproj/project.pbxproj:
1349         * inspector/CodeGeneratorInspector.pm:
1350         * inspector/ConsoleMessage.cpp:
1351         (WebCore::ConsoleMessage::addToFrontend):
1352         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
1353         * inspector/ConsoleMessage.h:
1354         * inspector/InjectedScriptHost.cpp:
1355         (WebCore::InjectedScriptHost::pushNodePathToFrontend):
1356         (WebCore::InjectedScriptHost::frontend):
1357         * inspector/InjectedScriptHost.h:
1358         * inspector/InspectorApplicationCacheAgent.cpp:
1359         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
1360         * inspector/InspectorApplicationCacheAgent.h:
1361         * inspector/InspectorBackend.cpp:
1362         (WebCore::InspectorBackend::dispatchOnInjectedScript):
1363         (WebCore::InspectorBackend::frontend):
1364         * inspector/InspectorBackend.h:
1365         * inspector/InspectorCSSStore.cpp:
1366         * inspector/InspectorCSSStore.h:
1367         * inspector/InspectorController.cpp:
1368         (WebCore::InspectorController::inspectedPageDestroyed):
1369         (WebCore::InspectorController::inspect):
1370         (WebCore::InspectorController::focusNode):
1371         (WebCore::InspectorController::windowVisible):
1372         (WebCore::InspectorController::addConsoleMessage):
1373         (WebCore::InspectorController::clearConsoleMessages):
1374         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
1375         (WebCore::InspectorController::setSearchingForNode):
1376         (WebCore::InspectorController::setMonitoringXHR):
1377         (WebCore::InspectorController::connectFrontend):
1378         (WebCore::InspectorController::show):
1379         (WebCore::InspectorController::showPanel):
1380         (WebCore::InspectorController::close):
1381         (WebCore::InspectorController::disconnectFrontend):
1382         (WebCore::InspectorController::populateScriptObjects):
1383         (WebCore::InspectorController::pruneResources):
1384         (WebCore::InspectorController::didCommitLoad):
1385         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
1386         (WebCore::InspectorController::identifierForInitialRequest):
1387         (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
1388         (WebCore::InspectorController::mainResourceFiredLoadEvent):
1389         (WebCore::InspectorController::willSendRequest):
1390         (WebCore::InspectorController::didReceiveResponse):
1391         (WebCore::InspectorController::didReceiveContentLength):
1392         (WebCore::InspectorController::didFinishLoading):
1393         (WebCore::InspectorController::didFailLoading):
1394         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
1395         (WebCore::InspectorController::scriptImported):
1396         (WebCore::InspectorController::enableResourceTracking):
1397         (WebCore::InspectorController::disableResourceTracking):
1398         (WebCore::InspectorController::startTimelineProfiler):
1399         (WebCore::InspectorController::stopTimelineProfiler):
1400         (WebCore::InspectorController::postWorkerNotificationToFrontend):
1401         (WebCore::InspectorController::didCreateWorker):
1402         (WebCore::InspectorController::didDestroyWorker):
1403         (WebCore::InspectorController::selectDatabase):
1404         (WebCore::InspectorController::didOpenDatabase):
1405         (WebCore::InspectorController::didUseDOMStorage):
1406         (WebCore::InspectorController::selectDOMStorage):
1407         (WebCore::InspectorController::enableDebuggerFromFrontend):
1408         (WebCore::InspectorController::enableDebugger):
1409         (WebCore::InspectorController::disableDebugger):
1410         (WebCore::InspectorController::evaluateForTestInFrontend):
1411         * inspector/InspectorController.h:
1412         (WebCore::InspectorController::hasFrontend):
1413         * inspector/InspectorDOMAgent.cpp:
1414         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1415         * inspector/InspectorDOMAgent.h:
1416         (WebCore::InspectorDOMAgent::create):
1417         * inspector/InspectorDOMStorageResource.cpp:
1418         (WebCore::InspectorDOMStorageResource::bind):
1419         * inspector/InspectorDOMStorageResource.h:
1420         * inspector/InspectorDatabaseResource.cpp:
1421         (WebCore::InspectorDatabaseResource::bind):
1422         * inspector/InspectorDatabaseResource.h:
1423         * inspector/InspectorDebuggerAgent.cpp:
1424         (WebCore::InspectorDebuggerAgent::create):
1425         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1426         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1427         (WebCore::InspectorDebuggerAgent::didParseSource):
1428         (WebCore::InspectorDebuggerAgent::failedToParseSource):
1429         (WebCore::InspectorDebuggerAgent::didPause):
1430         (WebCore::InspectorDebuggerAgent::didContinue):
1431         * inspector/InspectorDebuggerAgent.h:
1432         * inspector/InspectorProfilerAgent.cpp:
1433         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1434         (WebCore::InspectorProfilerAgent::addProfile):
1435         (WebCore::InspectorProfilerAgent::disable):
1436         (WebCore::InspectorProfilerAgent::enable):
1437         (WebCore::InspectorProfilerAgent::resetState):
1438         (WebCore::InspectorProfilerAgent::toggleRecordButton):
1439         * inspector/InspectorProfilerAgent.h:
1440         (WebCore::InspectorProfilerAgent::setFrontend):
1441         * inspector/InspectorResource.cpp:
1442         (WebCore::InspectorResource::updateScriptObject):
1443         (WebCore::InspectorResource::releaseScriptObject):
1444         * inspector/InspectorResource.h:
1445         * inspector/InspectorStorageAgent.cpp:
1446         (WebCore::InspectorStorageAgent::InspectorStorageAgent):
1447         * inspector/InspectorStorageAgent.h:
1448         (WebCore::InspectorStorageAgent::create):
1449         (WebCore::InspectorStorageAgent::frontend):
1450         * inspector/InspectorTimelineAgent.cpp:
1451         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1452         (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
1453         * inspector/InspectorTimelineAgent.h:
1454
1455 2010-08-24  Nikolas Zimmermann  <nzimmermann@rim.com>
1456
1457         Reviewed by Dirk Schulze.
1458
1459         Markers don't render, when applied to a target using vector-effect="non-scaling-stroke"
1460         https://bugs.webkit.org/show_bug.cgi?id=44511
1461
1462         Make fillAndStrokePath a member function of RenderPath, to avoid having to pass the const Path& and this paramters.
1463         Don't leave the GraphicsContext mutated after applying non-scaling-stroke transformation, otherwhise markers will be renderer
1464         in the wrong coordinate space, and thus don't show up anymore.
1465
1466         Test: svg/custom/non-scaling-stroke-markers.svg
1467
1468         * rendering/RenderPath.cpp:
1469         (WebCore::RenderPath::fillAndStrokePath):
1470         (WebCore::RenderPath::paint):
1471         * rendering/RenderPath.h:
1472
1473 2010-08-24  Adam Barth  <abarth@webkit.org>
1474
1475         Reviewed by Kenneth Rohde Christiansen.
1476
1477         Remove wrong code from Qt that's dumping extra markup into the clipboard
1478         https://bugs.webkit.org/show_bug.cgi?id=44506
1479
1480         I have no way of testing this patch, but hopefully it should fix a
1481         bunch of newly failing tests.  This code seems very confused.
1482
1483         * platform/qt/PasteboardQt.cpp:
1484         (WebCore::Pasteboard::writeSelection):
1485
1486 2010-08-24  Pavel Podivilov  <podivilov@chromium.org>
1487
1488         Reviewed by Yury Semikhatsky.
1489
1490         Web Inspector: fix gcc warnings introduced in 65731
1491         https://bugs.webkit.org/show_bug.cgi?id=44468
1492
1493         * inspector/InspectorDOMAgent.cpp:
1494         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1495         (WebCore::InspectorDOMAgent::pauseOnBreakpoint):
1496
1497 2010-08-24  Ariya Hidayat  <ariya@sencha.com>
1498
1499         Reviewed by Simon Hausmann.
1500
1501         [Qt] Blur shadow for rectangle fill
1502         https://bugs.webkit.org/show_bug.cgi?id=44488
1503
1504         Refactor fillRect() function to support blur radius in the shadow.
1505
1506         * platform/graphics/qt/GraphicsContextQt.cpp:
1507         (WebCore::GraphicsContext::fillRect):
1508
1509 2010-08-24  Nikolas Zimmermann  <nzimmermann@rim.com>
1510
1511         Reviewed by Dirk Schulze
1512
1513         clip-path does not work inside mask element
1514         https://bugs.webkit.org/show_bug.cgi?id=41428
1515
1516         Add new tests covering nesting of clippers and maskers, with different unitTypes for the content coordinate system.
1517         Scale all ImageBuffer content to take into account that ImageBuffers use integer based sizes, where the content
1518         is floating-point sized. This compensates rounded errors, when scaling the document.
1519
1520         Tests: svg/clip-path/clip-in-mask-objectBoundingBox.svg
1521                svg/clip-path/clip-in-mask-userSpaceOnUse.svg
1522                svg/clip-path/clip-in-mask.svg
1523                svg/clip-path/deep-nested-clip-in-mask-different-unitTypes.svg
1524                svg/clip-path/deep-nested-clip-in-mask-panning.svg
1525                svg/clip-path/deep-nested-clip-in-mask.svg
1526                svg/clip-path/nested-clip-in-mask-image-based-clipping.svg
1527                svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping.svg
1528                svg/clip-path/nested-clip-in-mask-path-based-clipping.svg
1529
1530         * rendering/RenderSVGResourceClipper.cpp:
1531         (WebCore::RenderSVGResourceClipper::applyResource): Return the value of applyClippingToContext, instead of always true.
1532         (WebCore::RenderSVGResourceClipper::applyClippingToContext): Moved some code from createClipData, to avoid having to pass 5 arguments to createClipData.
1533         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): Renamed from createClipData.
1534         * rendering/RenderSVGResourceClipper.h:
1535         * rendering/RenderSVGResourceGradient.cpp:
1536         (WebCore::createMaskAndSwapContextForTextGradient): Pass absoluteTargetRect to createImageBuffer.
1537         (WebCore::clipToTextMask): Ditto.
1538         * rendering/RenderSVGResourceMasker.cpp:
1539         (WebCore::RenderSVGResourceMasker::applyResource): Ditto.
1540         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Pass content transformation to renderSubtreeToImageBuffer, to support nesting objectBoundingBox resources.
1541         * rendering/RenderSVGResourcePattern.cpp:
1542         (WebCore::RenderSVGResourcePattern::applyResource): Adapt to calculateTransformationToOutermostSVGCoordinateSystem changes. AffineTransform is now passed as reference.
1543         (WebCore::RenderSVGResourcePattern::createTileImage): ImageBuffer content scaling is now handled by createImageBuffer.
1544         * rendering/SVGImageBufferTools.cpp:
1545         (WebCore::SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem): Renamed. Don't return an AffineTransform copy, but instead pass it as reference.
1546         (WebCore::SVGImageBufferTools::createImageBuffer): Always scale the ImageBuffer content, to compensate rounding effects (code was only present in patterns so far).
1547                                                            Now also needs the 'absoluteTargetRect' parameter, not only 'clampedAbsoluteTargetRect'.
1548         (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer): Moved from SVGRenderSupport.
1549         (WebCore::SVGImageBufferTools::clipToImageBuffer): Pass ImageBuffer as OwnPtr reference, to allow to clear it under certain circumstances (see comment).
1550         (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): Remove AffineTransform parameter, absoluteTargetRect is calculated before passing into this function.
1551         * rendering/SVGImageBufferTools.h:
1552         * rendering/SVGRenderSupport.cpp:
1553         (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Important change, respect the RenderSVGResourceClipper::applyResource() return value!
1554         * rendering/SVGRenderSupport.h:
1555         * svg/SVGFEImageElement.cpp:
1556         (WebCore::SVGFEImageElement::build): renderSubtreeToImage now lives in SVGImageBufferTools, adapt code.
1557
1558 2010-08-24  Andrei Popescu  <andreip@dhcp-172-16-14-12.lon.corp.google.com>
1559
1560         Reviewed by Jeremy Orlow.
1561
1562         [IndexedDB] IDBTransaction is missing the implementation for objectStore method
1563         https://bugs.webkit.org/show_bug.cgi?id=44446
1564
1565         * storage/IDBDatabaseBackendImpl.cpp:
1566         (WebCore::IDBDatabaseBackendImpl::transaction):
1567         * storage/IDBTransactionBackendImpl.cpp:
1568         (WebCore::IDBTransactionBackendImpl::create):
1569         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
1570         (WebCore::IDBTransactionBackendImpl::objectStore):
1571         * storage/IDBTransactionBackendImpl.h:
1572         * storage/IDBTransactionCoordinator.cpp:
1573         (WebCore::IDBTransactionCoordinator::createTransaction):
1574         * storage/IDBTransactionCoordinator.h:
1575
1576 2010-08-24  Andreas Kling  <andreas.kling@nokia.com>
1577
1578         Reviewed by Tor Arne Vestbø.
1579
1580         Disallow setting Document.xmlVersion to unsupported versions
1581         https://bugs.webkit.org/show_bug.cgi?id=44494
1582
1583         Added XMLDocumentParser::supportsXMLVersion() - only returns true for "1.0"
1584         in both implementations.
1585
1586         * dom/Document.cpp:
1587         (WebCore::Document::setXMLVersion): Throw NOT_SUPPORTED_ERR
1588         if XMLDocumentParser::supportsXMLVersion() returns false for the version.
1589         * dom/XMLDocumentParser.h:
1590         * dom/XMLDocumentParserLibxml2.cpp:
1591         (WebCore::XMLDocumentParser::supportsXMLVersion):
1592         * dom/XMLDocumentParserQt.cpp:
1593         (WebCore::XMLDocumentParser::supportsXMLVersion):
1594
1595 2010-08-24  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1596
1597         Reviewed by Simon Hausmann.
1598
1599         [Qt][Symbian] Make sure WebKit headers are included before platform headers on Symbian
1600         https://bugs.webkit.org/show_bug.cgi?id=31273
1601
1602         On Symbian PREPEND_INCLUDEPATH is the best way to make sure that
1603         WebKit headers are included before platform headers. On all other
1604         platforms continue to use INCLUDEPATH (as before).
1605
1606         This patch also removed the workarounds that are put in place 
1607         now that we have a better solution.
1608
1609         No new tests as there is no new functionality.
1610
1611         * WebCore.pro:
1612
1613 2010-08-24  Ariya Hidayat  <ariya@sencha.com>
1614
1615         Reviewed by Kenneth Rohde Christiansen.
1616
1617         [Qt] Support text-shadow blur
1618         https://bugs.webkit.org/show_bug.cgi?id=19728
1619
1620         Implement blur for text shadow using the shadow layer in r65782.
1621
1622         * platform/graphics/qt/ContextShadow.cpp:
1623         (WebCore::ContextShadow::beginShadowLayer):
1624         * platform/graphics/qt/FontQt.cpp:
1625         (WebCore::drawTextCommon):
1626
1627 2010-08-23  Andreas Kling  <andreas.kling@nokia.com>
1628
1629         Reviewed by Tor Arne Vestbø.
1630
1631         setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace
1632         https://bugs.webkit.org/show_bug.cgi?id=44432
1633
1634         Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html
1635
1636         * dom/Element.cpp:
1637         (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null
1638         and the qualifiedName has a prefix.
1639
1640 2010-08-24  Adam Barth  <abarth@webkit.org>
1641
1642         Build fix.  leakPtr doesn't exist, contrary to my dreams.
1643
1644         * storage/IDBKeyTree.h:
1645         (WebCore::::put):
1646         * storage/IDBPendingTransactionMonitor.cpp:
1647         (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
1648
1649 2010-08-24  Adam Barth  <abarth@webkit.org>
1650
1651         Reviewed by Eric Seidel.
1652
1653         Deploy adoptPtr in WebCore/storage
1654         https://bugs.webkit.org/show_bug.cgi?id=44491
1655
1656         There are still some naked news for a future patch.  The next step is
1657         to make create methods.
1658
1659         * storage/Database.cpp:
1660         (WebCore::DatabaseCreationCallbackTask::create):
1661         (WebCore::DerefContextTask::create):
1662         (WebCore::DeliverPendingCallbackTask::create):
1663         * storage/DatabaseSync.cpp:
1664         (WebCore::CloseSyncDatabaseOnContextThreadTask::create):
1665         * storage/DatabaseTask.h:
1666         (WebCore::Database::DatabaseOpenTask::create):
1667         (WebCore::Database::DatabaseCloseTask::create):
1668         (WebCore::Database::DatabaseTransactionTask::create):
1669         (WebCore::Database::DatabaseTableNamesTask::create):
1670         * storage/DatabaseThread.cpp:
1671         (WebCore::DatabaseThread::DatabaseThread):
1672         * storage/DatabaseTracker.cpp:
1673         (WebCore::DatabaseTracker::populateOrigins):
1674         (WebCore::DatabaseTracker::addOpenDatabase):
1675         * storage/IDBKeyTree.h:
1676         (WebCore::::put):
1677         * storage/IDBPendingTransactionMonitor.cpp:
1678         (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
1679         * storage/LocalStorageTask.h:
1680         (WebCore::LocalStorageTask::createImport):
1681         (WebCore::LocalStorageTask::createSync):
1682         (WebCore::LocalStorageTask::createDeleteEmptyDatabase):
1683         (WebCore::LocalStorageTask::createTerminate):
1684         * storage/LocalStorageThread.cpp:
1685         (WebCore::LocalStorageThread::create):
1686         * storage/SQLTransaction.cpp:
1687         (WebCore::SQLTransaction::openTransactionAndPreflight):
1688         * storage/SQLTransactionSync.cpp:
1689         (WebCore::SQLTransactionSync::SQLTransactionSync):
1690         (WebCore::SQLTransactionSync::begin):
1691         * storage/StorageNamespaceImpl.cpp:
1692         (WebCore::StorageNamespaceImpl::copy):
1693
1694 2010-08-24  Ilya Tikhonovsky  <loislo@chromium.org>
1695
1696         Reviewed by Yury Semikhatsky.
1697
1698         WebInspector: setAttachedWindow was modified at r65809 but it should be implemented another way.
1699         https://bugs.webkit.org/show_bug.cgi?id=44493
1700
1701         * inspector/Inspector.idl:
1702         * inspector/InspectorController.cpp:
1703         * inspector/InspectorController.h:
1704         * inspector/InspectorFrontendClientLocal.cpp:
1705         (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
1706
1707 2010-08-23  Eric Seidel  <eric@webkit.org>
1708
1709         Reviewed by Adam Barth.
1710
1711         Use new HTML5 TreeBuilder for fragment parsing
1712         https://bugs.webkit.org/show_bug.cgi?id=44475
1713
1714         The HTML5 TreeBuilder is ready to be used for all parsing
1715         including fragments!  This is the last change to move trunk
1716         off of the LegacyHTMLTreeBuilder.  We'll go through and
1717         delete the thousands of lines of code supporting the old
1718         parser in a separate patch.
1719
1720         This is covered by many layout tests.
1721
1722         * html/HTMLTreeBuilder.cpp:
1723
1724 2010-08-23  Adam Barth  <abarth@webkit.org>
1725
1726         Reviewed by Eric Seidel.
1727
1728         HTMLScriptRunner::create
1729         https://bugs.webkit.org/show_bug.cgi?id=44474
1730
1731         * html/HTMLDocumentParser.cpp:
1732         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
1733         * html/HTMLScriptRunner.h:
1734         (WebCore::HTMLScriptRunner::create):
1735
1736 2010-08-23  Adam Barth  <abarth@webkit.org>
1737
1738         Reviewed by Eric Seidel.
1739
1740         HTMLTreeBuilder should use adoptPtr
1741         https://bugs.webkit.org/show_bug.cgi?id=44473
1742
1743         We should really use this pattern everywhere.
1744
1745         * html/HTMLDocumentParser.cpp:
1746         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
1747         * html/HTMLTreeBuilder.h:
1748         (WebCore::HTMLTreeBuilder::create):
1749
1750 2010-08-23  Patrick Gansterer  <paroga@paroga.com>
1751
1752         Reviewed by Adam Roben.
1753
1754         Set the ResourceResponse HTTP headers in RessourceHandleWin
1755         https://bugs.webkit.org/show_bug.cgi?id=44444
1756
1757         * platform/network/win/ResourceHandleWin.cpp:
1758         (WebCore::queryHTTPHeader):
1759         (WebCore::ResourceHandle::onRequestComplete):
1760
1761 2010-08-23  Patrick Gansterer  <paroga@paroga.com>
1762
1763         Reviewed by Adam Roben.
1764
1765         Support all available biBitCount values in BitmapInfo
1766         https://bugs.webkit.org/show_bug.cgi?id=43724
1767
1768         Add an enum with all possible values for biBitCount.
1769         Also remove explicit initialization of bmiHeader members,
1770         because that is already done in the constructor.
1771
1772         * platform/win/BitmapInfo.cpp: Added property svn:eol-style.
1773         (WebCore::bitmapInfoForSize):
1774         (WebCore::BitmapInfo::create):
1775         (WebCore::BitmapInfo::createBottomUp):
1776         * platform/win/BitmapInfo.h: Added property svn:eol-style.
1777         (WebCore::BitmapInfo::):
1778         (WebCore::BitmapInfo::bytesPerLine):
1779         (WebCore::BitmapInfo::paddedBytesPerLine):
1780         (WebCore::BitmapInfo::paddedWidth):
1781         * platform/win/PopupMenuWin.cpp:
1782         (WebCore::PopupMenuWin::paint):
1783
1784 2010-08-23  Kent Tamura  <tkent@chromium.org>
1785
1786         Unreviewed, build fix for r65852.
1787
1788         * rendering/RenderTextControlSingleLine.cpp:
1789         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
1790         * rendering/TextControlInnerElements.cpp:
1791         (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
1792         (WebCore::InputFieldSpeechButtonElement::create):
1793         * rendering/TextControlInnerElements.h:
1794
1795 2010-08-23  Ryosuke Niwa  <rniwa@webkit.org>
1796
1797         Reviewed by Eric Seidel.
1798
1799         MarkupAccumulator::appendStartMarkup should be broken down into pieces
1800         https://bugs.webkit.org/show_bug.cgi?id=44288
1801
1802         Extracted appendText, appendComment, appendProcessingInstruction, appendElement and appendCDATASection.
1803         Also simplified the conditionals in appendText.
1804
1805         No new tests are added since this is a cleanup.
1806
1807         * editing/markup.cpp:
1808         (WebCore::MarkupAccumulator::appendText):
1809         (WebCore::MarkupAccumulator::appendComment):
1810         (WebCore::MarkupAccumulator::appendProcessingInstruction):
1811         (WebCore::MarkupAccumulator::appendElement):
1812         (WebCore::MarkupAccumulator::appendCDATASection):
1813         (WebCore::MarkupAccumulator::appendStartMarkup):
1814
1815 2010-08-23  Simon Fraser  <simon.fraser@apple.com>
1816
1817         Reviewed by Alexey Proskuryakov.
1818
1819         TreeWalker is not calling acceptNode function in filter object
1820         https://bugs.webkit.org/show_bug.cgi?id=35296
1821         
1822         Fix incorrect shadowing of the 'function' variable, which could result
1823         in badness when asking for arguments.callee.
1824
1825         * bindings/js/JSNodeFilterCondition.cpp:
1826         (WebCore::JSNodeFilterCondition::acceptNode):
1827
1828 2010-08-23  Darin Adler  <darin@apple.com>
1829
1830         Reviewed by Geoff Garen.
1831
1832         Changed type of Node::parentNode to ContainerNode so we don't have to cast,
1833         since parent are all containers.
1834
1835         * css/CSSStyleSelector.h: Changed m_parentNode to ContainerNode*.
1836
1837         * dom/Document.h: Fixed the type of TreeShared in the Node constructor.
1838         Yes, it's here.
1839
1840         * dom/Node.cpp:
1841         (WebCore::Node::eventParentNode): Removed now-unneeded typecast dance.
1842         (WebCore::eventTargetAsSVGElementInstance):Changed type to ContainerNode*.
1843
1844         * dom/Node.h: Made Node inherit from TreeShared<ContainerNode> instead of
1845         from TreeShared<Node>. Removed bogus comment. Changed return type of parentNode
1846         and shadowParentNode functions to ContainerNode*. Fixed using to use
1847         TreeShared<ContainerNode>.
1848
1849         * dom/Position.h: Include ContainerNode.h instead of Node.h.
1850
1851         * html/HTMLConstructionSite.cpp:
1852         (WebCore::HTMLConstructionSite::findFosterSite): Removed now-unneeded typecast.
1853
1854         * rendering/MediaControlElements.h:
1855         * rendering/SVGShadowTreeElements.h:
1856         * rendering/TextControlInnerElements.h:
1857         Changed return type of shadowParentNode functions to ContainerNode.
1858
1859         * rendering/RenderMeter.cpp:
1860         (WebCore::RenderMeter::updatePartsState): Cast the node to HTMLElement* before
1861         passing it to the function that creates the shadow element. We know the node is
1862         a HTMLMeterElement, but the node function doesn't know that.
1863         * rendering/RenderProgress.cpp:
1864         (WebCore::RenderProgress::updatePartsState): Ditto.
1865         * rendering/RenderSlider.cpp:
1866         (WebCore::SliderThumbElement::SliderThumbElement): More of the same.
1867         (WebCore::SliderThumbElement::create): Ditto.
1868         (WebCore::RenderSlider::updateFromElement): Ditto.
1869         * rendering/RenderTextControl.cpp:
1870         (WebCore::RenderTextControl::createSubtreeIfNeeded): Ditto.
1871         * rendering/RenderTextControlSingleLine.cpp:
1872         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): Ditto.
1873         * rendering/SVGShadowTreeElements.cpp:
1874         (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Ditto.
1875         (WebCore::SVGShadowTreeRootElement::shadowParentNode): Ditto.
1876         * rendering/ShadowElement.cpp:
1877         (WebCore::ShadowBlockElement::create): Ditto.
1878         (WebCore::ShadowBlockElement::ShadowBlockElement): Ditto.
1879         (WebCore::ShadowBlockElement::createForPart): Ditto.
1880         (WebCore::ShadowInputElement::create): Ditto.
1881         (WebCore::ShadowInputElement::ShadowInputElement): Ditto.
1882         * rendering/ShadowElement.h:
1883         (WebCore::ShadowElement::ShadowElement): Ditto.
1884         (WebCore::ShadowElement::shadowParent): Ditto.
1885         (WebCore::ShadowElement::shadowParentNode): Ditto.
1886         * rendering/TextControlInnerElements.cpp:
1887         (WebCore::TextControlInnerElement::TextControlInnerElement): Ditto.
1888         (WebCore::TextControlInnerElement::create): Ditto.
1889         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement): Ditto.
1890         (WebCore::TextControlInnerTextElement::create): Ditto.
1891         (WebCore::SpinButtonElement::SpinButtonElement): Ditto.
1892         (WebCore::SpinButtonElement::create): Ditto.
1893
1894         * svg/SVGElement.cpp:
1895         (WebCore::SVGElement::eventParentNode): Removed now-unneeded typecast.
1896
1897         * svg/SVGStyledElement.cpp:
1898         (WebCore::SVGStyledElement::title): Changed type to ContainerNode*.
1899
1900 2010-08-23  Martin Robinson  <mrobinson@igalia.com>
1901
1902         Reviewed by Gustavo Noronha Silva.
1903
1904         [GTK] The Mozilla theme drawing code incorrectly renders scrollbar backgrounds
1905         https://bugs.webkit.org/show_bug.cgi?id=44388
1906
1907         No new tests as this functionality is currently unused. When the
1908         the new scrollbar theme code lands for GTK+, this will be tested
1909         by scrollbar pixel tests.
1910
1911         * platform/gtk/gtk2drawing.c: Expose a method to paint scrolled window
1912         backgrounds and disable incorrect rendering of scrollbar trough backgrounds.
1913         (moz_gtk_scrolled_window_paint): Added.
1914         (moz_gtk_scrollbar_trough_paint): Disable incorrect background render.
1915         * platform/gtk/gtkdrawing.h: Add scrolled window widget type in the enum.
1916
1917 2010-08-23  Martin Robinson  <mrobinson@igalia.com>
1918
1919         Reviewed by Gustavo Noronha Silva.
1920
1921         [GTK] The Mozilla theme drawing API should expose extra information about scrollbar geometry
1922         https://bugs.webkit.org/show_bug.cgi?id=44385
1923
1924         Expose the trough_under_steppers property in MozGtkScrollbarMetrics.
1925
1926         No new tests as this does not change functionality.
1927
1928         * platform/gtk/gtk2drawing.c: Set the trough_under_steppers member when accessing theme data.
1929         * platform/gtk/gtkdrawing.h: Add the trough_under_steppers member.
1930
1931 2010-08-23  Darin Adler  <darin@apple.com>
1932
1933         Reviewed by Geoff Garen.
1934
1935         Parser DOM tree manipulation functions do not need to be virtual.
1936
1937         * dom/ContainerNode.h: Made parserAddChild, parserRemoveChild, and
1938         parserInsertBefore non-virtual.
1939
1940         * dom/Node.cpp: Removed the parserAddChild, parserRemoveChild, and
1941         parserInsertBefore functions, which should never have been in the Node class.
1942         * dom/Node.h: Ditto.
1943
1944         * html/HTMLConstructionSite.cpp:
1945         (WebCore::HTMLConstructionSite::attach): Changed argument type to ContainerNode*
1946         because we never need to attach a child to a non-container node.
1947         (WebCore::HTMLConstructionSite::findFosterSite): Cast the result of the parent
1948         function to ContainerNode*. A parent is always guaranteed to be a container, but
1949         the parent function returns a Node* so that callers can use it without including
1950         ContainerNode's header. That seems like something we can easily fix later.
1951
1952         * html/HTMLConstructionSite.h: Changed AttachmentSite::parent and the
1953         attach function to ContainerNode* instead of Node*.
1954
1955 2010-08-23  Adam Barth  <abarth@webkit.org>
1956
1957         Reviewed by Eric Seidel.
1958
1959         editing/pasteboard/bad-placeholder.html fails with --html5-treebuilder
1960         https://bugs.webkit.org/show_bug.cgi?id=44463
1961
1962         The problem here is that using the documentElement as the context puts
1963         the tree builder into the BeforeHead insertion mode, which strips
1964         leading spaces.  This code is confused about what it wants, but it
1965         certainly doesn't want to be in that insertion mode.  Looking through
1966         the callers, they'd much rather be in the InBody insertion mode.  We
1967         can get them there by creating a fake body element as the context
1968         element.
1969
1970         In the long term, all this code needs to be changed to move away from
1971         deprecatedCreateContextualFragment, which does a bunch of nasty stuff
1972         like removing certain kinds of elements.  However, that's a battle for
1973         another day.
1974
1975         * editing/markup.cpp:
1976         (WebCore::createFragmentFromMarkup):
1977
1978 2010-08-23  Adam Barth  <abarth@webkit.org>
1979
1980         Reviewed by Eric Seidel.
1981
1982         fast/xsl/default-html.html fails with HTML5 fragment parsing
1983         https://bugs.webkit.org/show_bug.cgi?id=44450
1984
1985         This patch is a step down a trail of tears.  As far as I can tell,
1986         there's no spec for XSLTProcessor.transformToFragment.  This patch
1987         attempts to infer the proper behavior from test cases and the Mozilla
1988         wiki.
1989
1990         * xml/XSLTProcessor.cpp:
1991         (WebCore::createFragmentFromSource):
1992
1993 2010-08-23  Adam Barth  <abarth@webkit.org>
1994
1995         Reviewed by Eric Seidel.
1996
1997         editing/pasteboard/paste-visible-script.html is broken with --html5-treebuilder
1998         https://bugs.webkit.org/show_bug.cgi?id=44457
1999
2000         Turns out there are two more checks we need for fragment scripting
2001         permission.  Not the most beautiful design, but it seems work.
2002
2003         * html/HTMLConstructionSite.cpp:
2004         (WebCore::HTMLConstructionSite::insertScriptElement):
2005         * html/HTMLTreeBuilder.cpp:
2006         (WebCore::HTMLTreeBuilder::processEndTag):
2007
2008 2010-08-23  Eric Seidel  <eric@webkit.org>
2009
2010         Reviewed by Adam Barth.
2011
2012         fast/dom/script-innerHTML-x.xhtml fails when run with the HTML5 TreeBuilder in fragment mode
2013         https://bugs.webkit.org/show_bug.cgi?id=44447
2014
2015         This special handling for script/style used to exist in
2016         setInnerHTML.  HTML5 moves this logic into the HTML and XML
2017         parsers instead of in setInnerHTML.
2018
2019         In order to share this logic between WebKit's two XML parsers
2020         I had to clean up a bit of the libxml2 parser and add a
2021         new appendFragmentSource method.
2022
2023         Covered by fast/dom/script-innerHTML-x.xhtml.
2024
2025         * dom/XMLDocumentParser.cpp:
2026         (WebCore::XMLDocumentParser::end):
2027          - Now that libxml2 is calling finish() for fragments (Qt already was)
2028            I went through and removed this unneeded style update after fragment parsing.
2029         (WebCore::XMLDocumentParser::parseDocumentFragment):
2030          - Yay for shared code!
2031          - This is where I added the style/script hack moved from setInnerHTML.
2032         * dom/XMLDocumentParser.h:
2033          - Fix indent.
2034         * dom/XMLDocumentParserLibxml2.cpp:
2035          - Removed parseDocumentFragment and moved necessary libxml-specific
2036            logic into appendFragmentSource.
2037         (WebCore::XMLDocumentParser::appendFragmentSource):
2038         * dom/XMLDocumentParserQt.cpp:
2039         (WebCore::XMLDocumentParser::appendFragmentSource):
2040
2041 2010-08-23  Kenneth Russell  <kbr@google.com>
2042
2043         Reviewed by Dimitri Glazkov.
2044
2045         Remove references to ArrayBuffer and ArrayBufferView from GraphicsContext3D
2046         https://bugs.webkit.org/show_bug.cgi?id=44455
2047
2048         Updated Safari, Qt and Chromium WebGL ports to avoid referencing
2049         ArrayBuffer and ArrayBufferView types from GraphicsContext3D.
2050
2051         Ran all WebGL layout tests; no new regressions. Built and tested
2052         WebKit on Mac OS X; built Chromium on Mac OS X and Linux.
2053
2054         * html/canvas/WebGLBuffer.cpp:
2055         * html/canvas/WebGLBuffer.h:
2056         * html/canvas/WebGLRenderingContext.cpp:
2057         (WebCore::WebGLRenderingContext::bufferData):
2058         (WebCore::WebGLRenderingContext::bufferSubData):
2059         (WebCore::WebGLRenderingContext::texImage2D):
2060         (WebCore::WebGLRenderingContext::texSubImage2D):
2061         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
2062         * platform/graphics/GraphicsContext3D.cpp:
2063         (WebCore::GraphicsContext3D::extractTextureData):
2064         * platform/graphics/GraphicsContext3D.h:
2065         * platform/graphics/chromium/GLES2Canvas.cpp:
2066         (WebCore::GLES2Canvas::getQuadVertices):
2067         * platform/graphics/mac/GraphicsContext3DMac.mm:
2068         (WebCore::GraphicsContext3D::bufferData):
2069         (WebCore::GraphicsContext3D::bufferSubData):
2070         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2071         (WebCore::GraphicsContext3D::bufferData):
2072         (WebCore::GraphicsContext3D::bufferSubData):
2073
2074 2010-08-20  Stephen White  <senorblanco@chromium.org>
2075
2076         Reviewed by Kenneth Russell.
2077
2078         [CHROMIUM] Fix some failing layout tests w/ACCELERATED_2D_CANVAS
2079         https://bugs.webkit.org/show_bug.cgi?id=44346
2080
2081         LayoutTests/fast/canvas/canvas-incremental-repaint.html (top middle
2082         pane).
2083         Failing because we were not applying the CTM in clearRect().  Now using
2084         the fast path when the CTM is identity, and a fillRect() for the rest.
2085         LayoutTests/fast/canvas/canvas-strokeRect.html
2086         LayoutTests/fast/canvas/shadow-offset-[1-7].html
2087         Failing because we weren't switching to the software path when a 
2088         shadow is present.
2089         Also refactor the two versions of fillRect(), and use TRIANGLE_STRIP
2090         strip instead of TRIANGLES, which lets us get rid of the element array
2091         and use drawArrays() instead of drawElements().
2092
2093         Covered by the above layout tests.
2094
2095         * platform/graphics/chromium/GLES2Canvas.cpp:
2096         (WebCore::GLES2Canvas::GLES2Canvas):
2097         (WebCore::GLES2Canvas::~GLES2Canvas):
2098         Remove m_quadIndices (now unused).
2099         (WebCore::GLES2Canvas::clearRect):
2100         Use a glClear() fast path for the identity-CTM clear, and fillRect()
2101         for the rest.
2102         (WebCore::GLES2Canvas::fillRect):
2103         Refactor the two versions of fillRect().
2104         (WebCore::GLES2Canvas::drawTexturedRect):
2105         (WebCore::GLES2Canvas::drawTexturedRectTile):
2106         Get rid of the ELEMENT_ARRAY_BUFFER bind.  Use drawArrays() instead of
2107         drawElements().
2108         (WebCore::GLES2Canvas::getQuadVertices):
2109         Re-order the vertices so they form a triangle strip.
2110         * platform/graphics/chromium/GLES2Canvas.h:
2111         Remove m_quadIndices (now unused).
2112         * platform/graphics/skia/GraphicsContextSkia.cpp:
2113         (WebCore::GraphicsContext::fillRect):
2114         Check for a draw looper (shadow), and drop to the software path.
2115
2116 2010-08-23  Patrick Gansterer  <paroga@paroga.com>
2117
2118         Reviewed by Adam Roben.
2119
2120         Move filehandling into fileLoadTimer callback
2121         https://bugs.webkit.org/show_bug.cgi?id=43714
2122
2123         Also add mimetype detection for local files.
2124
2125         * platform/network/ResourceHandleInternal.h:
2126         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2127         * platform/network/win/ResourceHandleWin.cpp:
2128         (WebCore::ResourceHandle::start):
2129         (WebCore::ResourceHandle::fileLoadTimer):
2130
2131 2010-08-23  Iain Merrick  <husky@google.com>
2132
2133         Reviewed by Steve Block.
2134
2135         Update JNI bridge for V8 after renaming of JavaString::utf8().
2136         https://bugs.webkit.org/show_bug.cgi?id=44419
2137
2138         This fixes the build on Android. No new functionality, so no new tests.
2139
2140         * bridge/jni/v8/JNIBridgeV8.cpp:
2141         (JavaField::JavaField):
2142         * bridge/jni/v8/JNIBridgeV8.h:
2143         (JSC::Bindings::JavaField::type):
2144         * bridge/jni/v8/JavaClassV8.cpp:
2145         (JavaClass::JavaClass):
2146         * bridge/jni/v8/JavaNPObjectV8.cpp:
2147         (JSC::Bindings::JavaNPObjectGetProperty):
2148         * bridge/jni/v8/JavaStringV8.h:
2149         (JSC::Bindings::JavaStringImpl::utf8):
2150
2151 2010-08-23  Mihai Parparita  <mihaip@chromium.org>
2152
2153         Reviewed by David Hyatt.
2154
2155         Assertion failure in FrameView::layout when modifying the DOM during
2156         pagehide with PageCache enabled
2157         https://bugs.webkit.org/show_bug.cgi?id=43152
2158
2159         Always unschedule any pending relayouts when changing the view, not just
2160         when we're not using the page cache. Otherwise touching the DOM during
2161         the pagehide handler can lead to layouts that will be done by the time
2162         the view has changed, which triggers an assert.
2163
2164         Test: fast/loader/unschedule-relayout-after-unload.html
2165
2166         * page/Frame.cpp:
2167         (WebCore::Frame::setView): move unscheduleRelayout outside page cache
2168         check.
2169         * page/FrameView.cpp:
2170         (WebCore::FrameView::layout): remove early return now that assert
2171         should be correct (and the referenced rdar:// got fixed).
2172
2173 2010-08-23  Abhishek Arya  <inferno@chromium.org>
2174
2175         Reviewed by Dimitri Glazkov.
2176
2177         Fix security origin calculation in createPattern. Need to use
2178         cachedImage->response().url() instead of cachedImage->url().
2179         https://bugs.webkit.org/show_bug.cgi?id=44399.
2180
2181         Test: http/tests/security/canvas-remote-read-remote-image-redirect.html
2182
2183         * html/canvas/CanvasRenderingContext2D.cpp:
2184         (WebCore::CanvasRenderingContext2D::createPattern):
2185
2186 2010-08-23  Simon Fraser  <simon.fraser@apple.com>
2187
2188         Reviewed by Alexey Proskuryakov.
2189
2190         TreeWalker is not calling acceptNode function in filter object
2191         https://bugs.webkit.org/show_bug.cgi?id=35296
2192         
2193         We only accepted raw functions as the NodeFilter on TreeWalker. Fix this to
2194         look for an 'acceptNode' function on the filter object, and use that if present.
2195         Also throw an exception if the filter object does not have an acceptNode function.
2196
2197         Test: fast/dom/TreeWalker/acceptNode-filter.html
2198
2199         * bindings/js/JSNodeFilterCondition.cpp:
2200         (WebCore::JSNodeFilterCondition::acceptNode):
2201
2202 2010-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2203
2204         Unreviewed, rolling out r65814.
2205         http://trac.webkit.org/changeset/65814
2206         https://bugs.webkit.org/show_bug.cgi?id=44443
2207
2208         broke svg/custom/missing-xlink.svg (Requested by kling on
2209         #webkit).
2210
2211         * dom/Element.cpp:
2212         (WebCore::Element::setAttributeNS):
2213
2214 2010-08-23  Jian Li  <jianli@chromium.org>
2215
2216         Reviewed by Darin Fisher.
2217
2218         Handle blob resource.
2219         https://bugs.webkit.org/show_bug.cgi?id=43941
2220
2221         To provide lower level blob reosurce handling for all possible ports,
2222         BlobResourceHandle derived from ResourceHandle is implemented. It provides
2223         both synchronous and asynchronous resource loading for blob URL.
2224
2225         BlobResourceHandle needs to create a FileStreamProxy instance in order to
2226         asynchronous file stream operation. To achive this, a hook createAsyncFileStream
2227         is added to ResourceHandleClient interface. When ResourceLoader implements
2228         ths hook, it creates and returns FileStreamProxy.
2229
2230         BlobResourceHandle.* is not added to chromium port since it will implement
2231         its own blob resource handling.
2232
2233         * Android.mk:
2234         * CMakeLists.txt:
2235         * GNUmakefile.am:
2236         * WebCore.pro:
2237         * WebCore.vcproj/WebCore.vcproj:
2238         * WebCore.xcodeproj/project.pbxproj:
2239         * loader/ResourceLoader.cpp:
2240         (WebCore::ResourceLoader::createAsyncFileStream): Create and return FileStreamProxy.
2241         * loader/ResourceLoader.h:
2242         * page/SecurityOrigin.cpp: Add the support to get and validate the origin of blob URL.
2243         (WebCore::SecurityOrigin::create):
2244         (WebCore::SecurityOrigin::canLoad):
2245         * platform/network/BlobRegistryImpl.cpp:
2246         (WebCore::BlobRegistryImpl::appendStorageItems): Fix a bug that the length is not subtracted.
2247         * platform/network/BlobResourceHandle.cpp: Added.
2248         * platform/network/BlobResourceHandle.h: Added.
2249         * platform/network/HTTPParsers.cpp:
2250         (WebCore::parseRange):
2251         * platform/network/HTTPParsers.h:
2252         * platform/network/ResourceHandle.cpp: Hook up with asynchronous blob resource handling.
2253         (WebCore::ResourceHandle::create):
2254         * platform/network/ResourceHandle.h:
2255         * platform/network/ResourceHandleClient.h:
2256         (WebCore::ResourceHandleClient::createAsyncFileStream): Add a hook.
2257         * platform/network/mac/ResourceHandleMac.mm:
2258         (WebCore::ResourceHandle::loadResourceSynchronously): Hook up with synchronous blob resource handling.
2259
2260 2010-08-23  Jian Li  <jianli@chromium.org>
2261
2262         Reviewed by David Levin.
2263
2264         Remove unneeded BlobRegistryImpl.* and WebBlobRegistryImpl.* from
2265         chromium project files.
2266         https://bugs.webkit.org/show_bug.cgi?id=44442
2267
2268         * WebCore.gypi:
2269
2270 2010-08-23  Adam Barth  <abarth@webkit.org>
2271
2272         Reviewed by Eric Seidel.
2273
2274         Many LayoutTests crash when run with --html5-treebuilder
2275         https://bugs.webkit.org/show_bug.cgi?id=44440
2276
2277         Our list of special tags is out of sync with the HTML5 spec.  This
2278         patch adds HTML to the list, which fixs a ton of crashers when parsing
2279         fragments.  We neet to sync up the list at some point, but we want to
2280         make sure we have test coverage for all those changes, so I've left
2281         that for a future patch.
2282
2283         * html/HTMLTreeBuilder.cpp:
2284
2285 2010-08-23  Ilya Tikhonovsky  <loislo@chromium.org>
2286
2287         Reviewed by Pavel Feldman.
2288
2289         WebInspector: Context menu in Scripts panel was broken.
2290         https://bugs.webkit.org/show_bug.cgi?id=44431
2291
2292         * inspector/InspectorFrontendHost.cpp:
2293         (WebCore::FrontendMenuProvider::contextMenuItemSelected):
2294         (WebCore::FrontendMenuProvider::contextMenuCleared):
2295
2296 2010-08-23  Andreas Kling  <andreas.kling@nokia.com>
2297
2298         Reviewed by Tor Arne Vestbø.
2299
2300         setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace
2301         https://bugs.webkit.org/show_bug.cgi?id=44432
2302
2303         Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html
2304
2305         * dom/Element.cpp:
2306         (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null
2307         and the qualifiedName has a prefix.
2308
2309 2010-08-23  Ryuan Choi  <ryuan.choi@samsung.com>
2310
2311         Reviewed by Antonio Gomes.
2312
2313         [EFL] rendering was broken when missing plugin.
2314         https://bugs.webkit.org/show_bug.cgi?id=43395
2315
2316         Implement RenderThemeEfl::systemFont to render "Missing plugin" when we
2317         don't have proper plugin.
2318         In this case, RenderEmbeddedObject::paintReplaced call systemFont and
2319         pass returned font to GraphicsContext.
2320
2321         * platform/efl/RenderThemeEfl.cpp:
2322         (WebCore::RenderThemeEfl::setDefaultFontSize):
2323         (WebCore::RenderThemeEfl::systemFont):
2324         * platform/efl/RenderThemeEfl.h:
2325
2326 2010-08-23  Pavel Podivilov  <podivilov@chromium.org>
2327
2328         Reviewed by Pavel Feldman.
2329
2330         Web Inspector: remove javascript breakpoint specific code from BreakpointSidebarPane
2331         https://bugs.webkit.org/show_bug.cgi?id=44327
2332
2333         * inspector/front-end/BreakpointManager.js:
2334         (WebInspector.BreakpointManager.prototype.setBreakpoint):
2335         (WebInspector.BreakpointManager.prototype.restoredBreakpoint):
2336         (WebInspector.BreakpointManager.prototype._setBreakpoint):
2337         (WebInspector.BreakpointManager.prototype._removeBreakpoint):
2338         (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
2339         (WebInspector.Breakpoint):
2340         * inspector/front-end/BreakpointsSidebarPane.js:
2341         (WebInspector.BreakpointsSidebarPane):
2342         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
2343         (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved):
2344         (WebInspector.JSBreakpointItem):
2345         (WebInspector.JSBreakpointItem.prototype.compareTo):
2346         (WebInspector.JSBreakpointItem.prototype.element):
2347         (WebInspector.JSBreakpointItem.prototype._breakpointClicked):
2348         (WebInspector.JSBreakpointItem.prototype._checkboxClicked):
2349         (WebInspector.JSBreakpointItem.prototype._enableChanged):
2350         (WebInspector.JSBreakpointItem.prototype._textChanged):
2351         (WebInspector.JSBreakpointItem.prototype._removed):
2352         * inspector/front-end/ScriptsPanel.js:
2353         (WebInspector.ScriptsPanel):
2354         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
2355         (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
2356         * inspector/front-end/SourceFrame.js:
2357         (WebInspector.SourceFrame.prototype.addBreakpoint):
2358         (WebInspector.SourceFrame.prototype._addBreakpointToSource):
2359
2360 2010-08-23  Ilya Tikhonovsky  <loislo@chromium.org>
2361
2362         Reviewed by Yury Semikhatsky.
2363
2364         WebInspector: inspector protocol should be switched from array based
2365         message format to object based message format.
2366         Almost all the protocol related things is generated by CodeGeneratorInspector.pm
2367         It was changed a bit. As result InspectorBackendStub.js wraps the
2368         calls into Request objects. InspectorBackendDispatcher.cpp unwraps
2369         these objects and calls corresponding agents. These two files and
2370         RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm
2371         Dispatching part of WebInspector also was adjusted for handling Event
2372         objects produced by RemoteInspectorFrontend.cpp and Response objects
2373         produced by InspectorBackendDispatcher.cpp
2374         https://bugs.webkit.org/show_bug.cgi?id=44338
2375
2376         * inspector/CodeGeneratorInspector.pm:
2377         * inspector/Inspector.idl:
2378         * inspector/InspectorController.cpp:
2379         (WebCore::InspectorController::setAttachedWindow):
2380         * inspector/InspectorController.h:
2381         * inspector/InspectorFrontendClientLocal.cpp:
2382         (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
2383         * inspector/InspectorValues.h:
2384         (WebCore::InspectorObject::find):
2385         * inspector/front-end/Callback.js:
2386         (WebInspector.Callback.prototype.processResponse):
2387         * inspector/front-end/inspector.js:
2388         (WebInspector.dispatch):
2389         (WebInspector_syncDispatch):
2390         (WebInspector.dispatchMessageFromBackend):
2391         (WebInspector.reportProtocolError):
2392
2393 2010-08-19  Jeremy Orlow  <jorlow@chromium.org>
2394
2395         Reviewed by Steve Block.
2396
2397         Remove IDBDatabase.description per spec changes
2398         https://bugs.webkit.org/show_bug.cgi?id=44264
2399
2400         There's now no longer any way to access the description from JS.
2401         The main premise of the manual test is now obsolete. Over time we'll
2402         be able to add to it again. While I'm at it, I cleaned up the format
2403         of the manual test to be easier to follow (code and usage wise).
2404
2405         * manual-tests/indexed-database.html:
2406         * storage/IDBDatabase.cpp:
2407         (WebCore::IDBDatabase::IDBDatabase):
2408         * storage/IDBDatabase.h:
2409         * storage/IDBDatabase.idl:
2410
2411 2010-08-23  Pavel Feldman  <pfeldman@chromium.org>
2412
2413         Reviewed by Yury Semikhatsky.
2414
2415         Web Inspector: element's css: pseudo-class locations
2416         https://bugs.webkit.org/show_bug.cgi?id=44344
2417
2418         Also contains a drive-by fix for 44301 (gray out read-only).
2419
2420         * inspector/front-end/StylesSidebarPane.js:
2421         (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
2422         (WebInspector.StylesSidebarPane.prototype.update):
2423         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
2424         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
2425         (WebInspector.StylePropertiesSection):
2426
2427 2010-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2428
2429         Unreviewed, rolling out r65803.
2430         http://trac.webkit.org/changeset/65803
2431         https://bugs.webkit.org/show_bug.cgi?id=44416
2432
2433         windows build failed (Requested by loislo on #webkit).
2434
2435         * inspector/CodeGeneratorInspector.pm:
2436         * inspector/Inspector.idl:
2437         * inspector/InspectorController.cpp:
2438         * inspector/InspectorController.h:
2439         * inspector/InspectorFrontendClientLocal.cpp:
2440         (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
2441         * inspector/InspectorValues.h:
2442         * inspector/front-end/Callback.js:
2443         (WebInspector.Callback.prototype.processResponse):
2444         * inspector/front-end/inspector.js:
2445         (WebInspector.dispatch.delayDispatch):
2446         (WebInspector.dispatch):
2447         (WebInspector_syncDispatch):
2448         (WebInspector.dispatchMessageFromBackend):
2449         (WebInspector.reportProtocolError):
2450
2451 2010-08-23  Ilya Tikhonovsky  <loislo@chromium.org>
2452
2453         Reviewed by Yury Semikhatsky.
2454
2455         WebInspector: inspector protocol should be switched from array based
2456         message format to object based message format.
2457         Almost all the protocol related things is generated by CodeGeneratorInspector.pm
2458         It was changed a bit. As result InspectorBackendStub.js wraps the
2459         calls into Request objects. InspectorBackendDispatcher.cpp unwraps
2460         these objects and calls corresponding agents. These two files and
2461         RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm
2462         Dispatching part of WebInspector also was adjusted for handling Event
2463         objects produced by RemoteInspectorFrontend.cpp and Response objects
2464         produced by InspectorBackendDispatcher.cpp
2465         https://bugs.webkit.org/show_bug.cgi?id=44338
2466
2467         * inspector/CodeGeneratorInspector.pm:
2468         * inspector/Inspector.idl:
2469         * inspector/InspectorController.cpp:
2470         (WebCore::InspectorController::setAttachedWindow):
2471         * inspector/InspectorController.h:
2472         * inspector/InspectorFrontendClientLocal.cpp:
2473         (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
2474         * inspector/InspectorValues.h:
2475         (WebCore::InspectorObject::find):
2476         * inspector/front-end/Callback.js:
2477         (WebInspector.Callback.prototype.processResponse):
2478         * inspector/front-end/inspector.js:
2479         (WebInspector.dispatch):
2480         (WebInspector_syncDispatch):
2481         (WebInspector.dispatchMessageFromBackend):
2482         (WebInspector.reportProtocolError):
2483
2484 2010-08-23  Alejandro G. Castro  <alex@igalia.com>
2485
2486         Reviewed by Xan Lopez.
2487
2488         Make the copy of the inspector files silent.
2489
2490         * GNUmakefile.am:
2491
2492 2010-08-23  Andreas Kling  <andreas.kling@nokia.com>
2493
2494         Reviewed by Kenneth Rohde Christiansen.
2495
2496         [Qt] -webkit-text-stroke is broken due to Qt::TextBypassShaping
2497         https://bugs.webkit.org/show_bug.cgi?id=44403
2498
2499         Don't bypass the Harfbuzz shaping if we're drawing text with a stroke.
2500         For canvas, always use complex text shaping since stroke and fill are decoupled.
2501
2502         * html/canvas/CanvasRenderingContext2D.cpp:
2503         (WebCore::CanvasRenderingContext2D::measureText):
2504         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2505         * platform/graphics/qt/FontQt.cpp:
2506         (WebCore::drawTextCommon):
2507
2508 2010-08-23  Mikhail Naganov  <mnaganov@chromium.org>
2509
2510         Reviewed by Pavel Feldman.
2511
2512         Extract profiler-related code and data from InspectorController into
2513         InspectorProfilerAgent.
2514
2515         https://bugs.webkit.org/show_bug.cgi?id=44174
2516
2517         * CMakeLists.txt:
2518         * GNUmakefile.am:
2519         * WebCore.exp.in:
2520         * WebCore.gypi:
2521         * WebCore.pro:
2522         * WebCore.vcproj/WebCore.vcproj:
2523         * WebCore.xcodeproj/project.pbxproj:
2524         * bindings/js/ScriptProfiler.cpp:
2525         (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
2526         * bindings/js/ScriptProfiler.h:
2527         * bindings/v8/ScriptProfiler.cpp:
2528         (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
2529         * bindings/v8/ScriptProfiler.h:
2530         * inspector/CodeGeneratorInspector.pm:
2531         * inspector/Inspector.idl:
2532         * inspector/InspectorController.cpp:
2533         (WebCore::InspectorController::InspectorController):
2534         (WebCore::InspectorController::connectFrontend):
2535         (WebCore::InspectorController::disconnectFrontend):
2536         (WebCore::InspectorController::populateScriptObjects):
2537         (WebCore::InspectorController::didCommitLoad):
2538         (WebCore::InspectorController::addProfile):
2539         (WebCore::InspectorController::addProfileFinishedMessageToConsole):
2540         (WebCore::InspectorController::addStartProfilingMessageToConsole):
2541         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
2542         (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
2543         (WebCore::InspectorController::startUserInitiatedProfiling):
2544         (WebCore::InspectorController::stopUserInitiatedProfiling):
2545         (WebCore::InspectorController::profilerEnabled):
2546         (WebCore::InspectorController::enableProfiler):
2547         (WebCore::InspectorController::disableProfiler):
2548         * inspector/InspectorController.h:
2549         (WebCore::InspectorController::profilerAgent):
2550         * inspector/InspectorProfilerAgent.cpp: Added.
2551         (WebCore::InspectorProfilerAgent::create):
2552         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
2553         (WebCore::InspectorProfilerAgent::~InspectorProfilerAgent):
2554         (WebCore::InspectorProfilerAgent::addProfile):
2555         (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
2556         (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
2557         (WebCore::InspectorProfilerAgent::createProfileHeader):
2558         (WebCore::InspectorProfilerAgent::disable):
2559         (WebCore::InspectorProfilerAgent::enable):
2560         (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName):
2561         (WebCore::InspectorProfilerAgent::getProfileHeaders):
2562         (WebCore::InspectorProfilerAgent::getProfile):
2563         (WebCore::InspectorProfilerAgent::removeProfile):
2564         (WebCore::InspectorProfilerAgent::resetState):
2565         (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
2566         (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling):
2567         (WebCore::InspectorProfilerAgent::toggleRecordButton):
2568         * inspector/InspectorProfilerAgent.h: Added.
2569         (WebCore::InspectorProfilerAgent::clearProfiles):
2570         (WebCore::InspectorProfilerAgent::enabled):
2571         (WebCore::InspectorProfilerAgent::isRecordingUserInitiatedProfile):
2572         (WebCore::InspectorProfilerAgent::setRemoteFrontend):
2573         (WebCore::InspectorProfilerAgent::startProfiling):
2574         (WebCore::InspectorProfilerAgent::stopProfiling):
2575
2576 2010-08-23  Ariya Hidayat  <ariya@sencha.com>
2577
2578         Reviewed by Kenneth Rohde Christiansen.
2579
2580         [Qt] Crash when purging the scratch buffer for the shadow
2581         https://bugs.webkit.org/show_bug.cgi?id=44384
2582
2583         WebCore::Timer can't be used in a static object bcause it relies on
2584         thread global data, which is invalid once the application instance is
2585         destroyed. To overcome the problem, use QObject's timer support for
2586         the ShadowBuffer class.
2587
2588         * platform/graphics/qt/ContextShadow.cpp:
2589         (WebCore::):
2590         (WebCore::ShadowBuffer::ShadowBuffer):
2591         (WebCore::ShadowBuffer::schedulePurge):
2592         (WebCore::ShadowBuffer::timerEvent):
2593
2594 2010-08-23  Philippe Normand  <pnormand@igalia.com>
2595
2596         Reviewed by Xan Lopez.
2597
2598         [GStreamer] don't expose the private player in GStreamerGWorld
2599         https://bugs.webkit.org/show_bug.cgi?id=44332
2600
2601         Only a pointer to our playbin2 element instance is required
2602         instead of the whole MediaPlayerPrivateGStreamer instance.
2603
2604         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
2605         (WebCore::GStreamerGWorld::createGWorld):
2606         (WebCore::GStreamerGWorld::GStreamerGWorld):
2607         (WebCore::GStreamerGWorld::~GStreamerGWorld):
2608         (WebCore::GStreamerGWorld::enterFullscreen):
2609         (WebCore::GStreamerGWorld::exitFullscreen):
2610         * platform/graphics/gstreamer/GStreamerGWorld.h:
2611         (WebCore::GStreamerGWorld::pipeline):
2612         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2613         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
2614
2615 2010-08-22  Andreas Kling  <andreas.kling@nokia.com>
2616
2617         Reviewed by Kenneth Rohde Christiansen.
2618
2619         [Qt] GraphicsContext: Simplify getting the clip bounding rect
2620         https://bugs.webkit.org/show_bug.cgi?id=44396
2621
2622         Move the Qt 4.8 version check for QPainter::clipBoundingRect()
2623         into a GraphicsContextPlatformPrivate method.
2624
2625         * platform/graphics/qt/GraphicsContextQt.cpp:
2626         (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect):
2627         (WebCore::GraphicsContext::beginTransparencyLayer):
2628         (WebCore::GraphicsContext::clipOut):
2629         (WebCore::GraphicsContext::clipOutEllipseInRect):
2630
2631 2010-08-22  Juha Savolainen  <juha.savolainen@weego.fi>
2632
2633         Reviewed by Kenneth Rohde Christiansen.
2634
2635         [Qt] Add QTouchEvents support for WebKit2
2636         https://bugs.webkit.org/show_bug.cgi?id=44330
2637
2638         This patch adds support for QTouchEvents in WebKit2. A new WebEvent-class
2639         is created for touchevents, WebTouchEvent. Also touchpoints needed a new
2640         class, WebPlatformTouchPoint. This is similar solution like in other
2641         events(like MouseEvent) on WebKit2. These classes are introduced in WebEvent.h 
2642         Also there was a need to create an empty constructor to PlatformTouchPoint-class.
2643
2644         * platform/PlatformTouchPoint.h:
2645         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
2646
2647 2010-08-22  Daniel Bates  <dbates@rim.com>
2648
2649         Reviewed by Eric Seidel.
2650
2651         Encapsulate document marker management into DocumentMarkerController
2652         https://bugs.webkit.org/show_bug.cgi?id=44383
2653
2654         Moves the document marker management code in Document.cpp into its own
2655         class called DocumentMarkerController.
2656
2657         No functionality was changed, so no new tests.
2658
2659         * Android.mk: Added DocumentMarkerController.cpp 
2660         * CMakeLists.txt: Ditto.
2661         * GNUmakefile.am: Added DocumentMarkerController.cpp and DocumentMarkerController.h.
2662         * WebCore.exp.in: Substituted symbols __ZN7WebCore24DocumentMarkerController13removeMarkersENS_14DocumentMarker10MarkerTypeE
2663         and __ZN7WebCore24DocumentMarkerController23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE for
2664         __ZN7WebCore8Document13removeMarkersENS_14DocumentMarker10MarkerTypeE and 
2665         __ZN7WebCore8Document23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE, respectively.
2666         * WebCore.gypi: Added DocumentMarkerController.cpp and DocumentMarkerController.h.
2667         * WebCore.pro: Ditto.
2668         * WebCore.vcproj/WebCore.vcproj: Ditto.
2669         * WebCore.xcodeproj/project.pbxproj: Ditto.
2670         * dom/Document.cpp:
2671         (WebCore::Document::removedLastRef): Modified to call DocumentMarkerController::detach().
2672         (WebCore::Document::~Document): Removed "deleteAllValues(m_markers)" as DocumentMarkerController
2673         is stored in OwnPtr; so it will be destroyed automatically on Document destruction.
2674         (WebCore::Document::textInserted): Modified to use marker controller.
2675         (WebCore::Document::textRemoved): Ditto.
2676         * dom/Document.h:
2677         (WebCore::Document::markers): Added.
2678         * dom/DocumentMarkerController.cpp: Added.
2679         (WebCore::placeholderRectForMarker):
2680         (WebCore::DocumentMarkerController::detach):
2681         (WebCore::DocumentMarkerController::addMarker):
2682         (WebCore::DocumentMarkerController::removeMarkers):
2683         (WebCore::DocumentMarkerController::copyMarkers):
2684         (WebCore::DocumentMarkerController::markerContainingPoint):
2685         (WebCore::DocumentMarkerController::markersForNode):
2686         (WebCore::DocumentMarkerController::renderedRectsForMarkers):
2687         (WebCore::DocumentMarkerController::repaintMarkers):
2688         (WebCore::DocumentMarkerController::setRenderedRectForMarker):
2689         (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
2690         (WebCore::DocumentMarkerController::shiftMarkers):
2691         (WebCore::DocumentMarkerController::setMarkersActive):
2692         * dom/DocumentMarkerController.h: Added.
2693         (WebCore::DocumentMarkerController::~DocumentMarkerController):
2694         * editing/Editor.cpp:
2695         (WebCore::Editor::ignoreSpelling): Modified to use marker controller.
2696         (WebCore::findFirstMisspellingInRange): Ditto.
2697         (WebCore::findFirstGrammarDetailInRange): Ditto.
2698         (WebCore::Editor::advanceToNextMisspelling): Ditto.
2699         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
2700         (WebCore::Editor::changeBackToReplacedString): Ditto.
2701         * editing/SplitTextNodeCommand.cpp:
2702         (WebCore::SplitTextNodeCommand::doApply): Ditto.
2703         (WebCore::SplitTextNodeCommand::doUnapply): Ditto.
2704         * page/Frame.cpp:
2705         (WebCore::Frame::markAllMatchesForText): Ditto.
2706         (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Ditto.
2707         (WebCore::Frame::respondToChangedSelection): Ditto.
2708         * page/FrameView.cpp:
2709         (WebCore::FrameView::getTickmarks): Ditto.
2710         (WebCore::FrameView::paintContents): Ditto.
2711         * page/Page.cpp:
2712         (WebCore::Page::unmarkAllTextMatches): Ditto.
2713         * rendering/HitTestResult.cpp:
2714         (WebCore::HitTestResult::spellingToolTip): Ditto.
2715         (WebCore::HitTestResult::replacedString): Ditto.
2716         * rendering/InlineTextBox.cpp:
2717         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto.
2718         (WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
2719         (WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto.
2720         (WebCore::InlineTextBox::paintDocumentMarkers): Ditto.
2721         * rendering/SVGInlineTextBox.cpp:
2722         (WebCore::SVGInlineTextBox::computeTextMatchMarkerRect): Ditto.
2723
2724 2010-08-22  Jian Li  <jianli@chromium.org>
2725
2726         Reviewed by Darin Fisher.
2727
2728         Add the blob URL member to FormData.
2729         https://bugs.webkit.org/show_bug.cgi?id=44387
2730
2731         This is in preparation to switch blob implementation to using BlobData
2732         model. When a blob is added to a FormData, it is represented as a blob
2733         URL in the list.
2734
2735         * platform/network/FormData.cpp:
2736         (WebCore::FormData::appendBlob):
2737         * platform/network/FormData.h:
2738         (WebCore::FormDataElement::FormDataElement):
2739         (WebCore::FormDataElement::):
2740         (WebCore::operator==):
2741
2742 2010-08-22  Eric Seidel  <eric@webkit.org>
2743
2744         Reviewed by Adam Barth.
2745
2746         HTML5 TreeBuilder builds wrong DOM for <a><svg><tr><input></a>
2747         https://bugs.webkit.org/show_bug.cgi?id=44390
2748
2749         The HTML5 spec has changed since Adam and I original wrote
2750         the HTMLTreeBuilder.  Most important for this change was resolution of:
2751         http://www.w3.org/Bugs/Public/show_bug.cgi?id=9580
2752
2753         I also removed our "phrasing" tag support since that was also removed
2754         from the spec as part of other bug fixes.
2755
2756         This is tested by tonyg's <a><svg><tr><input></a> test in adoption01.dat.
2757
2758         * html/HTMLTreeBuilder.cpp:
2759         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
2760         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
2761         (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
2762         (WebCore::HTMLTreeBuilder::processEndTag):
2763
2764 2010-08-22  Andreas Kling  <andreas.kling@nokia.com>
2765
2766         Reviewed by Ariya Hidayat.
2767
2768         [Qt] TransparencyLayer: Always use anti-aliasing and smooth pixmap transform
2769         https://bugs.webkit.org/show_bug.cgi?id=44394
2770
2771         * platform/graphics/qt/TransparencyLayer.h:
2772         (WebCore::TransparencyLayer::TransparencyLayer): Set the Antialiasing
2773         and SmoothPixmapTransforms render hints for all TransparencyLayers.
2774
2775 2010-08-22  Andreas Kling  <andreas.kling@nokia.com>
2776
2777         Reviewed by Ariya Hidayat.
2778
2779         [Qt] Gradient: Support inner radius larger than outer radius
2780         https://bugs.webkit.org/show_bug.cgi?id=44392
2781
2782         * platform/graphics/qt/GradientQt.cpp:
2783         (WebCore::Gradient::platformGradient): Reverse the (radial) gradient if r0 > r1.
2784
2785 2010-08-22  Ariya Hidayat  <ariya@sencha.com>
2786
2787         Reviewed by Dirk Schulze.
2788
2789         [Qt] Layer approach to support generic shadow handling
2790         https://bugs.webkit.org/show_bug.cgi?id=44380
2791
2792         The pair beginShadowLayer and endShadowLayer creates a temporary image
2793         where the caller can draw onto, using the returned QPainter. When
2794         endShadowLayer is called, the temporary image will be filtered, using
2795         the specified shadow color and blur radius, and drawn to the graphics
2796         context.
2797
2798         * platform/graphics/GraphicsContext.h:
2799         * platform/graphics/qt/ContextShadow.cpp:
2800         (WebCore::ContextShadow::beginShadowLayer):
2801         (WebCore::ContextShadow::endShadowLayer):
2802         * platform/graphics/qt/ContextShadow.h:
2803         * platform/graphics/qt/GraphicsContextQt.cpp:
2804         (WebCore::GraphicsContext::fillRect):
2805         (WebCore::GraphicsContext::contextShadow):
2806
2807 2010-08-21  Eric Carlson  <eric.carlson@apple.com>
2808
2809         Reviewed by Dan Bernstein.
2810
2811         Media engine should not be asked to open all urls
2812         https://bugs.webkit.org/show_bug.cgi?id=44370
2813
2814         * platform/graphics/MediaPlayer.cpp:
2815         (WebCore::MediaPlayer::load): Do nothing with urls with a type attribute that would be
2816         rejected by canPlayType().
2817
2818 2010-08-21  Ariya Hidayat  <ariya@sencha.com>
2819
2820         Reviewed by Kenneth Rohde Christiansen.
2821
2822         [Qt] Faster bounding rect for the shadow clip region
2823         https://bugs.webkit.org/show_bug.cgi?id=44369
2824
2825         Like in r65650, we should use the faster QPainter::clipBoundingRect
2826         when it is available.
2827
2828         * platform/graphics/qt/ContextShadow.cpp:
2829         (WebCore::ContextShadow::drawShadowRect):
2830
2831 2010-08-20  Girish Ramakrishnan  <girish@forwardbias.in>
2832
2833         Reviewed by Ariya Hidayat.
2834
2835         [Qt] When using the raster graphics system on Maemo5, allow
2836         Flash to render directly into the raster window surface.
2837         wmode=transparent is now supported as a result of this change.
2838         
2839         https://bugs.webkit.org/show_bug.cgi?id=44043
2840         
2841         * plugins/qt/PluginViewQt.cpp:
2842         (WebCore::PluginView::paintUsingImageSurfaceExtension):
2843
2844 2010-08-20  Alexey Proskuryakov  <ap@apple.com>
2845
2846         Reviewed by Brady Eidson.
2847
2848         https://bugs.webkit.org/show_bug.cgi?id=38428
2849         HTTP code 500 (and other non-4xx codes) wrongfully treated as success for subresources
2850
2851         Test: http/tests/misc/script-500.html
2852
2853         * loader/loader.cpp: (WebCore::Loader::Host::didReceiveData): Treat all HTTP codes >= 400 as
2854         error ones, since they are.
2855
2856 2010-08-20  Tony Gentilcore  <tonyg@chromium.org>
2857
2858         Reviewed by Adam Barth.
2859
2860         Crash in WebCore::Node::createRendererIfNeeded()
2861         https://bugs.webkit.org/show_bug.cgi?id=44129
2862
2863         * dom/ContainerNode.cpp:
2864         (WebCore::ContainerNode::insertBefore): Factor out core bit to insertBetween.
2865         (WebCore::ContainerNode::insertBetween): Factored out of insertBefore.
2866         (WebCore::ContainerNode::parserInsertBefore): Similar to insertBefore, but doesn't handle reparenting or dispatch DOM mutation events.
2867         (WebCore::ContainerNode::removeChild): Factor out core bit to removeBetween.
2868         (WebCore::ContainerNode::removeBetween): Facotred out of removeChild.
2869         (WebCore::ContainerNode::parserRemoveChild): Similar to removeChild, but doesn't handle reparenting or dispatch DOM mutation events.
2870         (WebCore::ContainerNode::addChildCommon):
2871         (WebCore::ContainerNode::parserAddChild):
2872         (WebCore::ContainerNode::legacyParserAddChild):
2873         * dom/ContainerNode.h:
2874         * dom/Node.cpp:
2875         (WebCore::Node::parserRemoveChild):
2876         (WebCore::Node::parserInsertBefore):
2877         * dom/Node.h:
2878         * html/HTMLConstructionSite.cpp:
2879         (WebCore::HTMLConstructionSite::attach):
2880         (WebCore::HTMLConstructionSite::attachAtSite): Use new parserInsertBefore.
2881         * html/HTMLTreeBuilder.cpp:
2882         (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
2883         (WebCore::HTMLTreeBuilder::reparentChildren):
2884         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): Was missing a key bit from the spec about removing the old parent if it exists.
2885
2886 2010-08-20  Kinuko Yasuda  <kinuko@chromium.org>
2887
2888         Unreviewed; build fix.  Had included wrong version of build file.
2889
2890 2010-08-20  Martin Robinson  <mrobinson@igalia.com>
2891
2892         Reviewed by Joseph Pecoraro.
2893
2894         [GTK] Inspector extensions tests fail on GTK+ bots because onSelectionChanged is missing
2895         https://bugs.webkit.org/show_bug.cgi?id=44342
2896
2897         * GNUmakefile.am: Fix dependency tracking for copied web inspector files.
2898
2899 2010-08-20  Kinuko Yasuda  <kinuko@chromium.org>
2900
2901         Reviewed by Darin Fisher.
2902
2903         Add Callback implementation for FileSystem API
2904         https://bugs.webkit.org/show_bug.cgi?id=44349
2905
2906         No new tests; tests will be added later.
2907
2908         * CMakeLists.txt:
2909         * GNUmakefile.am:
2910         * WebCore.gypi:
2911         * WebCore.pro:
2912         * WebCore.vcproj/WebCore.vcproj:
2913         * WebCore.xcodeproj/project.pbxproj:
2914         * storage/FileSystemCallbacks.cpp: Added.
2915         * storage/FileSystemCallbacks.h: Added.
2916
2917         * storage/EntryCallback.h: Nits fix
2918         * storage/FileSystemCallback.h: Nits fix
2919
2920 2010-08-20  Andreas Kling  <andreas.kling@nokia.com>
2921
2922         Reviewed by Ariya Hidayat.
2923
2924         [Qt] WebKit does not compile with --3d-canvas
2925         https://bugs.webkit.org/show_bug.cgi?id=44335
2926
2927         - PlatformGLObject => Platform3DObject
2928         - Implemented getAttachedShaders()
2929         - Implemented bufferData() and bufferSubData() for ArrayBuffer*
2930         - Removed reference to nonexistent variable in getImageData()
2931
2932         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2933         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2934         (WebCore::GraphicsContext3D::attachShader):
2935         (WebCore::GraphicsContext3D::getAttachedShaders):
2936         (WebCore::GraphicsContext3D::bindAttribLocation):
2937         (WebCore::GraphicsContext3D::bindBuffer):
2938         (WebCore::GraphicsContext3D::bindFramebuffer):
2939         (WebCore::GraphicsContext3D::bindRenderbuffer):
2940         (WebCore::GraphicsContext3D::bindTexture):
2941         (WebCore::GraphicsContext3D::bufferData):
2942         (WebCore::GraphicsContext3D::bufferSubData):
2943         (WebCore::GraphicsContext3D::compileShader):
2944         (WebCore::GraphicsContext3D::detachShader):
2945         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
2946         (WebCore::GraphicsContext3D::framebufferTexture2D):
2947         (WebCore::GraphicsContext3D::getActiveAttrib):
2948         (WebCore::GraphicsContext3D::getActiveUniform):
2949         (WebCore::GraphicsContext3D::getAttribLocation):
2950         (WebCore::GraphicsContext3D::isBuffer):
2951         (WebCore::GraphicsContext3D::isFramebuffer):
2952         (WebCore::GraphicsContext3D::isProgram):
2953         (WebCore::GraphicsContext3D::isRenderbuffer):
2954         (WebCore::GraphicsContext3D::isShader):
2955         (WebCore::GraphicsContext3D::isTexture):
2956         (WebCore::GraphicsContext3D::linkProgram):
2957         (WebCore::GraphicsContext3D::shaderSource):
2958         (WebCore::GraphicsContext3D::useProgram):
2959         (WebCore::GraphicsContext3D::validateProgram):
2960         (WebCore::GraphicsContext3D::getProgramiv):
2961         (WebCore::GraphicsContext3D::getProgramInfoLog):
2962         (WebCore::GraphicsContext3D::getShaderiv):
2963         (WebCore::GraphicsContext3D::getShaderInfoLog):
2964         (WebCore::GraphicsContext3D::getShaderSource):
2965         (WebCore::GraphicsContext3D::getUniformfv):
2966         (WebCore::GraphicsContext3D::getUniformiv):
2967         (WebCore::GraphicsContext3D::getUniformLocation):
2968         (WebCore::GraphicsContext3D::getImageData):
2969         * platform/graphics/qt/GraphicsLayerQt.h:
2970
2971 2010-08-20  Dan Bernstein  <mitz@apple.com>
2972
2973         Reviewed by Dave Kilzer.
2974
2975         #ifdef-out some Leopard-and-earlier code.
2976
2977         * platform/graphics/mac/FontCustomPlatformData.cpp:
2978         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2979
2980 2010-08-20  Kenneth Russell  <kbr@google.com>
2981
2982         Unreviewed, speculative Chromium build fix. Forward declare
2983         IntSize in WebGLRenderingContext.h and include IntSize.h in .cpp.
2984
2985         * html/canvas/WebGLRenderingContext.cpp:
2986         * html/canvas/WebGLRenderingContext.h:
2987
2988 2010-08-20  Eric Carlson  <eric.carlson@apple.com>
2989
2990         Reviewed by Dan Bernstein.
2991
2992         Media element canPlayType("application/octet-stream") not handled correctly
2993         https://bugs.webkit.org/show_bug.cgi?id=44343
2994
2995         Test: media/media-can-play-octet-stream.html
2996
2997         * platform/graphics/MediaPlayer.cpp:
2998         (WebCore::applicationOctetStream): New, accessor for static string used more than once.
2999         (WebCore::textPlain): Ditto.
3000         (WebCore::codecs): Ditto.
3001         (WebCore::chooseBestEngineForTypeAndCodecs): Special case "application/octet-stream".
3002         (WebCore::MediaPlayer::load): Use static static string methods.
3003         (WebCore::MediaPlayer::supportsType): Special case "application/octet-stream".
3004
3005 2010-08-20  Adrienne Walker  <enne@google.com>
3006
3007         Reviewed by Kenneth Russell.
3008
3009         Implement HTMLVideoElement support for texImage2D and texSubImage2D
3010         https://bugs.webkit.org/show_bug.cgi?id=33852
3011
3012         Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html
3013
3014         * html/canvas/WebGLRenderingContext.cpp:
3015         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
3016         (WebCore::WebGLRenderingContext::videoFrameToImage):
3017         (WebCore::WebGLRenderingContext::texImage2D):
3018         (WebCore::WebGLRenderingContext::texSubImage2D):
3019         (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache):
3020         (WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer):
3021         (WebCore::WebGLRenderingContext::LRUImageBufferCache::bubbleToFront):
3022         * html/canvas/WebGLRenderingContext.h:
3023
3024 2010-08-20  Dumitru Daniliuc  <dumi@chromium.org>
3025
3026         Reviewed by Adam Barth.
3027
3028         Removing an incorrect ASSERT.
3029         https://bugs.webkit.org/show_bug.cgi?id=44151
3030
3031         A failure in the preflight step of a transaction wrapper does not
3032         guarantee that the transaction is rolled back (and it shouldn't).
3033
3034         Test: storage/change-version-no-crash-on-preflight-failure.html
3035
3036         * storage/SQLTransaction.cpp:
3037         (WebCore::SQLTransaction::openTransactionAndPreflight):
3038
3039 2010-08-20  David Leong  <david.leong@nokia.com>
3040
3041         Reviewed by Laszlo Gombos.
3042
3043         [Qt] Update Symbian capabilities to remove AllFiles and DRM
3044         
3045         Add CONFIG(production) variation for set of DLL capabilities.
3046         DRM and AllFiles capabilities need to be audited for the sis
3047         package to be signed.
3048         
3049         No new tests.
3050
3051         * WebCore.pro: Updated Symbian Capabilities. 
3052
3053 2010-08-20  Joseph Pecoraro  <joepeck@webkit.org>
3054
3055         Reviewed by David Kilzer.
3056
3057         Do Not Copy Subversion Related Files in Inspector Build Phase
3058         https://bugs.webkit.org/show_bug.cgi?id=44353
3059
3060         * WebCore.xcodeproj/project.pbxproj: remove .svn directories in the "Copy Inspector Resources" build phase.
3061
3062 2010-08-19  Ryosuke Niwa  <rniwa@webkit.org>
3063
3064         Reviewed by Adam Barth.
3065
3066         style correction in markup.cpp
3067         https://bugs.webkit.org/show_bug.cgi?id=44318
3068
3069         Make markup.cpp pass check-webkit-style.
3070
3071         No new tests are added since this is a cleanup.
3072
3073         * editing/markup.cpp:
3074         (WebCore::MarkupAccumulator::appendAttributeValue):
3075         (WebCore::appendEscapedContent):
3076         (WebCore::MarkupAccumulator::appendStartMarkup):
3077         (WebCore::completeURLs):
3078         (WebCore::isElementPresentational):
3079         (WebCore::isSpecialAncestorBlock):
3080         (WebCore::shouldIncludeWrapperForFullySelectedRoot):
3081         (WebCore::createMarkup):
3082         (WebCore::fillContainerFromString):
3083         (WebCore::createFragmentFromText):
3084         (WebCore::createFragmentFromNodes):
3085
3086 2010-08-20  Tony Chang  <tony@chromium.org>
3087
3088         Reviewed by Adam Barth.
3089
3090         crash when trying to access a stale Node pointer in FocusController::setFocusedNode
3091         https://bugs.webkit.org/show_bug.cgi?id=44226
3092
3093         Test: fast/events/focus-change-crash2.html
3094
3095         * page/FocusController.cpp:
3096         (WebCore::FocusController::setFocusedNode): add a ref to prevent the focused node from being deleted
3097
3098 2010-08-20  Simon Fraser  <simon.fraser@apple.com>
3099
3100         Reviewed by Dan Bernstein.
3101
3102         <rdar://problem/8245719> backface-visibility and reflections don't play nicely together.
3103         
3104         On elements with a reflection and backface-visibility: hidden, set the doubleSided property on the 
3105         reflection flattening layer so that backface-visibility works in all configurations.
3106
3107         Test: compositing/reflections/backface-hidden-reflection.html
3108
3109         * platform/graphics/mac/GraphicsLayerCA.mm:
3110         (WebCore::GraphicsLayerCA::updateBackfaceVisibility): Call setDoubleSided: on the structural
3111         layer for reflections.
3112         (WebCore::GraphicsLayerCA::ensureStructuralLayer): Fix a comment typo, and call updateBackfaceVisibility()
3113         when we gain a structural layer.
3114
3115 2010-08-20  Simon Fraser  <simon.fraser@apple.com>
3116
3117         Reviewed by Dan Bernstein.
3118
3119         Slider labels do not update as you move the sliders on this page
3120         https://bugs.webkit.org/show_bug.cgi?id=41020
3121         
3122         When repainting after layout in a multicol element, we need to adjust the
3123         repaint rect for the columns.
3124
3125         Test: fast/repaint/multicol-repaint.html
3126
3127         * rendering/RenderBlock.cpp:
3128         (WebCore::RenderBlock::layoutBlock):
3129
3130 2010-08-20  Jian Li  <jianli@chromium.org>
3131
3132         Reviewed by David Levin.
3133
3134         Move FileStreamClient to platform and add AsyncFileStream interface.
3135         https://bugs.webkit.org/show_bug.cgi?id=44224
3136
3137         * GNUmakefile.am:
3138         * WebCore.gypi:
3139         * WebCore.pro:
3140         * WebCore.vcproj/WebCore.vcproj:
3141         * WebCore.xcodeproj/project.pbxproj:
3142         * html/FileStreamProxy.cpp: Account for the change.
3143         (WebCore::FileStreamProxy::FileStreamProxy):
3144         (WebCore::FileStreamProxy::stop):
3145         * html/FileStreamProxy.h: Make it derive from AsyncFileStream.h.
3146         * platform/AsyncFileStream.h: Added.
3147         * platform/FileStreamClient.h: Renamed from WebCore/html/FileStreamClient.h.
3148
3149 2010-08-20  Abhishek Arya  <inferno@chromium.org>
3150
3151         Reviewed by Darin Fisher.
3152
3153         Prevent use of stale notification presenter pointer in notifications by instead using
3154         a notification center pointer and deriving the presenter from it. Notification presenter
3155         gets properly destroyed using disconnectFrame function inside notification center. Add
3156         null checks for notification presenter.
3157         https://bugs.webkit.org/show_bug.cgi?id=43645
3158
3159         Test: fast/notifications/notifications-window-close-crash.html
3160
3161         * notifications/Notification.cpp:
3162         (WebCore::Notification::Notification):
3163         (WebCore::Notification::create):
3164         (WebCore::Notification::show):
3165         (WebCore::Notification::cancel):
3166         (WebCore::Notification::contextDestroyed):
3167         (WebCore::Notification::finishLoading):
3168         * notifications/Notification.h:
3169         (WebCore::Notification::detachPresenter):
3170         * notifications/NotificationCenter.h:
3171         (WebCore::NotificationCenter::createHTMLNotification):
3172         (WebCore::NotificationCenter::createNotification):
3173
3174 2010-08-20  Martin Robinson  <mrobinson@igalia.com>
3175
3176         Reviewed by Xan Lopez.
3177
3178         r64526 broke the GTK+-3 build
3179         https://bugs.webkit.org/show_bug.cgi?id=44254
3180
3181         No new tests, as this is covered by manual-tests/cursor.html.
3182
3183         * platform/gtk/CursorGtk.cpp:
3184         (WebCore::createPixmapFromBits): Added this method which turns the inline data
3185         structures into GdkPixmaps using Cairo and GDK-Cairo.
3186         (WebCore::createNamedCursor): Modified this method to use the new helper.
3187         * platform/gtk/CursorGtk.h: Changed all inline data structures to be unsigned
3188         char arrays (which Cairo requires). The progress cursor is known in X11 icon themes
3189         as "left_ptr_watch." This change to the name preserves the old behavior of taking this
3190         icon from the theme when available. It seems that this worked in the past due to a fluke
3191         or failure of the previous code.
3192
3193 2010-08-20  Martin Robinson  <mrobinson@igalia.com>
3194
3195         Reviewed by Dirk Schulze.
3196
3197         [Cairo] Eliminate full-surface copy from canvas.drawImage(...)
3198         https://bugs.webkit.org/show_bug.cgi?id=44190
3199
3200         Covered by canvas layout tests.
3201
3202         * platform/graphics/cairo/ImageBufferCairo.cpp:
3203         (WebCore::ImageBuffer::drawsUsingCopy): Return false now.
3204         (WebCore::ImageBuffer::clip): Add a link to the bug which tracks this feature.
3205         (WebCore::ImageBuffer::draw): Construct the bitmap image without the full-surface copy.
3206         (WebCore::ImageBuffer::drawPattern): Ditto.
3207
3208 2010-08-20  Alejandro G. Castro  <alex@igalia.com>
3209
3210         Reviewed by Xan Lopez.
3211
3212         [REGRESSION] r65608 broke gtk distcheck
3213         https://bugs.webkit.org/show_bug.cgi?id=44333
3214
3215         Define the inspector.html as a noinst_DATA intead of using the dir
3216         suffix, which is used for installation.
3217
3218         * GNUmakefile.am:
3219
3220 2010-08-19  Pavel Podivilov  <podivilov@chromium.org>
3221
3222         Reviewed by Yury Semikhatsky.
3223
3224         Web Inspector: implement breaking on DOM node subtree mutations.
3225         https://bugs.webkit.org/show_bug.cgi?id=42886
3226
3227         Add two entries to Web Inspector DOM element context menu:
3228         1. "Stop on subtree modifications": will break on adding/removing of any element which is a child of the DOM element
3229         2. "Remove breakpoints": will remove all breakpoints associated with the DOM element
3230
3231         * English.lproj/localizedStrings.js:
3232         * bindings/js/ScriptDebugServer.cpp:
3233         (WebCore::ScriptDebugServer::breakProgram):
3234         * bindings/js/ScriptDebugServer.h:
3235         * bindings/v8/ScriptDebugServer.cpp:
3236         (WebCore::ScriptDebugServer::breakProgram):
3237         (WebCore::ScriptDebugServer::breakProgramCallback):
3238         (WebCore::ScriptDebugServer::handleV8DebugEvent):
3239         * bindings/v8/ScriptDebugServer.h:
3240         * inspector/Inspector.idl:
3241         * inspector/InspectorDOMAgent.cpp:
3242         (WebCore::InspectorDOMAgent::~InspectorDOMAgent):
3243         (WebCore::InspectorDOMAgent::discardBindings):
3244         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
3245         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
3246         (WebCore::InspectorDOMAgent::didInsertDOMNode):
3247         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
3248         (WebCore::InspectorDOMAgent::hasBreakpoint):
3249         (WebCore::InspectorDOMAgent::pauseOnBreakpoint):
3250         (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
3251         * inspector/InspectorDOMAgent.h:
3252         * inspector/front-end/ElementsTreeOutline.js:
3253         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
3254         * inspector/front-end/Settings.js:
3255
3256 2010-08-20  Yury Semikhatsky  <yurys@chromium.org>
3257
3258         Reviewed by Pavel Feldman.
3259
3260         Web Inspector: discard InjectedScript reference on ScriptState when clearing injected scripts
3261         https://bugs.webkit.org/show_bug.cgi?id=44328
3262
3263         Otherwise if the reference is not cleared we may remove InjectedScript from the
3264         map on InjectedScriptHost but keep it on ScriptState and try to reuse it later.
3265
3266         * bindings/js/JSInjectedScriptHostCustom.cpp:
3267         (WebCore::InjectedScriptHost::discardInjectedScript):
3268         * bindings/v8/V8HiddenPropertyName.h:
3269         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3270         (WebCore::InjectedScriptHost::discardInjectedScript):
3271         (WebCore::InjectedScriptHost::injectedScriptFor):
3272         * inspector/InjectedScript.h:
3273         (WebCore::InjectedScript::scriptState):
3274         * inspector/InjectedScriptHost.cpp:
3275         (WebCore::InjectedScriptHost::discardInjectedScripts):
3276         * inspector/InjectedScriptHost.h:
3277
3278 2010-08-20  Nikolas Zimmermann  <nzimmermann@rim.com>
3279
3280         Reviewed by Dirk Schulze.
3281
3282         Clippers are rasterized, when applied to scaled target object
3283         https://bugs.webkit.org/show_bug.cgi?id=44325
3284
3285         Use SVGImageBufferTools logic for RenderSVGResourceClipper, just like RenderSVGResourceMasker/Gradient,
3286         to avoid pixelation, when the clipper is applied to a scaled target object, or when the document is scaled.
3287
3288         Test: svg/clip-path/clip-path-pixelation.svg
3289
3290         * rendering/RenderSVGResourceClipper.cpp:
3291         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
3292         (WebCore::RenderSVGResourceClipper::createClipData):
3293         * rendering/RenderSVGResourceClipper.h:
3294
3295 2010-08-20  Andreas Kling  <andreas.kling@nokia.com>
3296
3297         Reviewed by Kenneth Rohde Christiansen.
3298
3299         [Qt] Initialize GDK before loading plugins
3300         https://bugs.webkit.org/show_bug.cgi?id=44324
3301
3302         Attempt to call gdk_init_check() before loading any plugins.
3303         This prevents various crashes and freezes in Adobe's Flash plugin.
3304
3305         * plugins/qt/PluginPackageQt.cpp:
3306         (WebCore::initializeGdkIfPossible):
3307         (WebCore::PluginPackage::load):
3308
3309 2010-08-20  Dan Bernstein  <mitz@apple.com>
3310
3311         Reviewed by Mark Rowe.
3312
3313         Follow-up to r41020.
3314
3315         No change in behavior, thus no new tests.
3316
3317         * platform/graphics/mac/FontPlatformDataMac.mm:
3318         (WebCore::FontPlatformData::FontPlatformData): Asserted that the NSFont parameter is not nil,
3319         and removed nil check.
3320         (WebCore::FontPlatformData::setFont): Asserted that the NSFont parameter is not nil and that
3321         this is not the deleted value, and removed code to handle those cases.
3322
3323 2010-08-19  Vincent Scheib  <scheib@chromium.org>
3324
3325         Reviewed by David Levin.
3326
3327         [chromium] TilingData::tilePositionY has typo of X where Y should be used
3328         https://bugs.webkit.org/show_bug.cgi?id=44195
3329
3330         Corrected error, and rewrote functions to use for loop instead of recursion.
3331
3332         Unit Tests added to WebKit/chromium/tests/TilingDataTest.cpp
3333
3334         * platform/graphics/chromium/TilingData.cpp:
3335         (WebCore::TilingData::tilePositionX):
3336         (WebCore::TilingData::tilePositionY):
3337
3338 2010-08-19  Mihai Parparita  <mihaip@chromium.org>
3339
3340         Reviewed by Brady Eidson.
3341
3342         Assertion failure when going back inside frame during onload
3343         https://bugs.webkit.org/show_bug.cgi?id=44217
3344
3345         Fix assertion failure when doing a history.back() within the main frame
3346         during onload of a child frame. This would happen when
3347         HISTORY_ALWAYS_ASYNC was set to 0, because we would only compare the
3348         current frame document sequence numbers when determining if we're in the
3349         same document, instead of also recursing over child frames.
3350
3351         Test: fast/history/history-back-within-subframe-hash.html
3352
3353         * history/HistoryItem.cpp:
3354         (WebCore::HistoryItem::hasSameDocuments):
3355         * history/HistoryItem.h:
3356         * loader/RedirectScheduler.cpp:
3357         (WebCore::RedirectScheduler::scheduleHistoryNavigation):
3358
3359 2010-08-19  Balazs Kelemen  <kb@inf.u-szeged.hu>
3360
3361         Reviewed by Antonio Gomes.
3362
3363         [Qt] Fix cursor change propagation
3364         https://bugs.webkit.org/show_bug.cgi?id=44250
3365
3366         No functional change so new tests.
3367
3368         Propagate the setCursor callback to the PageClient via the HostWindow instead of preassuming
3369         the concrete type of the ChromeClient (what was generally wrong and actually incompatible with WebKit2).
3370         * platform/qt/WidgetQt.cpp:
3371         (WebCore::Widget::setCursor):
3372
3373 2010-08-19  Vangelis Kokkevis  <vangelis@chromium.org>
3374
3375         Reviewed by Kenneth Russell.
3376
3377         [chromium] Rearranging the accelerated compositing code such that the
3378         layer rendering logic now lives in the layer classes rather than the
3379         compositor. This lifts the restriction of having one texture per layer
3380         and significantly cleans up the compositor code. This change mostly
3381         resulted in a lot of code moving around files. Noteworthy changes
3382         include:
3383         * Made LayerChromium a proper based class for layers that mostly handles
3384           the updates to the layer properties and superlayer / sublayer updates.
3385         * Introduced a new layer type, ContentLayerChromium, which handles
3386           layers that require a GraphicsContext to render their content.
3387         * ImageLayerChromium and VideoLayerChromium now derive from
3388           ContentLayerChromium as they share the same shader and draw function.
3389         * Removed TransformLayerChromium as its functionality is now replaced by
3390           the base LayerChromium class.
3391         * Re-arranged the order in which the members of LayerChromium are defined
3392           in the header file to form a more reasonable logical grouping.
3393         * Changed LayerRendererChromium to use the shader creation and drawing
3394           methods defined in the layer classes. As a result, a lot of GL code was
3395           removed from the implementation file.
3396         * Eliminated randomly dispersed calls to check for GL errors by a macro (GLC)
3397           which allows turning error testing on/off with a single define (DEBUG_GL_CALLS
3398           defined in LayerRendererChromium.h)
3399         * Replaced the previous layer render loop with two traversals of the layer
3400           hierarchy, the first to update transforms and opacity values and the
3401           second to render the layers. Eliminated global Z sorting of all layers as
3402           it was wrong.
3403         https://bugs.webkit.org/show_bug.cgi?id=44148
3404
3405         Test: Verified that pages using the compositor and compositor
3406               layout tests have not regressed.
3407
3408         * WebCore.gypi:
3409         * platform/graphics/chromium/CanvasLayerChromium.cpp:
3410         (WebCore::CanvasLayerChromium::SharedValues::SharedValues):
3411         (WebCore::CanvasLayerChromium::SharedValues::~SharedValues):
3412         (WebCore::CanvasLayerChromium::updateContents):
3413         (WebCore::CanvasLayerChromium::draw):
3414         * platform/graphics/chromium/CanvasLayerChromium.h:
3415         (WebCore::CanvasLayerChromium::SharedValues::canvasShaderProgram):
3416         (WebCore::CanvasLayerChromium::SharedValues::shaderSamplerLocation):
3417         (WebCore::CanvasLayerChromium::SharedValues::shaderMatrixLocation):
3418         (WebCore::CanvasLayerChromium::SharedValues::shaderAlphaLocation):
3419         (WebCore::CanvasLayerChromium::SharedValues::initialized):
3420         * platform/graphics/chromium/ContentLayerChromium.cpp: Added.
3421         (WebCore::ContentLayerChromium::SharedValues::SharedValues):
3422         (WebCore::ContentLayerChromium::SharedValues::~SharedValues):
3423         (WebCore::ContentLayerChromium::create):
3424         (WebCore::ContentLayerChromium::ContentLayerChromium):
3425         (WebCore::ContentLayerChromium::~ContentLayerChromium):
3426         (WebCore::ContentLayerChromium::updateContents):
3427         (WebCore::ContentLayerChromium::updateTextureRect):
3428         (WebCore::ContentLayerChromium::draw):
3429         * platform/graphics/chromium/ContentLayerChromium.h: Added.
3430         (WebCore::ContentLayerChromium::drawsContent):
3431         (WebCore::ContentLayerChromium::SharedValues::contentShaderProgram):
3432         (WebCore::ContentLayerChromium::SharedValues::shaderSamplerLocation):
3433         (WebCore::ContentLayerChromium::SharedValues::shaderMatrixLocation):
3434         (WebCore::ContentLayerChromium::SharedValues::shaderAlphaLocation):
3435         (WebCore::ContentLayerChromium::SharedValues::initialized):
3436         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3437         (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
3438         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
3439         * platform/graphics/chromium/ImageLayerChromium.cpp:
3440         (WebCore::ImageLayerChromium::ImageLayerChromium):
3441         (WebCore::ImageLayerChromium::updateContents):
3442         * platform/graphics/chromium/ImageLayerChromium.h:
3443         * platform/graphics/chromium/LayerChromium.cpp:
3444         (WebCore::loadShader):
3445         (WebCore::LayerChromium::SharedValues::SharedValues):
3446         (WebCore::LayerChromium::SharedValues::~SharedValues):
3447         (WebCore::LayerChromium::LayerChromium):
3448         (WebCore::LayerChromium::~LayerChromium):
3449         (WebCore::LayerChromium::createShaderProgram):
3450         (WebCore::LayerChromium::toGLMatrix):
3451         (WebCore::LayerChromium::drawTexturedQuad):
3452         (WebCore::LayerChromium::drawDebugBorder):
3453         (WebCore::LayerChromium::prepareForDraw):
3454         * platform/graphics/chromium/LayerChromium.h:
3455         (WebCore::LayerChromium::getSublayers):
3456         (WebCore::LayerChromium::setPosition):
3457         (WebCore::LayerChromium::contentsDirty):
3458         (WebCore::LayerChromium::drawsContent):
3459         (WebCore::LayerChromium::updateContents):
3460         (WebCore::LayerChromium::draw):
3461         (WebCore::LayerChromium::SharedValues::quadVerticesVbo):
3462         (WebCore::LayerChromium::SharedValues::quadElementsVbo):
3463         (WebCore::LayerChromium::SharedValues::maxTextureSize):
3464         (WebCore::LayerChromium::SharedValues::borderShaderProgram):
3465         (WebCore::LayerChromium::SharedValues::borderShaderMatrixLocation):
3466         (WebCore::LayerChromium::SharedValues::borderShaderColorLocation):
3467         (WebCore::LayerChromium::SharedValues::initialized):
3468         (WebCore::LayerChromium::layerRenderer):
3469         * platform/graphics/chromium/LayerRendererChromium.cpp:
3470         (WebCore::LayerRendererChromium::LayerRendererChromium):
3471         (WebCore::LayerRendererChromium::~LayerRendererChromium):
3472         (WebCore::LayerRendererChromium::debugGLCall):
3473         (WebCore::LayerRendererChromium::useShader):
3474         (WebCore::LayerRendererChromium::drawLayers):
3475         (WebCore::LayerRendererChromium::createLayerTexture):
3476         (WebCore::LayerRendererChromium::updateLayersRecursive):
3477         (WebCore::LayerRendererChromium::drawLayersRecursive):
3478         (WebCore::LayerRendererChromium::drawLayer):
3479         (WebCore::LayerRendererChromium::checkTextureSize):
3480         (WebCore::LayerRendererChromium::initializeSharedObjects):
3481         (WebCore::LayerRendererChromium::cleanupSharedObjects):
3482         * platform/graphics/chromium/LayerRendererChromium.h:
3483         (WebCore::LayerRendererChromium::projectionMatrix):
3484         (WebCore::LayerRendererChromium::layerSharedValues):
3485         (WebCore::LayerRendererChromium::contentLayerSharedValues):
3486         (WebCore::LayerRendererChromium::canvasLayerSharedValues):
3487         * platform/graphics/chromium/TransformLayerChromium.cpp: Removed.
3488         * platform/graphics/chromium/TransformLayerChromium.h: Removed.
3489         * platform/graphics/chromium/VideoLayerChromium.cpp:
3490         (WebCore::VideoLayerChromium::VideoLayerChromium):
3491         (WebCore::VideoLayerChromium::updateContents):
3492         (WebCore::VideoLayerChromium::createTextureRect):
3493         * platform/graphics/chromium/VideoLayerChromium.h:
3494
3495 2010-08-19  David Kilzer  <ddkilzer@apple.com>
3496
3497         BUILD FIX: Fix Mac build after Windows WebKit2 changes for Netscape Plug-ins
3498
3499         * WebCore.exp.in:
3500         (WebCore::ScrollView::contentsToWindow): Added export.
3501
3502 2010-08-19  David Kilzer  <ddkilzer@apple.com>
3503
3504         BUILD FIX #3: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
3505
3506         Still trying to make Qt Linux Release minimal buildbot happy.
3507
3508         * plugins/PluginViewNone.cpp: Compile missing methods for Qt.
3509
3510 2010-08-19  David Kilzer  <ddkilzer@apple.com>
3511
3512         BUILD FIX: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
3513
3514         Reviewed by Joseph Pecoraro.
3515
3516         * plugins/PluginView.cpp: Added #if ENABLE(NETSCAPE_PLUGIN_API)
3517         and #endif macros around the source to fix the Qt Linux Release
3518         Minimal build.
3519
3520 2010-08-19  Stephen White  <senorblanco@chromium.org>
3521
3522         Reviewed by Kenneth Russell.
3523
3524         [CHROMIUM] Assert w/canvas image draw
3525         https://bugs.webkit.org/show_bug.cgi?id=44279
3526
3527         Don't use bitmap->pixelRef()->getPixels() directly; prefer
3528         bitmap->pixels() and an SkAutoLockPixels.  Also, make sure to set
3529         the backing store state to Software when it was None.  This handles
3530         missing draws when the first call is software.  Finally, remove some
3531         spurious prepareForSoftwareDraw() calls in addPath() and beginPath().
3532         It's really the fillPath() or strokePath() that matters.
3533
3534         Covered by LayoutTests/fast/canvas/arc360.html and others.
3535
3536         * platform/graphics/skia/GraphicsContextSkia.cpp:
3537         (WebCore::GraphicsContext::addPath):
3538         (WebCore::GraphicsContext::beginPath):
3539         Remove spurious prepareForSoftwareDraw() calls.
3540         * platform/graphics/skia/ImageSkia.cpp:
3541         (WebCore::drawBitmapGLES2):
3542         Lock SkBitmap's pixels, and use ->getPixels().
3543         * platform/graphics/skia/PlatformContextSkia.cpp:
3544         (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
3545         Switch backing store state to Software when it was None.
3546
3547 2010-08-19  David Kilzer  <ddkilzer@apple.com>
3548
3549         <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
3550
3551         Reviewed by Joseph Pecoraro.
3552
3553         * WebCore.exp.in:
3554         (WebCore::HTMLPlugInElement::getNPObject): Moved from general
3555         section into ENABLE(NETSCAPE_PLUGIN_API) section.
3556         (WebCore::FrameView::windowClipRectForLayer): Moved from
3557         ENABLE(NETSCAPE_PLUGIN_API) section to general section since
3558         it's used by WebKit2.
3559         * plugins/PluginView.h: Added #if ENABLE(NETSCAPE_PLUGIN_API)
3560         and #endif macros as needed to make iOS WebKit build with
3561         NETSCAPE_PLUGIN_API disabled.
3562         * plugins/PluginViewNone.cpp: Ditto.
3563         (WebCore::PluginView::platformGetValueStatic):
3564
3565 2010-08-17  Eric Seidel  <eric@webkit.org>
3566
3567         Reviewed by Adam Barth.
3568
3569         Make DocumentParser safer to use
3570         https://bugs.webkit.org/show_bug.cgi?id=43055
3571
3572         Make DocumentParser and its subclasses RefCounted, and protect
3573         HTMLDocumentParser during parsing. It's possible for a parser to
3574         get deleted if certain actions (e.g., a document.write()) occur
3575         synchronously.
3576
3577         The original version of this patch was written by Nate Chapin.
3578
3579         DocumentParser doesn't actually have to be fully RefCounted, since
3580         the only two things which should ever hold a reference to it are
3581         Document and DocumentParser itself.  However using RefCounted and
3582         RefPtr was easier/cleaner than inventing a custom ref() scheme.
3583
3584         This deploys a new "detach()" method throughout the parsing
3585         framework.  detach() causes the parser to disconnect from the
3586         document so that no further modifications will be made to the
3587         document while any possible DocumentParser stacks are unwound.
3588
3589         The irony of this patch is that the new detach() system is never
3590         used, since Document always outlives the DocumentParser in all of
3591         our layout tests