0237739af3d168d1357cefa6104b310df9c19786
[WebKit-https.git] / WebCore / ChangeLog
1 2010-10-13  Kent Tamura  <tkent@chromium.org>
2
3         Unreviewed, a trivial change.
4
5         Run sort-Xcode-project-file.
6
7         * WebCore.xcodeproj/project.pbxproj:
8
9 2010-10-13  Yael Aharon  <yael.aharon@nokia.com>
10
11         Reviewed by Andreas Kling.
12
13         Wrong ASSERT when select element has size 0
14         https://bugs.webkit.org/show_bug.cgi?id=47567
15
16         Keep the ASSERT only if the size of the element list is more than 0
17         Test: fast/dom/HTMLSelectElement/click-size-zero-no-crash.html
18
19         * dom/SelectElement.cpp:
20         (WebCore::SelectElement::updateListBoxSelection):
21         (WebCore::SelectElement::listBoxDefaultEventHandler):
22
23 2010-10-13  Steve Block  <steveblock@google.com>
24
25         Reviewed by Alexey Proskuryakov.
26
27         Pages using DeviceOrientation and DeviceMotion should not go into the page cache
28         https://bugs.webkit.org/show_bug.cgi?id=47408
29
30         Tests: fast/dom/DeviceMotion/no-page-cache.html
31                fast/dom/DeviceOrientation/no-page-cache.html
32
33         * dom/DeviceMotionController.h:
34         (WebCore::DeviceMotionController::isActive):
35         * dom/DeviceOrientationController.h:
36         (WebCore::DeviceOrientationController::isActive):
37         * history/PageCache.cpp:
38         (WebCore::logCanCachePageDecision):
39         (WebCore::PageCache::canCache):
40         * page/Page.cpp:
41
42 2010-10-13  Jenn Braithwaite  <jennb@chromium.org>
43
44         Reviewed by Dmitry Titov.
45
46         Make resource identifiers unique across pages
47         https://bugs.webkit.org/show_bug.cgi?id=47002
48
49         Test: http/tests/misc/iframe-reparenting-id-collision.html
50
51         * loader/ProgressTracker.cpp:
52         (WebCore::ProgressTracker::ProgressTracker):
53         (WebCore::ProgressTracker::createUniqueIdentifier):
54         * loader/ProgressTracker.h:
55
56 2010-10-12  Roland Steiner  <rolandsteiner@chromium.org>
57
58         Reviewed by David Hyatt.
59
60         Bug 41040 - :before/:after content should not become part of a ruby base
61         https://bugs.webkit.org/show_bug.cgi?id=41040
62
63         Also related to:
64         https://bugs.webkit.org/show_bug.cgi?id=40895.
65         https://bugs.webkit.org/show_bug.cgi?id=43722.
66
67         Explicitly handle :before and :after content in the default way.
68
69         Test: fast/ruby/ruby-beforeafter.html
70               fast/ruby/after-doesnt-crash.html
71
72         * rendering/RenderObject.h:
73         (WebCore::RenderObject::isBeforeContent):
74         * rendering/RenderRuby.cpp:
75         (WebCore::lastRubyRun):
76         (WebCore::RenderRubyAsInline::addChild):
77         (WebCore::RenderRubyAsInline::removeChild):
78         (WebCore::RenderRubyAsBlock::addChild):
79         (WebCore::RenderRubyAsBlock::removeChild):
80
81 2010-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
82
83         Unreviewed, rolling out r69639.
84         http://trac.webkit.org/changeset/69639
85         https://bugs.webkit.org/show_bug.cgi?id=47575
86
87         "regressed nav-element.html" (Requested by rniwa on #webkit).
88
89         * editing/ApplyBlockElementCommand.cpp:
90         (WebCore::ApplyBlockElementCommand::formatSelection):
91         * editing/EditorCommand.cpp:
92         (WebCore::executeFormatBlock):
93         * editing/FormatBlockCommand.cpp:
94         (WebCore::FormatBlockCommand::formatRange):
95         * editing/FormatBlockCommand.h:
96         (WebCore::FormatBlockCommand::editingAction):
97         * editing/VisiblePosition.cpp:
98         (WebCore::enclosingBlockFlowElement):
99         * editing/VisiblePosition.h:
100         * editing/htmlediting.cpp:
101         (WebCore::validBlockTag):
102         * editing/htmlediting.h:
103
104 2010-10-12  Ryosuke Niwa  <rniwa@webkit.org>
105
106         Reviewed by Tony Chang.
107
108         execCommand FormatBlock creates lots of blockquotes
109         https://bugs.webkit.org/show_bug.cgi?id=19795
110
111         The bug was caused by WebKit's not reusing the block node added by previous iteration
112         and its inserting block node at wrong places.
113
114         Fixed the bug by rewriting FormatBlockCommand::formatRange.  New code resembles that of
115         IndentOutdentCommand::indentIntoBlockquote.  The difference between two is that formatRange
116         avoids the existing block elements when replacing blocks and it also adds a placeholder
117         when removing the existing block caused paragraphs to collapse.
118
119         Tests: editing/execCommand/format-block-multiple-paragraphs.html
120                editing/execCommand/format-block-table.html
121
122         * editing/EditorCommand.cpp:
123         (WebCore::executeFormatBlock):
124         * editing/FormatBlockCommand.cpp:
125         (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
126         (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
127         and moved from htmlediting.cpp.
128         (WebCore::FormatBlockCommand::enclosingBlockToSplitTreeTo): Added.
129         * editing/FormatBlockCommand.h:
130         * editing/VisiblePosition.cpp:
131         (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
132         * editing/VisiblePosition.h:
133
134 2010-10-11  Girish Ramakrishnan  <girish@forwardbias.in>
135
136         Reviewed by Anders Carlsson.
137
138         Make PluginView inherit from PluginViewBase.
139
140         This change is a precursor to adding accelerated compositing support
141         for NPAPI plugins.
142
143         https://bugs.webkit.org/show_bug.cgi?id=47418
144
145         * page/Page.cpp:
146         (WebCore::Page::privateBrowsingStateChanged):
147         * plugins/PluginView.h:
148         * plugins/PluginViewBase.h:
149         (WebCore::PluginViewBase::PluginViewBase):
150
151 2010-10-12  Kinuko Yasuda  <kinuko@chromium.org>
152
153         Reviewed by Jian Li.
154
155         Pass platform path (rather than virtual path) when creating File from FileEntry
156         https://bugs.webkit.org/show_bug.cgi?id=47563
157
158         No new tests, the new test for FileWriter will be verifying this.
159
160         * fileapi/FileEntry.cpp:
161         (WebCore::FileEntry::file):
162
163 2010-10-12 David Hyatt  <hyatt@apple.com>
164
165         Reviewed by Dan Bernstein
166
167         <rdar://problem/8488444> REGRESSION (r67771)
168         https://bugs.webkit.org/show_bug.cgi?id=47434
169         Crash when printing in RenderBlock::markDescendantBlocksAndLinesForLayout
170         
171         Added printing/simultaneous-position-float-change.html
172
173         Remove the markDescendantBlocksAndLinesForLayout method since it can walk m_floatingObjects lists with deleted
174         objects in them.  Make the mechanism for relayout when the page height changes the same as the one when pageY
175         changes and just tie a concept of pageHeightChanged to the layout state.  If that is set, blocks will just
176         automatically mark themselves as needing layout.
177
178         * rendering/LayoutState.cpp:
179         (WebCore::LayoutState::LayoutState):
180         * rendering/LayoutState.h:
181         (WebCore::LayoutState::LayoutState):
182         (WebCore::LayoutState::pageHeight):
183         (WebCore::LayoutState::pageHeightChanged):
184         * rendering/RenderBlock.cpp:
185         (WebCore::RenderBlock::layoutBlock):
186         (WebCore::RenderBlock::layoutBlockChild):
187         (WebCore::RenderBlock::layoutPositionedObjects):
188         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
189         (WebCore::RenderBlock::insertFloatingObject):
190         (WebCore::RenderBlock::positionNewFloats):
191         * rendering/RenderBlock.h:
192         * rendering/RenderBox.cpp:
193         * rendering/RenderBox.h:
194         (WebCore::RenderBox::markForPaginationRelayoutIfNeeded):
195         * rendering/RenderFlexibleBox.cpp:
196         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
197         (WebCore::RenderFlexibleBox::layoutVerticalBox):
198         * rendering/RenderView.cpp:
199         (WebCore::RenderView::RenderView):
200         (WebCore::RenderView::layout):
201         * rendering/RenderView.h:
202         (WebCore::RenderView::setPageHeight):
203         (WebCore::RenderView::pushLayoutState):
204         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
205         (WebCore::LayoutStateMaintainer::push):
206
207 2010-10-12  Anders Carlsson  <andersca@apple.com>
208
209         Reviewed by Dan Bernstein.
210
211         Paint the find overlay background
212         https://bugs.webkit.org/show_bug.cgi?id=47565
213
214         Export symbols required by WebKit2.
215
216         * WebCore.exp.in:
217
218 2010-10-12  James Robinson  <jamesr@chromium.org>
219
220         Unreviewed chromium compile fixes for http://trac.webkit.org/changeset/69619
221
222         * platform/graphics/chromium/LayerRendererChromium.cpp:
223         (WebCore::LayerRendererChromium::create):
224         (WebCore::LayerRendererChromium::LayerRendererChromium):
225         * platform/graphics/chromium/LayerRendererChromium.h:
226
227 2010-10-12  Chris Marrin  <cmarrin@apple.com>
228
229         Reviewed by Darin Adler.
230
231         Manage DrawingBuffer lifetime in GraphicsContext3D
232         https://bugs.webkit.org/show_bug.cgi?id=47501
233
234         GraphicsContext3D and DrawingBuffer are now Refcounted. DrawingBuffer
235         has a RefPtr to GraphicsContext3D to ensure the proper lifetime. 
236         DrawingBuffer is now created by GraphicsContext3D. Also DrawingBuffer
237         refers to GraphicsContext3D rather than SharedGraphicsContext3D.
238
239         * html/canvas/CanvasRenderingContext2D.cpp:
240         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
241         * html/canvas/CanvasRenderingContext2D.h:
242         * html/canvas/WebGLRenderingContext.cpp:
243         (WebCore::WebGLRenderingContext::create):
244         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
245         * html/canvas/WebGLRenderingContext.h:
246         * platform/graphics/GraphicsContext3D.cpp:
247         (WebCore::GraphicsContext3D::createDrawingBuffer):
248         * platform/graphics/GraphicsContext3D.h:
249         * platform/graphics/chromium/DrawingBufferChromium.cpp:
250         (WebCore::generateColorTexture):
251         (WebCore::DrawingBuffer::DrawingBuffer):
252         (WebCore::DrawingBuffer::~DrawingBuffer):
253         (WebCore::DrawingBuffer::publishToPlatformLayer):
254         (WebCore::DrawingBuffer::reset):
255         * platform/graphics/gpu/DrawingBuffer.cpp:
256         (WebCore::DrawingBuffer::create):
257         (WebCore::DrawingBuffer::clear):
258         (WebCore::DrawingBuffer::bind):
259         * platform/graphics/gpu/DrawingBuffer.h:
260         (WebCore::DrawingBuffer::graphicsContext3D):
261         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
262         (WebCore::SharedGraphicsContext3D::create):
263         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
264         * platform/graphics/gpu/SharedGraphicsContext3D.h:
265         (WebCore::SharedGraphicsContext3D::graphicsContext3D):
266         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
267         (WebCore::DrawingBuffer::DrawingBuffer):
268         (WebCore::DrawingBuffer::~DrawingBuffer):
269         (WebCore::DrawingBuffer::reset):
270         * platform/graphics/mac/GraphicsContext3DMac.mm:
271         (WebCore::GraphicsContext3D::create):
272
273 2010-10-12  Jian Li  <jianli@chromium.org>
274
275         Reviewed by David Levin.
276
277         Fix passing blob data with string data item between threads.
278         https://bugs.webkit.org/show_bug.cgi?id=46543
279
280         The fix is to use a thread-safe ref-counted Vector<char> to store the
281         string data. This also makes us be able to store any binary data in it.
282
283         I've also fix BlobBuilder and BlobRegistryImpl to avoid some additional
284         copies to make blob handling faster.
285
286         * fileapi/BlobBuilder.cpp:
287         (WebCore::BlobBuilder::append):
288         * fileapi/ThreadableBlobRegistry.cpp:
289         (WebCore::BlobRegistryContext::BlobRegistryContext):
290         * platform/network/BlobData.cpp:
291         (WebCore::BlobDataItem::RawData::RawData):
292         (WebCore::BlobDataItem::RawData::detachFromCurrentThread):
293         (WebCore::BlobDataItem::detachFromCurrentThread):
294         (WebCore::BlobData::create):
295         (WebCore::BlobData::detachFromCurrentThread):
296         (WebCore::BlobData::appendData):
297         * platform/network/BlobData.h:
298         (WebCore::BlobDataItem::RawData::create):
299         (WebCore::BlobDataItem::RawData::data):
300         (WebCore::BlobDataItem::RawData::length):
301         (WebCore::BlobDataItem::RawData::mutableData):
302         (WebCore::BlobDataItem::BlobDataItem):
303         * platform/network/BlobRegistryImpl.cpp:
304         (WebCore::BlobRegistryImpl::registerBlobURL):
305         * platform/network/BlobResourceHandle.cpp:
306         (WebCore::BlobResourceHandle::readDataSync):
307         (WebCore::BlobResourceHandle::readDataAsync):
308         * platform/network/mac/FormDataStreamMac.mm:
309         (WebCore::setHTTPBody):
310         * platform/text/LineEnding.cpp:
311         (OutputBuffer::CStringBuffer::CStringBuffer):
312         (OutputBuffer::CStringBuffer::~CStringBuffer):
313         (OutputBuffer::CStringBuffer::allocate):
314         (OutputBuffer::CStringBuffer::copy):
315         (OutputBuffer::CStringBuffer::buffer):
316         (OutputBuffer::VectorCharAppendBuffer::VectorCharAppendBuffer):
317         (OutputBuffer::VectorCharAppendBuffer::~VectorCharAppendBuffer):
318         (OutputBuffer::VectorCharAppendBuffer::allocate):
319         (OutputBuffer::VectorCharAppendBuffer::copy):
320         (OutputBuffer::internalNormalizeLineEndingsToCRLF):
321         (WebCore::normalizeToCROrLF):
322         (WebCore::normalizeLineEndingsToCRLF):
323         (WebCore::normalizeLineEndingsToCR):
324         (WebCore::normalizeLineEndingsToLF):
325         (WebCore::normalizeLineEndingsToNative):
326         * platform/text/LineEnding.h:
327
328 2010-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
329
330         Unreviewed, rolling out r69589.
331         http://trac.webkit.org/changeset/69589
332         https://bugs.webkit.org/show_bug.cgi?id=47547
333
334         Wrong patch landed from a bug with two patches (Requested by
335         mrobinson on #webkit).
336
337         * platform/network/ResourceHandleInternal.h:
338         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
339         * platform/network/soup/ResourceHandleSoup.cpp:
340         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
341         (WebCore::ResourceHandle::~ResourceHandle):
342         (WebCore::restartedCallback):
343         (WebCore::gotChunkCallback):
344         (WebCore::finishedCallback):
345         (WebCore::parseDataUrl):
346         (WebCore::startHttp):
347         * platform/network/soup/ResourceRequest.h:
348         * platform/network/soup/ResourceRequestSoup.cpp:
349
350 2010-10-12  Simon Fraser  <simon.fraser@apple.com>
351
352         Screen.availLeft should be signed
353         https://bugs.webkit.org/show_bug.cgi?id=34397
354         
355         Add the manual test missed in r69599.
356
357         * manual-tests/screen-availLeft.html: Added.
358
359 2010-10-12  Girish Ramakrishnan  <girish@forwardbias.in>
360
361         Reviewed by Ariya Hidayat.
362
363         [Qt] Windowless mode 64-bit Flash/X11 freezes when right-click is sent.
364
365         Adds a new quirk PluginQuirkIgnoreRightClickInWindowlessMode. This
366         quirk is enabled only for 64-bit Flash/X11 and should not affect other
367         plugins. The freeze itself is in Flash code and the backtrace is not
368         useful.
369
370         https://bugs.webkit.org/show_bug.cgi?id=47545
371
372         * plugins/PluginPackage.cpp:
373         (WebCore::PluginPackage::determineQuirks):
374         * plugins/PluginQuirkSet.h:
375         * plugins/qt/PluginViewQt.cpp:
376         (WebCore::PluginView::handleMouseEvent):
377
378 2010-10-08  Simon Fraser  <simon.fraser@apple.com>
379
380         Reviewed by Alexey Proskuryakov.
381
382         Screen.availLeft should be signed
383         https://bugs.webkit.org/show_bug.cgi?id=34397
384
385         For the screen to the left of the main screen, screen.availLeft
386         can be negative, so the Screen API needs to use signed numbers
387         for availLeft and availTop.
388
389         * manual-tests/screen-availLeft.html: Added.
390         * page/Screen.cpp:
391         (WebCore::Screen::availLeft):
392         (WebCore::Screen::availTop):
393         * page/Screen.h:
394         * page/Screen.idl:
395
396 2010-10-12  Anders Carlsson  <andersca@apple.com>
397
398         Reviewed by Sam Weinig.
399
400         Add FindController class
401         https://bugs.webkit.org/show_bug.cgi?id=47555
402
403         Export Page::findString.
404
405         * WebCore.exp.in:
406
407 2010-10-12  Alexey Proskuryakov  <ap@apple.com>
408
409         Reviewed by Simon Fraser.
410
411         https://bugs.webkit.org/show_bug.cgi?id=47550
412         <rdar://problem/8353386> For WebKit plug-ins, beforeload can be called recursively
413         (esp. with AdBlock style extensions)
414
415         No test - we don't have a WebKit-style plugin in DRT, and don't care enough to add one.
416
417         The fix is to block plug-in scripting while in beforeload event - the plug-in is obviously
418         not available yet, so scripting could only attempt to load it recursively.
419
420         This didn't affect NPAPI plug-ins, because of a completely different code path taken in
421         updateWidget(), see <https://bugs.webkit.org/show_bug.cgi?id=44575#c8>.
422
423         * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
424         * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):
425         * html/HTMLPlugInElement.cpp:
426         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
427         (WebCore::HTMLPlugInElement::pluginWidget):
428         * html/HTMLPlugInElement.h:
429
430 2010-10-12  Nikolas Zimmermann  <nzimmermann@rim.com>
431
432         Reviewed by Gavin Barraclough.
433
434         Unify JSC::StringBuilder & WebCore::StringBuilder
435         https://bugs.webkit.org/show_bug.cgi?id=47538
436
437         JSC::StringBuilder operates on a Vector<UChar, 64> and allows to build a string based on a stream of characters in an efficient manner.
438         WebCore::StringBuilder operates on a Vector<String, 16> and allows to concat an arbitary number of Strings. It's not efficient in handling single
439         characters, as a String with length=1 has to be constructed for those. An analysis of the callers of WebCore::StringBuilder shows that
440         most callsites actually combine Strings and single characters, so using a Vector<UChar> would be more efficient. Those who only combine large
441         strings are only used for debugging purposes, so it's fine to switch them to a Vector<UChar> approach as well.
442
443         Replace WebCore::StringBuilder with JSC::StringBuilder, and move it to wtf/text/StringBuilder.h into the WTF namespace.
444         While I was at it remove platform/text/StringBuffer.h, as it was only including wtf/text/StringBuffer.h.
445
446         No change in functionality, thus no new tests.
447
448         * Android.mk: Remove platform/text/StringBuilder.* and platform/text/StringBuffer.h.
449         * CMakeLists.txt: Ditto.
450         * GNUmakefile.am: Ditto. 
451         * WebCore.gypi: Ditto.
452         * WebCore.order: Ditto.
453         * WebCore.pro: Ditto.
454         * WebCore.vcproj/WebCore.vcproj: Ditto.
455         * WebCore.xcodeproj/project.pbxproj: Ditto.
456         * ForwardingHeaders/runtime/StringBuilder.h: Removed.
457         * ForwardingHeaders/runtime/UStringBuilder.h: Added.
458         * ForwardingHeaders/wtf/text/StringBuilder.h: Added.
459         * bindings/js/ScriptString.h: Don't include PlatformString.h but wtf/text/WTFString.h.
460         (WebCore::ScriptString::operator+=): Use JSC::UStringBuilder instead of JSC::StringBuilder.
461         * bridge/jni/JNIBridge.cpp: Use WTF::StringBuilder (+ use append(const UChar) for single characters).
462         * css/MediaQuery.cpp: Ditto.
463         * css/MediaQueryExp.cpp: Ditto.
464         * dom/Node.cpp: Ditto.
465         (WebCore::Node::appendTextContent): Manually track wheter the StringBuilder content is empty or null, the new StringBuilder doesn't differentiate between null & empty strings.
466         * dom/Node.h: Remove appendTextContent definition, it's not needed to be exported, removes the need for a StringBuilder.h include or forward declaration.
467         * html/DOMTokenList.cpp: Use WTF::StringBuilder.
468         * inspector/InspectorResource.cpp: Remove useless StringBuffer.h include.
469         * platform/android/FileSystemAndroid.cpp: Use WTF::StringBuilder.
470         * platform/brew/FileSystemBrew.cpp: Ditto.
471         * platform/chromium/ClipboardChromium.cpp: Ditto (+ use append(const UChar) for single characters).
472         * platform/graphics/gpu/PODInterval.h: Ditto (Only used as debugging helper here, in debug builds).
473         * platform/graphics/gpu/PODRedBlackTree.h: Ditto (Only used as debugging helper here, in debug builds).
474         * platform/graphics/mac/GraphicsLayerCA.mm: Remove useless StringBuilder.h include.
475         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Use WTF::StringBuilder, and use append(const UChar) for single characters.
476         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Ditto.
477         * platform/network/ProxyServer.cpp:
478         (WebCore::appendProxyServerString): Use WTF::StringBuilder.
479         * platform/text/StringBuffer.h: Removed.
480         * platform/text/StringBuilder.cpp: Removed.
481         * platform/text/StringBuilder.h: Removed.
482         * plugins/DOMMimeType.cpp: Use WTF::StringBuilder.
483         * svg/SVGPathParserFactory.cpp: Ditto.
484         * svg/SVGPathStringBuilder.cpp: SVGPathStringBuilder used stringBuilder.toString(ConcatAddingSpacesBetweenIndividualStrings), adapt to the change, that this mode is gone now.
485         (WebCore::SVGPathStringBuilder::result): Just use toString(), append a space to the end of each command, when building the string. Remove the last trailing space before building the result.
486         (WebCore::SVGPathStringBuilder::moveTo):
487         (WebCore::SVGPathStringBuilder::lineTo):
488         (WebCore::SVGPathStringBuilder::lineToHorizontal):
489         (WebCore::SVGPathStringBuilder::lineToVertical):
490         (WebCore::SVGPathStringBuilder::curveToCubic):
491         (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
492         (WebCore::SVGPathStringBuilder::curveToQuadratic):
493         (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
494         (WebCore::SVGPathStringBuilder::arcTo):
495         (WebCore::SVGPathStringBuilder::closePath):
496         * svg/SVGPathStringBuilder.h:
497         (WebCore::SVGPathStringBuilder::cleanup): StringBuilder::clear() is gone, just cleanup by assigning StringBuilder().
498         * websockets/WebSocket.cpp: Use WTF::StringBuilder.
499         * websockets/WebSocketHandshake.cpp: Ditto (+ use append(const UChar) for single characters).
500
501 2010-10-12  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
502
503         Reviewed by Antonio Gomes.
504
505         [EFL] Add a missing file in CMakeListEfl.txt
506         https://bugs.webkit.org/show_bug.cgi?id=47480
507
508         IntRectEfl.cpp was missing in CMakeListEfl.txt. So, IntRectEfl.cpp is added.
509
510         * CMakeListsEfl.txt:
511
512 2010-10-12  Sam Weinig  <sam@webkit.org>
513
514         Reviewed by Anders Carlsson.
515
516         Need WebKit2 API to get the cell above a table cell
517         <rdar://problem/8537111>
518         https://bugs.webkit.org/show_bug.cgi?id=47532
519
520         Re-factor functionality to get the cell above a table cell
521         into a function on HTMLTableCellElement and export it for use
522         as SPI.
523
524         * WebCore.exp.in:
525         * WebCore.xcodeproj/project.pbxproj:
526         * html/HTMLTableCellElement.cpp:
527         (WebCore::HTMLTableCellElement::cellAbove): Move implementation here...
528         * html/HTMLTableCellElement.h:
529         * page/Frame.cpp:
530         (WebCore::Frame::searchForLabelsAboveCell): ...from here.
531
532 2010-10-12  Dave Moore  <davemoore@chromium.org>
533
534         Reviewed by Tony Chang.
535
536         Use new WebThemeEngine api on chromium / linux to draw scrollbars.
537         https://bugs.webkit.org/show_bug.cgi?id=47473
538
539         * platform/chromium/ChromiumBridge.h:
540         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
541
542 2010-10-12  Andreas Kling  <kling@webkit.org>
543
544         Reviewed by Antonio Gomes.
545
546         [Qt] Clipping problem viewing SVG with WebKit
547         https://bugs.webkit.org/show_bug.cgi?id=29596
548
549         SVG path clipping (via GraphicsContext::clipPath()) was done using the
550         Qt::ReplaceClip mode (default) instead of Qt::IntersectClip. This led
551         to misrenderings when nesting multiple clip paths.
552
553         * platform/graphics/qt/GraphicsContextQt.cpp:
554         (WebCore::GraphicsContext::clipPath):
555
556 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
557
558         Reviewed by Pavel Feldman.
559
560         Web Inspector: refactoring of native breakpoints.
561         https://bugs.webkit.org/show_bug.cgi?id=47360
562
563         Make DOM, EventListener and XHR breakpoints subclasses of NativeBreakpoint class.
564         Move stuff that depends on breakpoint type to corresponding subclass.
565
566         * inspector/Inspector.idl:
567         * inspector/InspectorController.cpp:
568         (WebCore::InspectorController::didCommitLoad):
569         (WebCore::InspectorController::setNativeBreakpoint):
570         (WebCore::InspectorController::removeNativeBreakpoint):
571         (WebCore::InspectorController::findEventListenerBreakpoint):
572         (WebCore::InspectorController::findXHRBreakpoint):
573         * inspector/InspectorController.h:
574         * inspector/InspectorDOMAgent.cpp:
575         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
576         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
577         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
578         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
579         (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
580         (WebCore::InspectorDOMAgent::createBreakpointId):
581         * inspector/InspectorDOMAgent.h:
582         * inspector/InspectorDebuggerAgent.h:
583         * inspector/InspectorInstrumentation.cpp:
584         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
585         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
586         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
587         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
588         (WebCore::InspectorInstrumentation::willDispatchEventImpl):
589         * inspector/front-end/BreakpointManager.js:
590         (WebInspector.BreakpointManager):
591         (WebInspector.BreakpointManager.prototype.reset):
592         (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
593         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
594         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
595         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
596         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
597         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
598         (WebInspector.BreakpointManager.prototype.debuggerPaused):
599         (WebInspector.BreakpointManager.prototype.debuggerResumed):
600         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints.restoreBreakpointsForNode):
601         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
602         (WebInspector.NativeBreakpoint):
603         (WebInspector.NativeBreakpoint.prototype.remove):
604         (WebInspector.NativeBreakpoint.prototype.get _frontendId):
605         (WebInspector.NativeBreakpoint.prototype.get _type):
606         (WebInspector.NativeBreakpoint.prototype._compare):
607         (WebInspector.NativeBreakpoint.prototype._onRemove):
608         (WebInspector.DOMBreakpoint):
609         (WebInspector.DOMBreakpoint.prototype.click):
610         (WebInspector.DOMBreakpoint.prototype.compareTo):
611         (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
612         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.formatters.s):
613         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.append):
614         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement):
615         (WebInspector.DOMBreakpoint.prototype._condition):
616         (WebInspector.DOMBreakpoint.prototype._onRemove):
617         (WebInspector.EventListenerBreakpoint):
618         (WebInspector.EventListenerBreakpoint.prototype.compareTo):
619         (WebInspector.EventListenerBreakpoint.prototype.label):
620         (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
621         (WebInspector.EventListenerBreakpoint.prototype._condition):
622         (WebInspector.XHRBreakpoint):
623         (WebInspector.XHRBreakpoint.prototype.compareTo):
624         (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
625         (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
626         (WebInspector.XHRBreakpoint.prototype._condition):
627         (WebInspector.domBreakpointTypeLabel):
628         (WebInspector.domBreakpointTypeContextMenuLabel):
629         * inspector/front-end/BreakpointsSidebarPane.js:
630         (WebInspector.BreakpointItem):
631         (WebInspector.BreakpointItem.prototype._breakpointClicked):
632         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
633         * inspector/front-end/CallStackSidebarPane.js:
634         (WebInspector.CallStackSidebarPane):
635         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
636         (WebInspector.CallStackSidebarPane.prototype._breakpointHit):
637         * inspector/front-end/DOMAgent.js:
638         (WebInspector.DOMNode):
639         (WebInspector.DOMAgent.prototype._setDocument):
640         (WebInspector.DOMAgent.prototype._removeBreakpoints):
641         (WebInspector.childNodeRemoved):
642         * inspector/front-end/ElementsTreeOutline.js:
643         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
644         * inspector/front-end/ScriptsPanel.js:
645         (WebInspector.ScriptsPanel.prototype.debuggerPaused):
646         * inspector/front-end/inspector.js:
647         (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
648         (WebInspector.createDOMBreakpointsSidebarPane):
649         (WebInspector.reset):
650
651 2010-10-11  Eric Uhrhane  <ericu@chromium.org>
652
653         Reviewed by Dumitru Daniliuc.
654
655         FileWriter should hold a reference to a Blob during write
656         https://bugs.webkit.org/show_bug.cgi?id=47318
657
658         Without this reference, the Blob might get garbage-collected from JS
659         before the write has completed, which would be quite unintuitive to the
660         user.  I just grab a RefPtr to the Blob at write(), then clear it when
661         we're done.
662
663         * fileapi/FileWriter.cpp:
664         (WebCore::FileWriter::stop):
665         (WebCore::FileWriter::write):
666         (WebCore::FileWriter::didWrite):
667         (WebCore::FileWriter::didFail):
668         * fileapi/FileWriter.h:
669
670 2010-10-11  Michael Saboff  <msaboff@apple.com>
671
672         Reviewed by Darin Adler.
673
674         Changed DOMWindow to have a constructor.  Updated the code generator
675         to add security checks to the constructors if CheckDomainSecurity is 
676         set.  Also changed the constructor generation code to use 
677         globalObject->prototype() for DOMWindow object prototypes instead
678         of "self".
679         https://bugs.webkit.org/show_bug.cgi?id=47422
680
681         Test: fast/dom/Window/window-constructor.html
682
683         * bindings/scripts/CodeGeneratorJS.pm:
684         * page/DOMWindow.idl:
685
686 2010-10-11  Daniel Cheng  <dcheng@chromium.org>
687
688         Reviewed by Tony Chang.
689
690         [chromium] Prepare Clipboard/DragData for transition to new drag-and-drop interface.
691         https://bugs.webkit.org/show_bug.cgi?id=44992
692
693         In order to allow a graceful transition, ChromiumDataObject has been
694         reimplemented as a wrapper around the three different types of data
695         objects that the Chrome port uses:
696         1. ChromiumDataObjectLegacy -- this is the original ChromiumDataObject.
697            All the data that ClipboardChromium/DragDataChromium can potentially
698            use is copied over, regardless of whether or not it is needed.
699         2. ReadableDataObject -- used for dragging in and pasting into WebKit.
700            For efficiency, it caches an optimistic list of types it believes it
701            can handle. When getData() is called, a browser IPC is called to
702            retrieve the appropriate data.
703         3. WritableDataObject -- similar to ChromiumDataObjectLegacy in that it
704            buffers all data when dragging out of WebKit or copying/cutting.
705            Unfortunately, there is a difference between dragging out and
706            copying/cutting--on drag outs, the data is buffered and flushed out
707            when startDrag() is called. For copy/cut, any calls to setData()
708            result in a browser IPC right away, so calls to setData() in one
709            copy/cut event are not atomic.
710
711         Copy and paste has been changed to use the new data objects. Dragging
712         out uses the legacy data object, and dragging in now has two potential
713         entry points--one using the legacy data object, and one using
714         ReadableDataObject. Once Chromium transitions to using the new drag-in
715         interface, the old interface will be removed.
716
717         This change is covered by existing tests.
718
719         * WebCore.gypi:
720         * editing/chromium/EditorChromium.cpp:
721         (WebCore::Editor::newGeneralClipboard):
722         * page/chromium/EventHandlerChromium.cpp:
723         (WebCore::EventHandler::createDraggingClipboard):
724         * platform/chromium/ChromiumDataObject.cpp:
725         (WebCore::ChromiumDataObject::ChromiumDataObject):
726         (WebCore::ChromiumDataObject::create):
727         (WebCore::ChromiumDataObject::createReadable):
728         (WebCore::ChromiumDataObject::createWritable):
729         (WebCore::ChromiumDataObject::clearData):
730         (WebCore::ChromiumDataObject::clearAll):
731         (WebCore::ChromiumDataObject::clearAllExceptFiles):
732         (WebCore::ChromiumDataObject::hasData):
733         (WebCore::ChromiumDataObject::types):
734         (WebCore::ChromiumDataObject::getData):
735         (WebCore::ChromiumDataObject::setData):
736         (WebCore::ChromiumDataObject::urlTitle):
737         (WebCore::ChromiumDataObject::setUrlTitle):
738         (WebCore::ChromiumDataObject::htmlBaseUrl):
739         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
740         (WebCore::ChromiumDataObject::containsFilenames):
741         (WebCore::ChromiumDataObject::filenames):
742         (WebCore::ChromiumDataObject::setFilenames):
743         (WebCore::ChromiumDataObject::fileExtension):
744         (WebCore::ChromiumDataObject::setFileExtension):
745         (WebCore::ChromiumDataObject::fileContentFilename):
746         (WebCore::ChromiumDataObject::setFileContentFilename):
747         (WebCore::ChromiumDataObject::fileContent):
748         (WebCore::ChromiumDataObject::setFileContent):
749         * platform/chromium/ChromiumDataObject.h:
750         * platform/chromium/ChromiumDataObjectLegacy.cpp: Copied from ChromiumDataObject.cpp
751         (WebCore::ChromiumDataObjectLegacy::clearData):
752         (WebCore::ChromiumDataObjectLegacy::clearAll):
753         (WebCore::ChromiumDataObjectLegacy::clearAllExceptFiles):
754         (WebCore::ChromiumDataObjectLegacy::hasData):
755         (WebCore::ChromiumDataObjectLegacy::types):
756         (WebCore::ChromiumDataObjectLegacy::getData):
757         (WebCore::ChromiumDataObjectLegacy::setData):
758         (WebCore::ChromiumDataObjectLegacy::ChromiumDataObjectLegacy):
759         * platform/chromium/ChromiumDataObjectLegacy.h: Copied from ChromiumDataObject.h
760         (WebCore::ChromiumDataObjectLegacy::create):
761         (WebCore::ChromiumDataObjectLegacy::copy):
762         (WebCore::ChromiumDataObjectLegacy::urlTitle):
763         (WebCore::ChromiumDataObjectLegacy::setUrlTitle):
764         (WebCore::ChromiumDataObjectLegacy::htmlBaseUrl):
765         (WebCore::ChromiumDataObjectLegacy::setHtmlBaseUrl):
766         (WebCore::ChromiumDataObjectLegacy::containsFilenames):
767         (WebCore::ChromiumDataObjectLegacy::filenames):
768         (WebCore::ChromiumDataObjectLegacy::setFilenames):
769         (WebCore::ChromiumDataObjectLegacy::fileExtension):
770         (WebCore::ChromiumDataObjectLegacy::setFileExtension):
771         (WebCore::ChromiumDataObjectLegacy::fileContentFilename):
772         (WebCore::ChromiumDataObjectLegacy::setFileContentFilename):
773         (WebCore::ChromiumDataObjectLegacy::fileContent):
774         (WebCore::ChromiumDataObjectLegacy::setFileContent):
775         * platform/chromium/ClipboardChromium.cpp:
776         (WebCore::ClipboardChromium::create):
777         * platform/chromium/ClipboardChromium.h:
778         * platform/chromium/ReadableDataObject.cpp:
779         (WebCore::ReadableDataObject::getData):
780         * platform/chromium/WritableDataObject.cpp:
781         (WebCore::WritableDataObject::setData):
782
783 2010-10-11  Anders Carlsson  <andersca@apple.com>
784
785         Reviewed by Darin Adler.
786
787         Remove WebIconFetcher from WebKit and IconFetcher from WebCore
788         https://bugs.webkit.org/show_bug.cgi?id=47523
789
790         Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
791
792         * GNUmakefile.am:
793         * WebCore.exp.in:
794         * WebCore.gyp/WebCore.gyp:
795         * WebCore.gypi:
796         * WebCore.vcproj/WebCore.vcproj:
797         * WebCore.xcodeproj/project.pbxproj:
798         * loader/icon/IconFetcher.cpp: Removed.
799         * loader/icon/IconFetcher.h: Removed.
800
801 2010-10-11  Jia Pu  <jpu@apple.com>
802
803         Reviewed by Adele Peterson.
804
805         Should commit pending autocorrection before next round of text checking.
806         https://bugs.webkit.org/show_bug.cgi?id=46986
807         <rdar://problem/8424535>
808
809         1. Apply pending autocorrection before calling markAllMisspellingsAndBadGrammarInRanges().
810         2. Remove unneccessary calls to dismissCorrectionPanel(), since the panel is dismissed when
811            selection changes, which occurs after every typing command.
812
813         * editing/Editor.cpp:
814         (WebCore::Editor::markMisspellingsAfterTypingToPosition): Apply pending autocorrection.
815         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Store current correction replacement
816           in m_correctionReplacementString.
817         (WebCore::Editor::startCorrectionPanelTimer): Remove call to dismissCorrectionPanel().
818         * editing/Editor.h: Add m_correctionReplacementString to store proposed autocorrection string.
819
820 2010-10-11  Oliver Hunt  <oliver@apple.com>
821
822         Reviewed by Adam Barth.
823
824         Make fast/canvas/webgl/glsl-conformance pass again
825         https://bugs.webkit.org/show_bug.cgi?id=47525
826
827         Remove incorrect call to glGetShaderiv, so it is only
828         called in the case where we don't have our own simulated
829         log.
830
831         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
832         (WebCore::GraphicsContext3D::getShaderInfoLog):
833
834 2010-10-11  Sam Weinig  <sam@webkit.org>
835
836         Reviewed by Anders Carlsson.
837
838         Add WebKit2 equivalents for setValueForUser and setAutoFilled
839         <rdar://problem/8475934>
840         https://bugs.webkit.org/show_bug.cgi?id=47524
841
842         * WebCore.exp.in: Add needed export.
843
844 2010-10-11  Andrei Popescu  <andreip@google.com>
845
846         Reviewed by Jeremy Orlow.
847
848         The names of IndexedDB-specific attributes of DOMWindow should be prefixed with 'webkit'.
849         https://bugs.webkit.org/show_bug.cgi?id=47508
850
851         * bindings/generic/RuntimeEnabledFeatures.h:
852         (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled):
853         (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled):
854         (WebCore::RuntimeEnabledFeatures::webkitIDBCursorEnabled):
855         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseEnabled):
856         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseErrorEnabled):
857         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseExceptionEnabled):
858         (WebCore::RuntimeEnabledFeatures::webkitIDBErrorEventEnabled):
859         (WebCore::RuntimeEnabledFeatures::webkitIDBEventEnabled):
860         (WebCore::RuntimeEnabledFeatures::webkitIDBFactoryEnabled):
861         (WebCore::RuntimeEnabledFeatures::webkitIDBIndexEnabled):
862         (WebCore::RuntimeEnabledFeatures::webkitIDBKeyRangeEnabled):
863         (WebCore::RuntimeEnabledFeatures::webkitIDBObjectStoreEnabled):
864         (WebCore::RuntimeEnabledFeatures::webkitIDBRequestEnabled):
865         (WebCore::RuntimeEnabledFeatures::webkitIDBSuccessEventEnabled):
866         (WebCore::RuntimeEnabledFeatures::webkitIDBTransactionEnabled):
867         * page/DOMWindow.cpp:
868         (WebCore::DOMWindow::webkitIndexedDB):
869         * page/DOMWindow.h:
870         * page/DOMWindow.idl:
871
872 2010-10-11  Sam Weinig  <sam@webkit.org>
873
874         Reviewed by Anders Carlsson.
875
876         Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef
877         https://bugs.webkit.org/show_bug.cgi?id=47509
878
879         * WebCore.exp.in: Export toNode.
880
881 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
882
883         Reviewed by Tony Chang.
884
885         [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails on GTK+
886         https://bugs.webkit.org/show_bug.cgi?id=47244
887
888         Store the URI list as a String in DataObjectGtk, so that non-URI elements
889         are preserved when getData(...) is called. This necessitates some other
890         changes, including adding a m_filenames member to DataObjectGtk to store
891         filenames extracted during setURIList(...). The logic in getData(...) has
892         also changed to set success = true no matter what to match the spec. A
893         followup patch will remove this parameter completely for all platforms.
894
895         * platform/gtk/ClipboardGtk.cpp:
896         (WebCore::ClipboardGtk::getData): Always succeed to match the HTML5
897         spec and Firefox. Simply return the uriList string from the DataObject
898         instead of reconstructing it from a vector of KURLs.
899         (WebCore::ClipboardGtk::setData): The DataObject now accepts a string
900         for the uriList parameter.
901         (WebCore::ClipboardGtk::types): Predicate the "Files" member on 
902         DataObjectGtk::hasFilenames().
903         (WebCore::ClipboardGtk::files): Update to reflect the change from
904         DataObjectGtk::files() to DataObjectGtk::filenames().
905         * platform/gtk/DataObjectGtk.cpp:
906         (WebCore::DataObjectGtk::setURIList): Expanded this setter to find the
907         first valid URL to use as the m_url member and also extract a list of filenames
908         from the URI list.
909         (WebCore::DataObjectGtk::setURL): Updated to reflect changes to m_uriList.
910         (WebCore::DataObjectGtk::clear): Updated to reflect changes to m_uriList and
911         also leave a comment explaining why we do not clear filenames here.
912         * platform/gtk/DataObjectGtk.h:
913         (WebCore::DataObjectGtk::url): This implementation is now a simple getter.
914         (WebCore::DataObjectGtk::uriList): Ditto.
915         (WebCore::DataObjectGtk::filenames): Added.
916         (WebCore::DataObjectGtk::hasURL): Now a simple check.
917         (WebCore::DataObjectGtk::hasFilenames): Added.
918         (WebCore::DataObjectGtk::clearURIList): Simple setter.
919         (WebCore::DataObjectGtk::clearURL): Ditto.
920         * platform/gtk/DragDataGtk.cpp:
921         (WebCore::DragData::containsFiles): Updated to access DataObjectGtk::hasFilenames().
922         (WebCore::DragData::asFilenames): Updated to access DataObjectGtk::filenames().
923         * platform/gtk/PasteboardHelper.cpp:
924         (WebCore::PasteboardHelper::getClipboardContents): Use the uriList as a string now.
925         (WebCore::PasteboardHelper::fillSelectionData):  Ditto.
926         (WebCore::PasteboardHelper::fillDataObjectFromDropData): Ditto.
927
928 2010-10-11  James Robinson  <jamesr@chromium.org>
929
930         Reviewed by Kenneth Russell.
931
932         [chromium] DRT crash in fast/canvas tests w/accel 2D canvas due to NULL DrawingBuffer
933         https://bugs.webkit.org/show_bug.cgi?id=47241
934
935         Avoid initializing accelerated graphics objects on CanvasRenderingContext2D
936         if there is no drawingContext associated with the canvas.
937
938         Test: fast/canvas/access-zero-sized-canvas.html
939               fast/canvas/canvas-skia-excessive-size.html
940               fast/canvas/toDataURL-noData.html
941         with --accelerated-compositing and --accelerated-2d-canvas
942
943         * html/canvas/CanvasRenderingContext2D.cpp:
944         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
945         (WebCore::CanvasRenderingContext2D::reset):
946
947 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
948
949         Reviewed by Gustavo Noronha Silva.
950
951         [GTK] Cleanup font selection code for the Freetype backend
952         https://bugs.webkit.org/show_bug.cgi?id=47503
953
954         Do some miscellaneous cleanup work in the Freetype font font selection backend.
955
956         * platform/graphics/cairo/FontCacheFreeType.cpp:
957         (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Modified this method to return
958         a WebCore String.
959         (WebCore::FontCache::createFontPlatformData): Do a bit of cleanup in this method: properly
960         handle cursive and fantasy as fallback-like fonts. Instead of using raw CStrings do string
961         comparisons using WebCore Strings. Remove a large block comment that originated from a
962         Apache-licensed file.
963
964 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
965
966         Reviewed by Gustavo Noronha Silva.
967
968         [GTK] Buttons activated with the keyboard should be painted as clicked
969         https://bugs.webkit.org/show_bug.cgi?id=18364
970
971         When a button is pressed, force it into the hovered state as far as the
972         Mozilla theme drawing code is concerned. This bug also seems to be an
973         issue for Firefox. When we switch away from the Mozilla theme drawing
974         code this work-around should no longer be necessary.
975
976         No new tests. I was not able to generate a pixel test for this issue. It
977         seems that our DRT does not have the necessary infrastructure to generate a
978         pixel dump while a button is in the pressed state.
979
980         * platform/gtk/RenderThemeGtk.cpp:
981         (WebCore::RenderThemeGtk::paintRenderObject):
982
983 2010-10-11  Jian Li  <jianli@chromium.org>
984
985         Unreviewed. Build fix.
986
987         * bindings/js/JSArrayBufferCustom.cpp:
988         * bindings/js/JSArrayBufferViewCustom.cpp:
989         * bindings/js/JSFloat32ArrayCustom.cpp:
990         * bindings/js/JSInt16ArrayCustom.cpp:
991         * bindings/js/JSInt32ArrayCustom.cpp:
992         * bindings/js/JSInt8ArrayCustom.cpp:
993         * bindings/js/JSUint16ArrayCustom.cpp:
994         * bindings/js/JSUint32ArrayCustom.cpp:
995         * bindings/js/JSUint8ArrayCustom.cpp:
996         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
997         * bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
998         * bindings/v8/custom/V8Float32ArrayCustom.cpp:
999         * bindings/v8/custom/V8Int16ArrayCustom.cpp:
1000         * bindings/v8/custom/V8Int32ArrayCustom.cpp:
1001         * bindings/v8/custom/V8Int8ArrayCustom.cpp:
1002         * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
1003         * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
1004         * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
1005
1006 2010-10-11  Brent Fulgham  <bfulgham@webkit.org>
1007
1008         Unreviewed WinCairo build fixes.
1009
1010         * platform/network/curl/ResourceResponse.h: Correct forward declaration
1011         for CFURLResponseRef.
1012         * rendering/RenderMediaControls.h: Add ENABLE(VIDEO) guard to new
1013         header file to avoid build failure on non-VIDEO builds.
1014
1015 2010-10-11  Jian Li  <jianli@chromium.org>
1016
1017         Reviewed by Adam Barth.
1018
1019         Add File API feature guard to all typed array files
1020         https://bugs.webkit.org/show_bug.cgi?id=47437
1021
1022         Since we're going to add ArrayBuffer support to FileReader and BlobBuilder,
1023         we need to update all type array files to include File API feature guard
1024         in addition to the existing 3D_CANVAS guard. When ArrayBuffer is used in
1025         XMLHttpRequest, we will then remove all the guards. This is per the
1026         discussion on webkit-dev mailing list:
1027         https://lists.webkit.org/pipermail/webkit-dev/2010-October/014716.html
1028
1029         * html/canvas/ArrayBuffer.cpp:
1030         * html/canvas/ArrayBuffer.idl:
1031         * html/canvas/ArrayBufferView.cpp:
1032         * html/canvas/ArrayBufferView.idl:
1033         * html/canvas/Float32Array.cpp:
1034         * html/canvas/Float32Array.idl:
1035         * html/canvas/Int16Array.cpp:
1036         * html/canvas/Int16Array.idl:
1037         * html/canvas/Int32Array.cpp:
1038         * html/canvas/Int32Array.idl:
1039         * html/canvas/Int8Array.cpp:
1040         * html/canvas/Int8Array.idl:
1041         * html/canvas/Uint16Array.cpp:
1042         * html/canvas/Uint16Array.idl:
1043         * html/canvas/Uint32Array.cpp:
1044         * html/canvas/Uint32Array.idl:
1045         * html/canvas/Uint8Array.cpp:
1046         * html/canvas/Uint8Array.idl:
1047
1048 2010-10-11  Andreas Kling  <kling@webkit.org>
1049
1050         Build fix (implicit float conversion in Path.cpp)
1051
1052         * platform/graphics/Path.cpp:
1053
1054 2010-10-11  Girish Ramakrishnan  <girish@forwardbias.in>
1055
1056         Reviewed by Kenneth Rohde Christiansen.
1057
1058         [Qt] Refactor Plugin X Pixmap painting code to a separate function
1059
1060         The refactored function will be used for rendering by the Accelerated
1061         Composition enabled graphics layer.
1062
1063         https://bugs.webkit.org/show_bug.cgi?id=35524
1064
1065         * plugins/PluginView.h:
1066         * plugins/qt/PluginViewQt.cpp:
1067         (WebCore::PluginView::paintUsingXPixmap):
1068         (WebCore::PluginView::paint):
1069
1070 2010-10-11  Andreas Kling  <kling@webkit.org>
1071
1072         Reviewed by Dirk Schulze.
1073
1074         SVG: Remove "create" methods and use port-specific "add" counterparts
1075         https://bugs.webkit.org/show_bug.cgi?id=46052
1076
1077         Circles and ellipses will be significantly faster on platforms that
1078         implement Path::addEllipse() in a sane fashion.
1079
1080         Also, a lot of Path copying has been factored out by changing functions
1081         that would return Paths to take Path& arguments instead (toPathData, toClipPath)
1082
1083         * mathml/RenderMathMLRoot.cpp:
1084         (WebCore::RenderMathMLRoot::paint):
1085         * mathml/RenderMathMLSquareRoot.cpp:
1086         (WebCore::RenderMathMLSquareRoot::paint):
1087         * platform/graphics/GraphicsContext.cpp:
1088         (WebCore::GraphicsContext::addRoundedRectClip):
1089         (WebCore::GraphicsContext::clipOutRoundedRect):
1090         * platform/graphics/Path.cpp:
1091         (WebCore::pathLengthApplierFunction):
1092         (WebCore::Path::addRoundedRect):
1093         * platform/graphics/Path.h:
1094         * platform/graphics/cairo/ContextShadowCairo.cpp:
1095         (WebCore::ContextShadow::drawRectShadowWithoutTiling):
1096         (WebCore::ContextShadow::drawRectShadow):
1097         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1098         (WebCore::GraphicsContext::drawFocusRing):
1099         (WebCore::GraphicsContext::drawTiledShadow):
1100         (WebCore::GraphicsContext::fillRoundedRect):
1101         * platform/graphics/cg/GraphicsContextCG.cpp:
1102         (WebCore::GraphicsContext::fillRoundedRect):
1103         * platform/graphics/qt/GraphicsContextQt.cpp:
1104         (WebCore::GraphicsContext::fillRoundedRect):
1105         * rendering/RenderBoxModelObject.cpp:
1106         (WebCore::RenderBoxModelObject::paintBorder):
1107         (WebCore::RenderBoxModelObject::paintBoxShadow):
1108         * rendering/RenderEmbeddedObject.cpp:
1109         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
1110         * rendering/RenderSVGResourceClipper.cpp:
1111         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
1112         * rendering/svg/RenderSVGPath.cpp:
1113         (WebCore::RenderSVGPath::layout):
1114         * rendering/svg/RenderSVGTextPath.cpp:
1115         (WebCore::RenderSVGTextPath::layoutPath):
1116         * rendering/svg/SVGInlineTextBox.cpp:
1117         (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
1118         * svg/SVGAnimateMotionElement.cpp:
1119         (WebCore::SVGAnimateMotionElement::animationPath):
1120         * svg/SVGCircleElement.cpp:
1121         (WebCore::SVGCircleElement::toPathData):
1122         * svg/SVGCircleElement.h:
1123         * svg/SVGEllipseElement.cpp:
1124         (WebCore::SVGEllipseElement::toPathData):
1125         * svg/SVGEllipseElement.h:
1126         * svg/SVGLineElement.cpp:
1127         (WebCore::SVGLineElement::toPathData):
1128         * svg/SVGLineElement.h:
1129         * svg/SVGPathElement.cpp:
1130         (WebCore::SVGPathElement::getTotalLength):
1131         (WebCore::SVGPathElement::getPointAtLength):
1132         (WebCore::SVGPathElement::toPathData):
1133         * svg/SVGPathElement.h:
1134         * svg/SVGPolygonElement.cpp:
1135         (WebCore::SVGPolygonElement::toPathData):
1136         * svg/SVGPolygonElement.h:
1137         * svg/SVGPolylineElement.cpp:
1138         (WebCore::SVGPolylineElement::toPathData):
1139         * svg/SVGPolylineElement.h:
1140         * svg/SVGRectElement.cpp:
1141         (WebCore::SVGRectElement::toPathData):
1142         * svg/SVGRectElement.h:
1143         * svg/SVGStyledTransformableElement.cpp:
1144         (WebCore::SVGStyledTransformableElement::toClipPath):
1145         * svg/SVGStyledTransformableElement.h:
1146         (WebCore::SVGStyledTransformableElement::toPathData):
1147         * svg/SVGUseElement.cpp:
1148         (WebCore::SVGUseElement::toClipPath):
1149         * svg/SVGUseElement.h:
1150
1151 2010-10-01  Oliver Hunt  <oliver@apple.com>
1152
1153         Reviewed by Gavin Barraclough.
1154
1155         [ES5] Implement strict mode
1156         https://bugs.webkit.org/show_bug.cgi?id=10701
1157
1158         Test: fast/js/basic-strict-mode.html
1159
1160         Override toStrictThisObject on the domwindow so that
1161         it correctly provides the shell object when used as this
1162         in a strict mode function.
1163
1164         * bindings/js/JSDOMWindowBase.cpp:
1165         (WebCore::JSDOMWindowBase::toStrictThisObject):
1166         * bindings/js/JSDOMWindowBase.h:
1167
1168 2010-10-11  Joseph Pecoraro  <joepeck@webkit.org>
1169
1170         Reviewed by Eric Carlson.
1171
1172         CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
1173         https://bugs.webkit.org/show_bug.cgi?id=46777
1174
1175         Another case that could lead to an improper set of states between
1176         m_currentNode and m_loadingState. Also added an ASSERT and early
1177         return to prevent crashes if this case can still happen in other ways.
1178
1179         * html/HTMLMediaElement.cpp:
1180         (WebCore::HTMLMediaElement::prepareForLoad):
1181
1182 2010-10-11  Ryosuke Niwa  <rniwa@webkit.org>
1183
1184         Reviewed by Darin Adler.
1185
1186         spellcheck="false" not respected in designMode
1187         https://bugs.webkit.org/show_bug.cgi?id=39978
1188
1189         The bug was caused by WebKit's setting focus to html element rather than body element in design mode.
1190         Because we disable spell-check only if ancestor nodes of the focused element had spellcheck=false,
1191         this caused us to ignore body element's spellcheck attribute.
1192
1193         Fixed the bug by overriding supportsFocus in HTMLBodyElement to make body element focusable
1194         when the parent node of body elements (namely html element) is editable.
1195
1196         Test: editing/spelling/design-mode-spellcheck-off.html
1197
1198         * html/HTMLBodyElement.cpp:
1199         (WebCore::HTMLBodyElement::supportsFocus): Added.
1200         * html/HTMLBodyElement.h:
1201
1202 2010-10-11  Oliver Hunt  <oliver@apple.com>
1203
1204         Build fix -- I thought i had killed the prior commit in time to have this be part of the commit.
1205
1206         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1207         (WebCore::GraphicsContext3D::getShaderInfoLog):
1208
1209 2010-10-11  Oliver Hunt  <oliver@apple.com>
1210
1211         Reviewed by Andreas Kling.
1212
1213         Incorrect handling of 0 length logs in GraphicsContext3DOpenGL.cpp
1214         https://bugs.webkit.org/show_bug.cgi?id=47494
1215
1216         Working on another patch I found that there was some screwy behaviour
1217         when dealing with logs from GL.  GL_INFO_LOG_LENGTH is defined as being
1218         zero if there is no log message, but we did not check for that case and
1219         simply perfomed a zero sized alloc and passed the resultant buffer to
1220         glGetShaderInfoLog, etc.  glGetShaderInfoLog would then write a null
1221         terminator to the buffer, thus causing an overflow.  This is obviously
1222         not a problem in practice as allocations are at least 4 bytes long in
1223         all common allocators, but it is still a bug.
1224
1225         I also removed some unnecessary null checks following calls to fastMalloc.
1226
1227         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1228         (WebCore::GraphicsContext3D::getProgramInfoLog):
1229         (WebCore::GraphicsContext3D::getShaderInfoLog):
1230
1231 2010-10-11  Nikolas Zimmermann  <nzimmermann@rim.com>
1232
1233         Reviewed by Andreas Kling.
1234
1235         Kill Path::debugString()
1236         https://bugs.webkit.org/show_bug.cgi?id=47493
1237
1238         Remove the obsolete Path::debugString() method. DRT now dumps paths in a platform independant way.
1239
1240         * platform/graphics/Path.h:
1241         * platform/graphics/cairo/PathCairo.cpp:
1242         * platform/graphics/cg/PathCG.cpp:
1243         * platform/graphics/haiku/PathHaiku.cpp:
1244         * platform/graphics/openvg/PathOpenVG.cpp:
1245         * platform/graphics/qt/PathQt.cpp:
1246         * platform/graphics/skia/PathSkia.cpp:
1247         * platform/graphics/wince/PathWinCE.cpp:
1248         * platform/graphics/wince/PlatformPathWinCE.cpp:
1249         * platform/graphics/wince/PlatformPathWinCE.h:
1250         * platform/graphics/wx/PathWx.cpp:
1251         * svg/SVGGlyphElement.h:
1252         (WebCore::SVGGlyphIdentifier::operator==):
1253
1254 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
1255
1256         Reviewed by Xan Lopez.
1257
1258         [GTK] Search field icons should be centered vertically in the field
1259         https://bugs.webkit.org/show_bug.cgi?id=47441
1260
1261         Center search field icons vertically in the search field.
1262
1263         * platform/gtk/RenderThemeGtk.cpp:
1264         (WebCore::centerRectVerticallyInParentInputElement): Added this helper.
1265         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Center the search
1266         field icon by adjusting its drawing rect relative to the containing search field.
1267         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto.
1268
1269 2010-10-11  Pavel Podivilov  <podivilov@chromium.org>
1270
1271         Reviewed by Pavel Feldman.
1272
1273         Web Inspector: fix event listener breakpoints sidebar pane style
1274         https://bugs.webkit.org/show_bug.cgi?id=47487
1275
1276         * inspector/front-end/inspector.css:
1277         (.section .properties, .event-bar .event-properties):
1278         (.section.expanded .properties, .event-bar.expanded .event-properties):
1279         (.properties-tree):
1280         (.properties-tree li):
1281         (.properties-tree li.parent):
1282         (.properties-tree li.parent::before):
1283         (.properties-tree li.parent.expanded::before):
1284         (.properties-tree li .info):
1285         (.properties-tree ol, .stack-trace ol, ol.stack-trace):
1286         (.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
1287         (ol.stack-trace):
1288         (.event-listener-breakpoints .event-category):
1289         (.event-listener-breakpoints.properties-tree .children li):
1290         (.event-listener-breakpoints .checkbox-elem):
1291         (.breakpoint-list .breakpoint-hit):
1292
1293 2010-10-11  Andreas Kling  <kling@webkit.org>
1294
1295         Reviewed by Tor Arne Vestbø.
1296
1297         [Qt] Avoid QPainterPath::operator=(QPainterPath()) when possible
1298
1299         Same concept as <http://trac.webkit.org/changeset/69462>, do nothing
1300         when clearing an already empty QPainterPath. Avoids one delete+new.
1301
1302         * platform/graphics/qt/GraphicsContextQt.cpp:
1303         (WebCore::GraphicsContextPlatformPrivate::clearCurrentPath):
1304         (WebCore::GraphicsContext::fillPath):
1305         (WebCore::GraphicsContext::strokePath):
1306         (WebCore::GraphicsContext::beginPath):
1307
1308 2010-10-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1309
1310         Unreviewed. Remove unnecessary GTK+ and Pango includes.
1311
1312         * platform/gtk/FileChooserGtk.cpp:
1313         * platform/gtk/Language.cpp:
1314
1315 2010-10-11  Kinuko Yasuda  <kinuko@chromium.org>
1316
1317         Reviewed by David Levin.
1318
1319         Support DirectoryEntry.removeRecursively for FileSystem API
1320         https://bugs.webkit.org/show_bug.cgi?id=47400
1321
1322         Also disallows remove/removeRecursively on the root directory.
1323
1324         Test: fast/filesystem/op-remove.html
1325
1326         * fileapi/DOMFileSystemBase.cpp:
1327         (WebCore::DOMFileSystemBase::removeRecursively): Added.
1328         * fileapi/DOMFileSystemBase.h:
1329         * fileapi/DirectoryEntry.cpp:
1330         (WebCore::DirectoryEntry::removeRecursively): Added.
1331         * fileapi/DirectoryEntry.h:
1332         * fileapi/DirectoryEntry.idl:
1333         * fileapi/DirectoryEntrySync.cpp:
1334         (WebCore::DirectoryEntrySync::removeRecursively): Added.
1335         * fileapi/DirectoryEntrySync.h:
1336         * fileapi/DirectoryEntrySync.idl:
1337         * platform/AsyncFileSystem.h:
1338
1339 2010-10-11  Dirk Schulze  <krit@webkit.org>
1340
1341         Reviewed by Nikolas Zimmermann.
1342
1343         SVG feImage take preserveAspectRatio into account for absolute paint rect
1344         https://bugs.webkit.org/show_bug.cgi?id=47464
1345
1346         Determine the smallest effect region for SVGFEImage by taking preserveAspectRatio into account.
1347
1348         * svg/graphics/filters/SVGFEImage.cpp:
1349         (WebCore::FEImage::determineAbsolutePaintRect):
1350         (WebCore::FEImage::apply):
1351         * svg/graphics/filters/SVGFEImage.h:
1352
1353 2010-10-10  Abhishek Arya  <inferno@chromium.org>
1354
1355         Reviewed by Dan Bernstein.
1356
1357         <rdar://problem/8510200> Lines flow around a float that has been removed 
1358
1359         Overhanging floats are not added to flexible boxes since they behave like
1360         block formatting contexts. This causes the intruding floats added in siblings
1361         to not get cleared. Enforce the float release by checking if the parent is a
1362         flexible box and if yes, use that as the outermost block.
1363         
1364         https://bugs.webkit.org/show_bug.cgi?id=47104
1365
1366         Test: fast/flexbox/overhanging-floats-removed.html
1367
1368         * rendering/RenderBox.cpp:
1369         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
1370
1371 2010-10-10  Chris Fleizach  <cfleizach@apple.com>
1372
1373         Reviewed by Beth Dakin.
1374
1375         AX: if aria-live is on a <span> or ignored element, live regions don't work
1376         https://bugs.webkit.org/show_bug.cgi?id=47443
1377
1378         If an element has aria attributes, but has no other native role associated with it,
1379         accessibility should fallback to exposing that element as an AXGroup.
1380
1381         Test: platform/mac/accessibility/live-region-on-span.html
1382
1383         * accessibility/AccessibilityRenderObject.cpp:
1384         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1385
1386 2010-10-10  Daniel Cheng  <dcheng@chromium.org>
1387
1388         Reviewed by Adam Barth.
1389
1390         [chromium] Clipboard no longer accepts 'text' as a synonym for 'text/plain'
1391         https://bugs.webkit.org/show_bug.cgi?id=47419
1392
1393         This was a regression introduced in r68807. mimeTypeText had the incorrect
1394         value.
1395
1396         Test: editing/pasteboard/dataTransfer-setData-getData.html
1397
1398         * platform/chromium/ClipboardMimeTypes.cpp:
1399
1400 2010-10-09  Eric Uhrhane  <ericu@chromium.org>
1401
1402         Reviewed by Andreas Kling.
1403
1404         FileWriter sends write event instead of progress event
1405         https://bugs.webkit.org/show_bug.cgi?id=47454
1406
1407         No new tests; FileWriter tests will be added shortly, but currently
1408         there's no implementation capable of running them.
1409
1410         * fileapi/FileWriter.cpp:
1411         (WebCore::FileWriter::didWrite):
1412
1413 2010-10-09  Andreas Kling  <kling@webkit.org>
1414
1415         Reviewed by Kenneth Rohde Christiansen.
1416
1417         [Qt] Fast-path in Path::clear() for already empty paths
1418         https://bugs.webkit.org/show_bug.cgi?id=47460
1419
1420         The only way to clear a QPainterPath is to assign QPainterPath() to it.
1421         Avoid creating a temporary object etc if the path is already empty.
1422
1423         * platform/graphics/qt/PathQt.cpp:
1424         (WebCore::Path::clear):
1425
1426 2010-10-08  Ryosuke Niwa  <rniwa@webkit.org>
1427
1428         Reviewed by Darin Adler.
1429
1430         Redo in ReplaceNodeWithSpanCommand is broken
1431         https://bugs.webkit.org/show_bug.cgi?id=47428
1432
1433         The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand,
1434         and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply
1435         directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply
1436         only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op.
1437
1438         Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand.
1439         This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation.
1440
1441         Test: editing/undo/replace-by-span-then-remove.html
1442
1443         * editing/ReplaceNodeWithSpanCommand.cpp:
1444         (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
1445         * editing/ReplaceNodeWithSpanCommand.h:
1446
1447 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1448
1449         Reviewed by Martin Robinson.
1450
1451         [GTK] Implement subregion rendering in WebView when using gtk3
1452         https://bugs.webkit.org/show_bug.cgi?id=47411
1453
1454         * GNUmakefile.am:
1455         * platform/graphics/FloatRect.h:
1456         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
1457         (WebCore::FloatRect::FloatRect):
1458         (WebCore::FloatRect::operator cairo_rectangle_t):
1459
1460 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1461
1462         Reviewed by Martin Robinson.
1463
1464         [GTK] Implement subregion rendering in WebView when using gtk3
1465         https://bugs.webkit.org/show_bug.cgi?id=47411
1466
1467         * GNUmakefile.am:
1468         * platform/graphics/FloatRect.h:
1469         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
1470         (WebCore::FloatRect::FloatRect):
1471         (WebCore::FloatRect::operator cairo_rectangle_t):
1472
1473 2010-10-09  Kwang Yul Seo  <skyul@company100.net>
1474
1475         Reviewed by Andreas Kling.
1476
1477         Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture
1478         https://bugs.webkit.org/show_bug.cgi?id=47114
1479
1480         PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS).
1481
1482         * platform/graphics/skia/PlatformContextSkia.h:
1483
1484 2010-10-09  Patrick Gansterer  <paroga@webkit.org>
1485
1486         Reviewed by Adam Barth.
1487
1488         Use WTF::StringHasher for hashing MappedAttributeKey
1489         https://bugs.webkit.org/show_bug.cgi?id=46516
1490
1491         * dom/StyledElement.cpp:
1492         (WebCore::MappedAttributeHash::hash):
1493
1494 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
1495
1496         Reviewed by Xan Lopez.
1497
1498         [Gtk] Non-rectangular buttons have a square background behind them
1499         https://bugs.webkit.org/show_bug.cgi?id=23569
1500
1501         Remove some code which was clearing pieces of the GdkDrawable if it was
1502         currently mapped to a window. In our case it is unnecessary, because the
1503         platform-independent parts of the render have already cleared this section
1504         if it is needed.
1505
1506         Mozilla must not trip this code path, which means they are probably rendering
1507         most often to a non-mapped GdkPixmap.
1508
1509         No new tests as some themed rendering is covered by existing tests that
1510         render buttons. This particular bug is very hard to test as it only appears
1511         with certain GTK+ themes and we currently have no mechanism to test different
1512         themes in DRT.
1513
1514         * platform/gtk/gtk2drawing.c:
1515         (moz_gtk_button_paint): Remove unnecessary code.
1516
1517 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
1518
1519         Reviewed by Xan Lopez.
1520
1521         [GTK] Slider padding translate into a larger track rect
1522         https://bugs.webkit.org/show_bug.cgi?id=47435
1523
1524         Instead of painting the track rectangle for ranges onto the entire RenderBox
1525         rectangle, simply paint it on the content rectangle. This prevents misrendering
1526         sliders with padding.
1527
1528         * platform/gtk/RenderThemeGtk.cpp:
1529         (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect
1530         of the slider instead of the entire area (which includes padding).
1531
1532 2010-10-09  Kent Tamura  <tkent@chromium.org>
1533
1534         Unreviewed, trivial regression fix for r69445.
1535
1536         RangeInputType::supportsRequired() should return false.
1537         https://bugs.webkit.org/show_bug.cgi?id=47405
1538
1539         * html/RangeInputType.cpp:
1540         (WebCore::RangeInputType::supportsRequired):
1541         * html/RangeInputType.h:
1542
1543 2010-10-09  Kent Tamura  <tkent@chromium.org>
1544
1545         Reviewed by Dimitri Glazkov.
1546
1547         Refactor HTMLInputElement: Move typeMismatch(), valueMissing(),
1548         isRequiredFormControl(), and recalcWillValidate()
1549         https://bugs.webkit.org/show_bug.cgi?id=47405
1550
1551         Also make checkedRadioButtons() an inline member function of
1552         HTMLInputElement in order that RadioInputType can use it.
1553
1554         * html/BaseDateAndTimeInputType.cpp:
1555         (WebCore::BaseDateAndTimeInputType::typeMismatchFor):
1556         (WebCore::BaseDateAndTimeInputType::typeMismatch):
1557         * html/BaseDateAndTimeInputType.h:
1558         * html/ButtonInputType.cpp:
1559         (WebCore::ButtonInputType::supportsValidation):
1560         * html/ButtonInputType.h:
1561         * html/CheckboxInputType.cpp:
1562         (WebCore::CheckboxInputType::valueMissing):
1563         * html/CheckboxInputType.h:
1564         * html/ColorInputType.cpp:
1565         (WebCore::isValidColorString):
1566         (WebCore::ColorInputType::typeMismatchFor):
1567         (WebCore::ColorInputType::typeMismatch):
1568         (WebCore::ColorInputType::supportsRequired):
1569         * html/ColorInputType.h:
1570         * html/EmailInputType.cpp:
1571         (WebCore::isValidEmailAddress):
1572         (WebCore::EmailInputType::typeMismatchFor):
1573         (WebCore::EmailInputType::typeMismatch):
1574         * html/EmailInputType.h:
1575         * html/FileInputType.cpp:
1576         (WebCore::FileInputType::valueMissing):
1577         * html/FileInputType.h:
1578         * html/HTMLInputElement.cpp:
1579         (WebCore::HTMLInputElement::updateCheckedRadioButtons):
1580         (WebCore::HTMLInputElement::isValidValue):
1581         (WebCore::HTMLInputElement::typeMismatch):
1582         (WebCore::HTMLInputElement::valueMissing):
1583         (WebCore::HTMLInputElement::isKeyboardFocusable):
1584         (WebCore::HTMLInputElement::updateType):
1585         (WebCore::HTMLInputElement::parseMappedAttribute):
1586         (WebCore::HTMLInputElement::setChecked):
1587         (WebCore::HTMLInputElement::preDispatchEventHandler):
1588         (WebCore::HTMLInputElement::isRequiredFormControl):
1589         (WebCore::HTMLInputElement::recalcWillValidate):
1590         * html/HTMLInputElement.h:
1591         (WebCore::HTMLInputElement::checkedRadioButtons):
1592         * html/HiddenInputType.cpp:
1593         (WebCore::HiddenInputType::supportsValidation):
1594         * html/HiddenInputType.h:
1595         * html/ImageInputType.cpp:
1596         (WebCore::ImageInputType::supportsValidation):
1597         * html/ImageInputType.h:
1598         * html/InputType.cpp:
1599         (WebCore::InputType::supportsValidation):
1600         (WebCore::InputType::typeMismatchFor):
1601         (WebCore::InputType::typeMismatch):
1602         (WebCore::InputType::supportsRequired):
1603         (WebCore::InputType::valueMissing):
1604         * html/InputType.h:
1605         * html/IsIndexInputType.cpp:
1606         (WebCore::IsIndexInputType::supportsRequired):
1607         * html/IsIndexInputType.h:
1608         * html/NumberInputType.cpp:
1609         (WebCore::NumberInputType::typeMismatchFor):
1610         (WebCore::NumberInputType::typeMismatch):
1611         * html/NumberInputType.h:
1612         * html/RadioInputType.cpp:
1613         (WebCore::RadioInputType::valueMissing):
1614         * html/RadioInputType.h:
1615         * html/ResetInputType.cpp:
1616         (WebCore::ResetInputType::supportsValidation):
1617         * html/ResetInputType.h:
1618         * html/SubmitInputType.cpp:
1619         (WebCore::SubmitInputType::supportsValidation):
1620         * html/SubmitInputType.h:
1621         * html/TextFieldInputType.cpp:
1622         (WebCore::TextFieldInputType::valueMissing):
1623         * html/TextFieldInputType.h:
1624         * html/URLInputType.cpp:
1625         (WebCore::URLInputType::typeMismatchFor):
1626         (WebCore::URLInputType::typeMismatch):
1627         * html/URLInputType.h:
1628         * html/ValidityState.cpp:
1629         (WebCore::ValidityState::typeMismatch):
1630
1631 2010-10-09  Pratik Solanki  <psolanki@apple.com>
1632
1633         Reviewed by Dan Bernstein.
1634
1635         https://bugs.webkit.org/show_bug.cgi?id=47450
1636         Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil
1637         <rdar://problem/8244376>
1638
1639         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1640         (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is
1641         NULL, return early to avoid crash.
1642
1643 2010-10-08  Chris Rogers  <crogers@google.com>
1644
1645         Reviewed by James Robinson.
1646
1647         Add HRTFPanner files
1648         https://bugs.webkit.org/show_bug.cgi?id=46299
1649
1650         No new tests since audio API is not yet implemented.
1651
1652         * platform/audio/HRTFPanner.cpp: Added.
1653         (WebCore::HRTFPanner::HRTFPanner):
1654         (WebCore::HRTFPanner::~HRTFPanner):
1655         (WebCore::HRTFPanner::fftSizeForSampleRate):
1656         (WebCore::HRTFPanner::reset):
1657         (WebCore::wrapDistance):
1658         (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend):
1659         (WebCore::HRTFPanner::pan):
1660         * platform/audio/HRTFPanner.h: Added.
1661         (WebCore::HRTFPanner::fftSize):
1662         (WebCore::HRTFPanner::sampleRate):
1663
1664 2010-10-08  James Robinson  <jamesr@chromium.org>
1665
1666         Reviewed by Adam Barth.
1667
1668         Avoid inlining large and/or virtual functions in widely included header files
1669         https://bugs.webkit.org/show_bug.cgi?id=47230
1670
1671         Functions with very large bodies should not be included in widely included header files.
1672         This results in the function's code ending up included in hundreds of object files that
1673         the linker has to discard, at a cost of linker memory use, link time, and disk space. This
1674         is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit
1675         virtual address space and completely fails to link.
1676
1677         This patch moves function definitions from the .h to the corresponding .cpp when the function
1678         is large and not a candidate for inlining either because it is virtual or because its size is
1679         above any reasonable compiler's threshhold for inlining.  The most common case by far in this
1680         patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in
1681         the header and an explicitly defined d'tor in the .cpp.  This is important since many of our
1682         container and utility classes (especially Vector, String, and HashSet) have quite large
1683         destructors.
1684
1685         This patch removes 22.4MB of object file size in a debug 64 bit compile.
1686
1687         * css/CSSBorderImageValue.cpp:
1688         (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
1689         * css/CSSBorderImageValue.h:
1690         * css/CSSFontFaceSrcValue.cpp:
1691         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
1692         * css/CSSFontFaceSrcValue.h:
1693         * css/CSSFunctionValue.h:
1694         * dom/BeforeTextInsertedEvent.cpp:
1695         (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent):
1696         * dom/BeforeTextInsertedEvent.h:
1697         * dom/BeforeUnloadEvent.cpp:
1698         (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
1699         * dom/BeforeUnloadEvent.h:
1700         * dom/ClassNodeList.h:
1701         * dom/ClipboardEvent.cpp:
1702         (WebCore::ClipboardEvent::~ClipboardEvent):
1703         * dom/ClipboardEvent.h:
1704         * dom/CustomEvent.cpp:
1705         (WebCore::CustomEvent::~CustomEvent):
1706         * dom/CustomEvent.h:
1707         * dom/Element.cpp:
1708         * dom/Element.h:
1709         * dom/EventTarget.cpp:
1710         (WebCore::EventTargetData::EventTargetData):
1711         * dom/EventTarget.h:
1712         * dom/InputElement.cpp:
1713         (WebCore::InputElementData::~InputElementData):
1714         * dom/InputElement.h:
1715         * dom/MutationEvent.cpp:
1716         (WebCore::MutationEvent::~MutationEvent):
1717         * dom/MutationEvent.h:
1718         * dom/Node.cpp:
1719         (WebCore::Node::refEventTarget):
1720         (WebCore::Node::derefEventTarget):
1721         * dom/Node.h:
1722         * dom/OptionElement.cpp:
1723         (WebCore::OptionElementData::~OptionElementData):
1724         * dom/OptionElement.h:
1725         * dom/PopStateEvent.cpp:
1726         (WebCore::PopStateEvent::~PopStateEvent):
1727         * dom/PopStateEvent.h:
1728         * dom/QualifiedName.cpp:
1729         (WebCore::QualifiedName::~QualifiedName):
1730         * dom/QualifiedName.h:
1731         * dom/SelectElement.cpp:
1732         (WebCore::SelectElementData::~SelectElementData):
1733         * dom/SelectElement.h:
1734         * dom/StaticHashSetNodeList.cpp:
1735         (WebCore::StaticHashSetNodeList::StaticHashSetNodeList):
1736         (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList):
1737         * dom/StaticHashSetNodeList.h:
1738         * dom/StyleElement.cpp:
1739         (WebCore::StyleElement::~StyleElement):
1740         * dom/StyleElement.h:
1741         * dom/TouchEvent.cpp:
1742         (WebCore::TouchEvent::TouchEvent):
1743         (WebCore::TouchEvent::~TouchEvent):
1744         * dom/TouchEvent.h:
1745         * editing/CompositeEditCommand.cpp:
1746         (WebCore::CompositeEditCommand::~CompositeEditCommand):
1747         * editing/CompositeEditCommand.h:
1748         * editing/TextIterator.cpp:
1749         (WebCore::BitStack::~BitStack):
1750         (WebCore::TextIterator::~TextIterator):
1751         (WebCore::WordAwareIterator::~WordAwareIterator):
1752         * editing/TextIterator.h:
1753         * inspector/InspectorValues.cpp:
1754         (WebCore::InspectorObject::~InspectorObject):
1755         (WebCore::InspectorObject::InspectorObject):
1756         (WebCore::InspectorArray::~InspectorArray):
1757         (WebCore::InspectorArray::InspectorArray):
1758         * inspector/InspectorValues.h:
1759         * loader/CachedResource.cpp:
1760         (WebCore::CachedResource::registerHandle):
1761         (WebCore::CachedResource::unregisterHandle):
1762         * loader/CachedResource.h:
1763         * platform/network/HTTPHeaderMap.cpp:
1764         (WebCore::HTTPHeaderMap::HTTPHeaderMap):
1765         (WebCore::HTTPHeaderMap::~HTTPHeaderMap):
1766         (WebCore::HTTPHeaderMap::get):
1767         (WebCore::HTTPHeaderMap::add):
1768         * platform/network/HTTPHeaderMap.h:
1769         * rendering/RenderApplet.cpp:
1770         (WebCore::RenderApplet::~RenderApplet):
1771         * rendering/RenderApplet.h:
1772         * rendering/RenderButton.cpp:
1773         (WebCore::RenderButton::~RenderButton):
1774         * rendering/RenderButton.h:
1775         * rendering/RenderCounter.cpp:
1776         (WebCore::RenderCounter::~RenderCounter):
1777         * rendering/RenderCounter.h:
1778         * rendering/RenderFieldset.h:
1779         * rendering/RenderForeignObject.cpp:
1780         (WebCore::RenderForeignObject::~RenderForeignObject):
1781         * rendering/RenderForeignObject.h:
1782         * rendering/RenderFrame.h:
1783         * rendering/RenderFrameBase.h:
1784         * rendering/RenderHTMLCanvas.h:
1785         * rendering/RenderIFrame.h:
1786         * rendering/RenderInline.h:
1787         * rendering/RenderListItem.h:
1788         * rendering/RenderMarquee.cpp:
1789         (WebCore::RenderMarquee::~RenderMarquee):
1790         * rendering/RenderMarquee.h:
1791         * rendering/RenderPath.cpp:
1792         (WebCore::RenderPath::~RenderPath):
1793         * rendering/RenderPath.h:
1794         * rendering/RenderSVGBlock.h:
1795         * rendering/RenderSVGContainer.cpp:
1796         (WebCore::RenderSVGContainer::~RenderSVGContainer):
1797         * rendering/RenderSVGContainer.h:
1798         * rendering/RenderSVGHiddenContainer.h:
1799         * rendering/RenderSVGInline.h:
1800         * rendering/RenderSVGInlineText.cpp:
1801         (WebCore::RenderSVGInlineText::~RenderSVGInlineText):
1802         * rendering/RenderSVGInlineText.h:
1803         * rendering/RenderSVGModelObject.h:
1804         * rendering/RenderSVGResourceFilterPrimitive.h:
1805         * rendering/RenderSVGRoot.cpp:
1806         (WebCore::RenderSVGRoot::~RenderSVGRoot):
1807         * rendering/RenderSVGRoot.h:
1808         * rendering/RenderSVGTSpan.h:
1809         * rendering/RenderSVGText.h:
1810         * rendering/RenderSVGTextPath.h:
1811         * rendering/RenderSVGTransformableContainer.h:
1812         * rendering/RenderSVGViewportContainer.h:
1813         * rendering/RenderTable.cpp:
1814         (WebCore::RenderTable::~RenderTable):
1815         * rendering/RenderTable.h:
1816         * rendering/RenderTableCell.h:
1817         * rendering/RenderTableCol.h:
1818         * rendering/RenderTableRow.h:
1819         * rendering/RenderTextFragment.cpp:
1820         (WebCore::RenderTextFragment::~RenderTextFragment):
1821         * rendering/RenderTextFragment.h:
1822         * rendering/RenderWordBreak.h:
1823         * svg/SVGStyledElement.cpp:
1824         (WebCore::SVGStyledElement::~SVGStyledElement):
1825         * svg/SVGStyledElement.h:
1826         * svg/SVGStyledTransformableElement.cpp:
1827         (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement):
1828         * svg/SVGStyledTransformableElement.h:
1829         * xml/XPathParser.cpp:
1830         (WebCore::XPath::Parser::~Parser):
1831         * xml/XPathParser.h:
1832
1833 2010-10-08  Martin Robinson  <mrobinson@igalia.com>
1834
1835         Reviewed by Daniel Bates.
1836
1837         [GTK] Fails /LayoutTests/fast/css/button-height.html
1838         https://bugs.webkit.org/show_bug.cgi?id=33936
1839
1840         GTK buttons honor height property set via CSS. The code for the method
1841         adjustButtonStyle originates from the original GTK+ theme drawing code
1842         and is clearly just a copy-paste from the Safari theme drawing code. The
1843         Safari theme drawing code does quite a bit of work to ensure that button
1844         fonts are consistent with the system theme, which is not something the GTK+
1845         port does.
1846
1847         This change brings the method more in line with the Chromium port, which
1848         allows CSS to style buttons, only overriding the line-height property,
1849         which is required for layout tests to pass.
1850
1851         * platform/gtk/RenderThemeGtk.cpp:
1852         (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS
1853         properties for button styling.
1854
1855 2010-10-08  Mihai Parparita  <mihaip@chromium.org>
1856
1857         Reviewed by Adam Barth.
1858
1859         popstate events are lost when network connection is in progress
1860         https://bugs.webkit.org/show_bug.cgi?id=42940
1861         
1862         Instead of checking FrameLoader::isComplete() (which isn't true if the
1863         document's resource loader has requests outstanding), check that the
1864         document's readyState is complete, as the spec says.
1865
1866         Test: http/tests/history/popstate-fires-with-pending-requests.html
1867
1868         * dom/Document.cpp:
1869         (WebCore::Document::statePopped):
1870         * loader/FrameLoader.cpp:
1871         (WebCore::FrameLoader::didBeginDocument): Added call to set readyState
1872         to Loading earlier. Otherwise, readyState's initial value is Complete,
1873         and we only set it to Loading in Document::implicitOpen (which is called
1874         after FrameLoader::didBeginDocument by DocumentWriter::begin), so we 
1875         could end up in Document::statePopped and have the readyState be
1876         Complete, even if we hadn't even begin loading the document.
1877
1878 2010-10-08  Daniel Cheng  <dcheng@chromium.org>
1879
1880         Reviewed by Tony Chang.
1881
1882         [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change
1883         https://bugs.webkit.org/show_bug.cgi?id=47394
1884
1885         Minor cleanup--these classes have suffered from bit rot since they aren't
1886         actively used at the moment. The three main changes are to:
1887         1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl,
1888            setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL
1889            title and HTML base URL.
1890         2) Use Clipboard::ClipboardType instead of a bool.
1891         3) Remove the use of virtuals, as they are no longer needed..
1892
1893         * platform/chromium/ReadableDataObject.cpp:
1894         (WebCore::clipboardBuffer):
1895         (WebCore::ReadableDataObject::create):
1896         (WebCore::ReadableDataObject::ReadableDataObject):
1897         (WebCore::ReadableDataObject::getData):
1898         (WebCore::ReadableDataObject::urlTitle): renamed from getURL
1899         (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML
1900         (WebCore::ReadableDataObject::containsFilenames):
1901         (WebCore::ReadableDataObject::filenames):
1902         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
1903         * platform/chromium/ReadableDataObject.h:
1904         * platform/chromium/WritableDataObject.cpp:
1905         (WebCore::WritableDataObject::create):
1906         (WebCore::WritableDataObject::WritableDataObject):
1907         (WebCore::WritableDataObject::setData):
1908         * platform/chromium/WritableDataObject.h:
1909         (WebCore::WritableDataObject::setUrlTitle): renamed from setURL
1910         (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML
1911         (WebCore::WritableDataObject::dataMap):
1912         (WebCore::WritableDataObject::urlTitle):
1913         (WebCore::WritableDataObject::htmlBaseURL):
1914         (WebCore::WritableDataObject::fileExtension):
1915         (WebCore::WritableDataObject::fileContentFilename):
1916         (WebCore::WritableDataObject::fileContent):
1917         (WebCore::WritableDataObject::setFileExtension):
1918         (WebCore::WritableDataObject::setFileContentFilename):
1919         (WebCore::WritableDataObject::setFileContent):
1920
1921 2010-10-08  Abhishek Arya  <inferno@chromium.org>
1922
1923         Unreviewed, rolling out r69360.
1924         http://trac.webkit.org/changeset/69360
1925         https://bugs.webkit.org/show_bug.cgi?id=46921
1926
1927         Test still crashing on chromium test_shell
1928
1929         * html/HTMLObjectElement.cpp:
1930         (WebCore::HTMLObjectElement::renderFallbackContent):
1931
1932 2010-10-08  Sheriff Bot  <webkit.review.bot@gmail.com>
1933
1934         Unreviewed, rolling out r68574.
1935         http://trac.webkit.org/changeset/68574
1936         https://bugs.webkit.org/show_bug.cgi?id=47433
1937
1938         [chromium] Breaks partial repaint of images while scrolling
1939         (Requested by jamesr on #webkit).
1940
1941         * platform/graphics/skia/ImageSkia.cpp:
1942         (WebCore::computeResamplingMode):
1943         (WebCore::drawResampledBitmap):
1944
1945 2010-10-08  Andy Estes  <aestes@apple.com>
1946
1947         Reviewed by Darin Adler.
1948
1949         REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images.
1950         https://bugs.webkit.org/show_bug.cgi?id=47430
1951
1952         Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html
1953
1954         * rendering/RenderImage.cpp:
1955         (WebCore::RenderImage::imageChanged): imageChanged() can be called prior
1956         to m_imageResource being set. The appropriate thing to do in this case
1957         is to return early.
1958         (WebCore::RenderImage::notifyFinished): Ditto.
1959
1960 2010-10-08  Andrei Popescu  <andreip@google.com>
1961
1962         Reviewed by Jeremy Orlow.
1963
1964         IndexedDB does not have a quota mechanism.
1965         https://bugs.webkit.org/show_bug.cgi?id=47389
1966
1967         Test: storage/indexeddb/database-quota.html
1968
1969         Add a simple mechanism for enforcing a maximum size
1970         for each origin using IndexedDB. Note that this depends
1971         on having one SQLite database file per origin, which is
1972         addressed in a separate patch.
1973
1974         * page/GroupSettings.cpp:
1975         (WebCore::GroupSettings::GroupSettings):
1976         (WebCore::GroupSettings::setIndexedDBQuotaBytes):
1977         * page/GroupSettings.h:
1978         (WebCore::GroupSettings::indexedDBQuotaBytes):
1979         * storage/IDBDatabaseBackendImpl.cpp:
1980         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
1981         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
1982         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
1983         (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
1984         * storage/IDBFactory.cpp:
1985         (WebCore::IDBFactory::open):
1986         * storage/IDBFactoryBackendImpl.cpp:
1987         (WebCore::openSQLiteDatabase):
1988         (WebCore::IDBFactoryBackendImpl::open):
1989         * storage/IDBFactoryBackendImpl.h:
1990         * storage/IDBFactoryBackendInterface.h:
1991         * storage/IDBObjectStoreBackendImpl.cpp:
1992         (WebCore::putObjectStoreData):
1993         (WebCore::putIndexData):
1994         (WebCore::IDBObjectStoreBackendImpl::put):
1995         (WebCore::IDBObjectStoreBackendImpl::putInternal):
1996         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
1997         * storage/IDBObjectStoreBackendImpl.h:
1998
1999 2010-10-08  Gavin Peters  <gavinp@chromium.org>
2000
2001         Reviewed by Adam Barth.
2002
2003         Output X-Purpose header for prefetch requests
2004         https://bugs.webkit.org/show_bug.cgi?id=46529
2005
2006         Test: http/tests/misc/prefetch-purpose.html
2007
2008         * loader/loader.cpp:
2009         (WebCore::Loader::Host::servePendingRequests):
2010
2011 2010-10-08  James Kozianski  <koz@chromium.org>
2012
2013         Reviewed by Simon Fraser.
2014
2015         Crash on reload when CSS property 'content' has malformed URL.
2016         https://bugs.webkit.org/show_bug.cgi?id=47322
2017
2018         Make CSSStyleSelector handle the case where a cached image can't be
2019         produced due to a malformed URL.
2020
2021         Test: fast/css-generated-content/malformed-url.html
2022
2023         * css/CSSStyleSelector.cpp:
2024         (WebCore::CSSStyleSelector::loadPendingImages):
2025
2026 2010-10-08  Dirk Schulze  <krit@webkit.org>
2027
2028         Reviewed by Nikolas Zimmermann.
2029
2030         SVG feImage needs absolute subregion for preserveAspectRatio
2031         https://bugs.webkit.org/show_bug.cgi?id=47409
2032
2033         PreserverAspectRatio needs the subregion in absolute coordinates to determine
2034         the destination position and size of the input image. The maxEffectRect() already
2035         stores the absolute subregion, but clipped to the filter region.
2036
2037         Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg
2038
2039         * platform/graphics/filters/FETile.cpp:
2040         (WebCore::FETile::apply):
2041         * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage.
2042         (WebCore::FilterEffect::filterEffectType):
2043         * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect
2044         (WebCore::SourceAlpha::filterEffectType):
2045         * platform/graphics/filters/SourceGraphic.h: Ditto.
2046         (WebCore::SourceGraphic::filterEffectType):
2047         * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image.
2048         (WebCore::FEImage::apply):
2049         * svg/graphics/filters/SVGFEImage.h: Ditto.
2050         (WebCore::FEImage::setAbsoluteSubregion):
2051         (WebCore::FEImage::filterEffectType):
2052         * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it.
2053         (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
2054
2055 2010-10-08  Nikolas Zimmermann  <nzimmermann@rim.com>
2056
2057         Reviewed by Dirk Schulze.
2058
2059         gradient stroke on lines does not work
2060         https://bugs.webkit.org/show_bug.cgi?id=40985
2061
2062         Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition.
2063         Perfectly matches Opera, and now lets us pass three of the new tests.
2064
2065         Fix incorrect svg/custom/invalid-fill* tests:
2066         -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg)
2067         -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg)
2068
2069         Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers.
2070         As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition.
2071
2072         Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
2073                svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg
2074                svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg
2075
2076         * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions.
2077         (WebCore::requestPaintingResource):
2078         (WebCore::RenderSVGResource::fillPaintingResource):
2079         (WebCore::RenderSVGResource::strokePaintingResource):
2080         * rendering/RenderSVGResource.h:
2081         * rendering/RenderSVGResourceGradient.cpp: Split collecting gradient properties from building the gradient. We don't need to build it, if it's not applyable (eg. on 1d lines).
2082         (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
2083         (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
2084         (WebCore::clipToTextMask):
2085         (WebCore::RenderSVGResourceGradient::applyResource):
2086         * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once.
2087         * rendering/RenderSVGResourceLinearGradient.cpp:
2088         (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient.
2089         (WebCore::RenderSVGResourceLinearGradient::buildGradient):
2090         * rendering/RenderSVGResourceLinearGradient.h:
2091         (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData.
2092         (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto.
2093         * rendering/RenderSVGResourcePattern.cpp: Split collecting pattern properties from building the pattern. We don't need to build it, if it's not applyable (eg. on 1d lines).
2094         (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
2095         (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
2096         (WebCore::RenderSVGResourcePattern::applyResource):
2097         (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
2098         * rendering/RenderSVGResourcePattern.h:
2099         * rendering/RenderSVGResourceRadialGradient.cpp:
2100         (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes):
2101         (WebCore::RenderSVGResourceRadialGradient::buildGradient):
2102         * rendering/RenderSVGResourceRadialGradient.h:
2103         (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode):
2104         (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform):
2105         * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter.
2106         (WebCore::writeStyle):
2107         (WebCore::writeSVGResourceContainer):
2108         * rendering/svg/RenderSVGPath.cpp: 
2109         (WebCore::RenderSVGPath::fillContains): Ditto.
2110         (WebCore::RenderSVGPath::strokeContains): Ditto.
2111         (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply.
2112         * rendering/svg/SVGInlineTextBox.cpp:
2113         (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto.
2114         * svg/SVGLinearGradientElement.cpp:
2115         (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy.
2116         * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
2117         * svg/SVGPatternElement.cpp:
2118         (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning.
2119         * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes.
2120         * svg/SVGRadialGradientElement.cpp:
2121         (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy.
2122         * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
2123
2124 2010-10-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
2125
2126         Reviewed by Andreas Kling.
2127
2128         [Qt] Slider widgets looks bad on Mac
2129         https://bugs.webkit.org/show_bug.cgi?id=47421
2130
2131         This patch change the rendering of the slider to only have the
2132         subcontrols that would be defined by default on a QSlider.
2133
2134         * platform/qt/RenderThemeQt.cpp:
2135         (WebCore::RenderThemeQt::paintSliderTrack):
2136
2137 2010-10-08  Renata Hodovan  <reni@inf.u-szeged.hu>
2138
2139         Reviewed by Andreas Kling.
2140
2141         SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change.
2142         https://bugs.webkit.org/show_bug.cgi?id=47342
2143
2144         The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
2145
2146         Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html
2147                svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html
2148                svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html
2149                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html
2150                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html
2151                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html
2152
2153         * svg/SVGFEColorMatrixElement.cpp:
2154         (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
2155         * svg/SVGFEColorMatrixElement.h:
2156
2157 2010-10-08  Pavel Podivilov  <podivilov@chromium.org>
2158
2159         Reviewed by Pavel Feldman.
2160
2161         Web Inspector: save InspectorController in instrumentation cookie
2162         https://bugs.webkit.org/show_bug.cgi?id=47406
2163
2164         * bindings/v8/V8Proxy.cpp:
2165         (WebCore::V8Proxy::evaluate):
2166         (WebCore::V8Proxy::callFunction):
2167         * dom/Document.cpp:
2168         (WebCore::Document::recalcStyle):
2169         * dom/Node.cpp:
2170         (WebCore::Node::dispatchGenericEvent):
2171         * html/parser/HTMLDocumentParser.cpp:
2172         (WebCore::HTMLDocumentParser::pumpTokenizer):
2173         * inspector/InspectorInstrumentation.cpp:
2174         * inspector/InspectorInstrumentation.h:
2175         * loader/ResourceLoader.cpp:
2176         (WebCore::ResourceLoader::didReceiveResponse):
2177         (WebCore::ResourceLoader::didReceiveData):
2178         * page/DOMTimer.cpp:
2179         (WebCore::DOMTimer::fired):
2180         * page/DOMWindow.cpp:
2181         (WebCore::DOMWindow::dispatchEvent):
2182         * page/FrameView.cpp:
2183         (WebCore::FrameView::layout):
2184         (WebCore::FrameView::paintContents):
2185         * rendering/RenderLayerBacking.cpp:
2186         (WebCore::RenderLayerBacking::paintContents):
2187         * xml/XMLHttpRequest.cpp:
2188         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2189
2190 2010-10-08  Adam Roben  <aroben@apple.com>
2191
2192         Windows Release build fix for 32-bit systems
2193
2194         WebCore had once again grown too large for the linker's virtual
2195         address space on 32-bit systems. I combined WebCore/rendering,
2196         WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files,
2197         and added a few more files to RenderSVGAllInOne.cpp.
2198
2199         Fixes <http://webkit.org/b/47417> <rdar://problem/8529362>
2200
2201         * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and
2202         excluded the individual files they contain from the build.
2203
2204         * rendering/RenderSVGAllInOne.cpp: Added a few more files to this.
2205
2206         * dom/DOMAllInOne.cpp: Added.
2207         * rendering/RenderingAllInOne.cpp: Added.
2208         * rendering/style/StyleAllInOne.cpp: Added.
2209
2210 2010-10-08  Girish Ramakrishnan  <girish@forwardbias.in>
2211
2212         Reviewed by Andreas Kling.
2213
2214         [Qt] Use constBegin and constEnd when using const iterators
2215
2216         * platform/graphics/qt/GraphicsLayerQt.cpp:
2217         (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
2218         (WebCore::GraphicsLayerQtImpl::updateTransform):
2219         (WebCore::GraphicsLayerQtImpl::flushChanges):
2220
2221 2010-10-07  Pavel Feldman  <pfeldman@chromium.org>
2222
2223         Reviewed by Yury Semikhatsky.
2224
2225         Web Inspector: add resource viewer to the network panel.
2226         https://bugs.webkit.org/show_bug.cgi?id=47346
2227
2228         * inspector/front-end/DataGrid.js:
2229         (WebInspector.DataGrid):
2230         (WebInspector.DataGrid.prototype.autoSizeColumns):
2231         (WebInspector.DataGrid.prototype.updateWidths):
2232         (WebInspector.DataGrid.prototype.columnWidthsMap):
2233         (WebInspector.DataGrid.prototype.applyColumnWidthsMap):
2234         (WebInspector.DataGrid.prototype.isColumnVisible):
2235         (WebInspector.DataGrid.prototype.showColumn):
2236         (WebInspector.DataGrid.prototype.hideColumn):
2237         (WebInspector.DataGrid.prototype._positionResizers):
2238         (WebInspector.DataGrid.prototype._resizerDragging):
2239         * inspector/front-end/NetworkPanel.js:
2240         (WebInspector.NetworkPanel):
2241         (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
2242         (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
2243         (WebInspector.NetworkPanel.prototype.handleShortcut):
2244         (WebInspector.NetworkPanel.prototype._createTable):
2245         (WebInspector.NetworkPanel.prototype._sortItems):
2246         (WebInspector.NetworkPanel.prototype._sortByTimeline):
2247         (WebInspector.NetworkPanel.prototype._createSummaryBar):
2248         (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
2249         (WebInspector.NetworkPanel.prototype.hide):
2250         (WebInspector.NetworkPanel.prototype.get searchableViews):
2251         (WebInspector.NetworkPanel.prototype.refresh):
2252         (WebInspector.NetworkPanel.prototype.reset):
2253         (WebInspector.NetworkPanel.prototype.refreshResource):
2254         (WebInspector.NetworkPanel.prototype.canShowSourceLine):
2255         (WebInspector.NetworkPanel.prototype.showSourceLine):
2256         (WebInspector.NetworkPanel.prototype._showResource):
2257         (WebInspector.NetworkPanel.prototype._closeVisibleResource):
2258         (WebInspector.NetworkPanel.prototype._resourceViewForResource):
2259         (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource):
2260         (WebInspector.NetworkPanel.prototype._toggleGridMode):
2261         (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
2262         (WebInspector.NetworkDataGridNode):
2263         (WebInspector.NetworkDataGridNode.prototype.select):
2264         (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
2265         * inspector/front-end/networkPanel.css:
2266         (#network-container):
2267         (#network-views):
2268         (.network.panel .data-grid.full-grid-mode .viewer-column):
2269         (.network.panel .data-grid.brief-grid-mode .time-column):
2270         (.network.panel.viewing-resource .network-timeline-grid):
2271         (.network.panel .data-grid.viewing-resource-mode .timeline-column):
2272         (.network.panel .network-sidebar):
2273         (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical):
2274         (.network.panel.viewing-resource .data-grid-resizer):
2275         (.network.panel .scope-bar):
2276         (.network.panel .resource-view.headers-visible .resource-view-content):
2277         (.network.panel:not(.viewing-resource) .data-grid tr.selected):
2278
2279 2010-10-08  Andreas Kling  <kling@webkit.org>
2280
2281         Reviewed by Nikolas Zimmermann.
2282
2283         SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros
2284         https://bugs.webkit.org/show_bug.cgi?id=47180
2285
2286         Rename *Value to *ValueAttribute
2287
2288         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
2289         (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue):
2290         (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter):
2291         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
2292
2293 2010-10-08  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2294
2295         Reviewed by Kenneth Rohde Christiansen.
2296
2297         [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
2298         https://bugs.webkit.org/show_bug.cgi?id=47347
2299
2300         * WebCore.pro:
2301
2302 2010-10-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2303
2304         Reviewed by Kenneth Rohde Christiansen.
2305
2306         [EFL] Implement IntRectEfl.cpp
2307         https://bugs.webkit.org/show_bug.cgi?id=47403
2308
2309         Implement IntRect for Efl Port using Eina_Rectangle.
2310
2311         * platform/graphics/IntRect.h:
2312         * platform/graphics/efl/IntRectEfl.cpp:
2313         (WebCore::IntRect::IntRect):
2314         (WebCore::IntRect::operator Eina_Rectangle):
2315
2316 2010-10-08  Andreas Kling  <andreas.kling@nokia.com>
2317
2318         Reviewed by Nikolas Zimmermann.
2319
2320         SVG: Make RenderPath DRT output platform-independent
2321         https://bugs.webkit.org/show_bug.cgi?id=46051
2322
2323         Move away from using the port-specific Path::debugString() to dump
2324         RenderPath objects. This shrinks the DRT output delta between platforms
2325         and makes it more readable as we now dump only the relevant,
2326         element-specific properties of each object.
2327
2328         * rendering/SVGRenderTreeAsText.cpp:
2329         (WebCore::operator<<):
2330         Generate DRT output for RenderPaths in a platform-independent manner,
2331         dumping the relevant element properties.
2332
2333 2010-10-08  Kinuko Yasuda  <kinuko@chromium.org>
2334
2335         Reviewed by David Levin.
2336
2337         Fix FileSystem path validation order to normalize '..' and '.' before restriction checks
2338         https://bugs.webkit.org/show_bug.cgi?id=47309
2339
2340         Test: fast/filesystem/op-get-entry.html
2341
2342         * fileapi/DOMFileSystemBase.cpp:
2343         (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order.
2344         (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order.
2345
2346 2010-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2347
2348         Reviewed by Xan Lopez.
2349
2350         [GTK] Port GTK+ theming code to GTK+ 3.x APIs
2351         https://bugs.webkit.org/show_bug.cgi?id=47398
2352
2353         Create a new gtk3drawing file for the widget drawing primitives in
2354         WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x
2355         code at the moment, but we'll evolve it incrementally from here.
2356
2357         * GNUmakefile.am:
2358         * platform/gtk/RenderThemeGtk.cpp:
2359         (WebCore::RenderThemeGtk::partsForDrawable):
2360         (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
2361         * platform/gtk/gtk2drawing.c:
2362         (TSOffsetStyleGCArray):
2363         (TSOffsetStyleGCs):
2364         (moz_gtk_button_paint):
2365         (moz_gtk_scrollbar_thumb_paint):
2366         (moz_gtk_entry_paint):
2367         (moz_gtk_combo_box_paint):
2368         (moz_gtk_get_widget_border):
2369         * platform/gtk/gtk3drawing.c: Added.
2370         * platform/gtk/gtkdrawing.h:
2371
2372 2010-10-07  Daniel Cheng  <dcheng@chromium.org>
2373
2374         Reviewed by Kent Tamura.
2375
2376         [chromium] Fix indentation in ChromiumDataObject.h 
2377         https://bugs.webkit.org/show_bug.cgi?id=47396
2378
2379         Just a cleanup patch to make followup diffs smaller.
2380
2381         * platform/chromium/ChromiumDataObject.h:
2382         (WebCore::ChromiumDataObject::create):
2383         (WebCore::ChromiumDataObject::copy):
2384         (WebCore::ChromiumDataObject::urlTitle):
2385         (WebCore::ChromiumDataObject::setUrlTitle):
2386         (WebCore::ChromiumDataObject::htmlBaseUrl):
2387         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
2388         (WebCore::ChromiumDataObject::containsFilenames):
2389         (WebCore::ChromiumDataObject::filenames):
2390         (WebCore::ChromiumDataObject::setFilenames):
2391         (WebCore::ChromiumDataObject::fileExtension):
2392         (WebCore::ChromiumDataObject::setFileExtension):
2393         (WebCore::ChromiumDataObject::fileContentFilename):
2394         (WebCore::ChromiumDataObject::setFileContentFilename):
2395         (WebCore::ChromiumDataObject::fileContent):
2396         (WebCore::ChromiumDataObject::setFileContent):
2397
2398 2010-10-07  Kent Tamura  <tkent@chromium.org>
2399
2400         Reviewed by Dimitri Glazkov.
2401
2402         Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations
2403         https://bugs.webkit.org/show_bug.cgi?id=47327
2404
2405         Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(),
2406         valueAsNumber(), and setValueAsNumber() to InputType, and move
2407         serialize() and serializeForDateTimeTypes() too
2408
2409         * html/BaseDateAndTimeInputType.cpp:
2410         (WebCore::BaseDateAndTimeInputType::valueAsDate):
2411         (WebCore::BaseDateAndTimeInputType::setValueAsDate):
2412         (WebCore::BaseDateAndTimeInputType::valueAsNumber):
2413         (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
2414         (WebCore::BaseDateAndTimeInputType::serialize):
2415         * html/BaseDateAndTimeInputType.h:
2416         * html/DateInputType.cpp:
2417         (WebCore::DateInputType::setMillisecondToDateComponents):
2418         * html/DateInputType.h:
2419         * html/DateTimeInputType.cpp:
2420         (WebCore::DateTimeInputType::setMillisecondToDateComponents):
2421         * html/DateTimeInputType.h:
2422         * html/DateTimeLocalInputType.cpp:
2423         (WebCore::DateTimeLocalInputType::valueAsDate):
2424         (WebCore::DateTimeLocalInputType::setValueAsDate):
2425         (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents):
2426         * html/DateTimeLocalInputType.h:
2427         * html/HTMLInputElement.cpp:
2428         (WebCore::HTMLInputElement::valueAsDate):
2429         (WebCore::HTMLInputElement::setValueAsDate):
2430         (WebCore::HTMLInputElement::valueAsNumber):
2431         (WebCore::HTMLInputElement::setValueAsNumber):
2432         (WebCore::HTMLInputElement::stepUpFromRenderer):
2433         * html/HTMLInputElement.h:
2434         * html/InputType.cpp:
2435         (WebCore::InputType::valueAsDate):
2436         (WebCore::InputType::setValueAsDate):
2437         (WebCore::InputType::valueAsNumber):
2438         (WebCore::InputType::setValueAsNumber):
2439         (WebCore::InputType::serialize):
2440         * html/InputType.h:
2441         * html/MonthInputType.cpp:
2442         (WebCore::MonthInputType::valueAsDate):
2443         (WebCore::MonthInputType::setValueAsDate):
2444         (WebCore::MonthInputType::setMillisecondToDateComponents):
2445         * html/MonthInputType.h:
2446         * html/NumberInputType.cpp:
2447         (WebCore::NumberInputType::valueAsNumber):
2448         (WebCore::NumberInputType::setValueAsNumber):
2449         (WebCore::NumberInputType::serialize):
2450         * html/NumberInputType.h:
2451         * html/RangeInputType.cpp:
2452         (WebCore::RangeInputType::valueAsNumber):
2453         (WebCore::RangeInputType::setValueAsNumber):
2454         (WebCore::RangeInputType::serialize):
2455         * html/RangeInputType.h:
2456         * html/TimeInputType.cpp:
2457         (WebCore::TimeInputType::setMillisecondToDateComponents):
2458         * html/TimeInputType.h:
2459         * html/WeekInputType.cpp:
2460         (WebCore::WeekInputType::setMillisecondToDateComponents):
2461         * html/WeekInputType.h:
2462
2463 2010-10-07  No'am Rosenthal  <noam.rosenthal@nokia.com>
2464
2465         Reviewed by Kenneth Rohde Christiansen.
2466
2467         [Texmap] [Qt] Texture mapper initial implementation
2468         Texture Mapper is an implementation of accelerated compositing that doesn't require a
2469         platform specific scenegraph library like CA or QGraphicsView. The idea is that with
2470         time this would replace GraphicsLayerQt, and could serve as an implementation for other
2471         platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk,
2472         and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches
2473         an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt.
2474
2475         This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer.
2476
2477         * platform/graphics/qt/TextureMapperQt.cpp: Added.
2478         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added.
2479         * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added.
2480         * platform/graphics/texmap/TextureMapper.h: Added.
2481         * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added.
2482
2483 2010-10-07  Antonio Gomes  <agomes@rim.com>
2484
2485         Reviewed by Simon Fraser.
2486
2487         [Mac] [DRT] implement setSpatialNavigationEnabled
2488         https://bugs.webkit.org/show_bug.cgi?id=47291
2489
2490         Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in
2491         so it can be used from WebKit/mac.
2492
2493         * WebCore.exp.in:
2494
2495 2010-10-07  Eric Uhrhane  <ericu@chromium.org>
2496
2497         Reviewed by Jian Li
2498
2499         [V8] Add FileWriter to active DOM map
2500         https://bugs.webkit.org/show_bug.cgi?id=47380
2501
2502         It's an ActiveDOMObject; it needs to be in the map.
2503
2504         * bindings/scripts/CodeGeneratorV8.pm:
2505
2506 2010-10-07  Nico Weber  <thakis@chromium.org>
2507
2508         Reviewed by James Robinson.
2509
2510         [chromium] Make sure to update the current graphics context when calling out to AppKit.
2511         https://bugs.webkit.org/show_bug.cgi?id=47387
2512
2513         This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is
2514         now no longer necessary.
2515
2516         Should be covered by existing tests. The checkbox at
2517         http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should
2518         now show up correctly.
2519
2520         * platform/chromium/ThemeChromiumMac.mm:
2521         (WebCore::paintCheckbox):
2522         (WebCore::paintRadio):
2523         Create current context.
2524         * platform/graphics/chromium/ContentLayerChromium.cpp:
2525         (WebCore::ContentLayerChromium::updateContents):
2526         Remove LocalCurrentContext, it's now no longer necessary.
2527
2528 2010-10-07  Cris Neckar  <cdn@chromium.org>
2529
2530         Reviewed by Adam Barth.
2531
2532         Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach().
2533         https://bugs.webkit.org/show_bug.cgi?id=46921
2534
2535         Test: fast/html/object-image-nested-fallback.html
2536
2537         * html/HTMLObjectElement.cpp:
2538         (WebCore::HTMLObjectElement::renderFallbackContent):
2539
2540 2010-10-07  Rafael Antognolli  <antognolli@profusion.mobi>
2541
2542         Reviewed by Kenneth Rohde Christiansen.
2543
2544         [EFL] Fix shared timers on EFL port - make them thread safe.
2545         https://bugs.webkit.org/show_bug.cgi?id=47383
2546
2547         Using ecore_timer_add to create a timer from a thread that is
2548         not the main thread isn't safe. Now we add a pipe that is used
2549         to request a timer to be added in the main thread.
2550
2551         In order to reduce some delay on timers that are added with a
2552         very small interval, the timer callback is called immediately
2553         if the interval is smaller than the mainloop frame time.
2554
2555         No new features, so no tests added.
2556
2557         * platform/efl/SharedTimerEfl.cpp:
2558         (WebCore::setSharedTimerFiredFunction):
2559         (WebCore::timerEvent):
2560         (WebCore::processTimers):
2561         (WebCore::pipeHandlerCb):
2562         (WebCore::stopSharedTimer):
2563         (WebCore::addNewTimer):
2564         (WebCore::setSharedTimerFireTime):
2565
2566 2010-10-07  James Kozianski  <koz@chromium.org>
2567
2568         Reviewed by Adam Barth.
2569
2570         getPropertyValue('border') is incorrect after border-top-width is set
2571         https://bugs.webkit.org/show_bug.cgi?id=45949
2572
2573         Test: fast/dom/css-shorthand-common-value.html
2574
2575         CSSMutableStyleDeclaration::getCommonValue() was ignoring values from
2576         properties that were implicitly set, which led to erroneous results
2577         from getPropertyValue().
2578
2579         * css/CSSMutableStyleDeclaration.cpp:
2580         (WebCore::CSSMutableStyleDeclaration::getCommonValue):
2581
2582 2010-10-07  Ryosuke Niwa  <rniwa@webkit.org>
2583
2584         Reviewed by Tony Chang.
2585
2586         REGRESSION: Indenting pre duplicates content
2587         https://bugs.webkit.org/show_bug.cgi?id=47233
2588
2589         The bug was caused by our not splitting text nodes properly.
2590
2591         In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded
2592         to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions
2593         for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph,
2594         start, and end to work-around moveParagraphWithClones's removing a line feed.
2595
2596         Tests: editing/execCommand/indent-pre-list.html
2597                editing/execCommand/indent-pre-paragraphs.html
2598
2599         * editing/ApplyBlockElementCommand.cpp:
2600         (WebCore::ApplyBlockElementCommand::formatSelection): See above.
2601         (WebCore::isNewLineAtPosition):
2602         (WebCore::renderStyleOfEnclosingTextNode): Added.
2603         (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added.
2604         (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added.
2605         * editing/ApplyBlockElementCommand.h:
2606         * editing/FormatBlockCommand.cpp:
2607         (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition.
2608         * editing/FormatBlockCommand.h:
2609         * editing/IndentOutdentCommand.cpp:
2610         (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto.
2611         (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto.
2612         (WebCore::IndentOutdentCommand::formatRange): Ditto.
2613         * editing/IndentOutdentCommand.h:
2614
2615 2010-10-07  Jian Li  <jianli@chromium.org>
2616
2617         Reviewed by Adam Barth.
2618
2619         Support generating a FormData object based on the data in an existing <form>.
2620         https://bugs.webkit.org/show_bug.cgi?id=45929
2621
2622         Test: http/tests/local/formdata/send-form-data-constructed-from-form.html
2623
2624         * bindings/js/JSDOMFormDataCustom.cpp:
2625         (WebCore::toHTMLFormElement):
2626         (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):
2627         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
2628         (WebCore::V8DOMFormData::constructorCallback):
2629         * html/DOMFormData.cpp:
2630         (WebCore::DOMFormData::DOMFormData):
2631         * html/DOMFormData.h:
2632         (WebCore::DOMFormData::create):
2633         * html/DOMFormData.idl:
2634
2635 2010-10-07  Abhishek Arya  <inferno@chromium.org>
2636
2637         Reviewed by Dave Hyatt.
2638
2639         Set the m_selectedChildren flag on the root inline box if one of the leaf 
2640         inline box from the bidi runs walk has a selection state. Remove the flag
2641         setting logic from addToLine, since line boxes created in createLinesBoxes
2642         should not be propagating selection state to root inline box.
2643         https://bugs.webkit.org/show_bug.cgi?id=47201
2644
2645         Test: editing/selection/root-inlinebox-selected-children-crash.html
2646
2647         * rendering/InlineFlowBox.cpp:
2648         (WebCore::InlineFlowBox::addToLine):
2649         * rendering/RenderBlockLineLayout.cpp:
2650         (WebCore::RenderBlock::constructLine):
2651
2652 2010-10-07  Benjamin Otte  <otte@gnome.org>
2653
2654         Reviewed by Martin Robinson.
2655
2656         [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins
2657         https://bugs.webkit.org/show_bug.cgi?id=47361
2658
2659         Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead
2660         of directly with X11. This should work fine with GDK double-buffering, but
2661         if we ever disable it, we'll need to verify that this is still functioning
2662         properly.
2663
2664         * plugins/gtk/PluginViewGtk.cpp:
2665         (WebCore::PluginView::paint): Do a bit of code cleanup.
2666
2667 2010-10-07  Anders Carlsson  <andersca@apple.com>
2668
2669         Reviewed by Sam Weinig.
2670
2671         Add a WKPageFindClient, hook up WKPageCountStringMatches
2672         https://bugs.webkit.org/show_bug.cgi?id=47373
2673
2674         Export find related symbols needed by WebKit2.
2675
2676         * WebCore.exp.in:
2677
2678 2010-10-07  David Hyatt  <hyatt@apple.com>
2679
2680         Reviewed by Sam Weinig.
2681
2682         https://bugs.webkit.org/show_bug.cgi?id=47370
2683         
2684         Make line box placement in the inline direction writing-mode-aware.  Lines now set their y-position instead of x-position
2685         when vertical.
2686         
2687         Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in
2688         placeBoxesInInlineDirection can be replaced with the helper.
2689
2690         Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line
2691         boxes.
2692
2693         Vertical lines are still not testable until they can be placed in the block direction.  Then the render tree dumps
2694         become meaningful (even if the pixel results look horrible).
2695
2696         * rendering/InlineBox.h:
2697         (WebCore::InlineBox::logicalRight):
2698         * rendering/InlineFlowBox.cpp:
2699         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
2700         * rendering/InlineFlowBox.h:
2701         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
2702         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
2703         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
2704         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
2705         (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
2706         * rendering/RenderBlockLineLayout.cpp:
2707         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2708         * rendering/style/RenderStyle.cpp:
2709         (WebCore::RenderStyle::getShadowExtent):
2710         (WebCore::RenderStyle::getShadowHorizontalExtent):
2711         (WebCore::RenderStyle::getShadowVerticalExtent):
2712         * rendering/style/RenderStyle.h:
2713         (WebCore::InheritedFlags::getTextShadowExtent):
2714         (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
2715         (WebCore::InheritedFlags::getTextShadowVerticalExtent):
2716         (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
2717         (WebCore::InheritedFlags::getBoxShadowExtent):
2718         (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
2719         (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
2720         (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
2721         (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
2722
2723 2010-10-07  Dan Bernstein  <mitz@apple.com>
2724
2725         Reviewed by Simon Fraser.
2726
2727         <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page
2728         https://bugs.webkit.org/show_bug.cgi?id=47374
2729
2730         In the legacy (paint-time pagination) printing model, when there are overlapping lines,
2731         adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n,
2732         namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1
2733         moved the truncation point up again.
2734
2735         * rendering/RenderLineBoxList.cpp:
2736         (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the
2737         current line extends below the truncation point.
2738
2739 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
2740
2741         Reviewed by Beth Dakin.
2742
2743         Use isIdentityOrTranslationOrFlipped() in scrollbar code
2744         https://bugs.webkit.org/show_bug.cgi?id=47378
2745
2746         Replace old code that looked at values in the CGAffineTransform
2747         with nicely named method that does the same test.
2748
2749         * platform/mac/ScrollbarThemeMac.mm:
2750         (WebCore::ScrollbarThemeMac::paint):
2751
2752 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
2753
2754         Reviewed by Beth Dakin.
2755
2756         Edge fringe artifact with transformed, masked elements (including reflections)
2757         https://bugs.webkit.org/show_bug.cgi?id=19179
2758         
2759         When drawing the mask images, use a transparency layer if the CTM
2760         has a rotation, scale or skew in it to avoid antialiasing issues at
2761         the edges.
2762
2763         Test: fast/css/transformed-mask.html
2764
2765         * rendering/RenderBox.cpp:
2766         (WebCore::RenderBox::paintMask): Don't bother painting the mask if
2767         painting is disabled, which also avoids an assertion in getCTM().
2768         (WebCore::RenderBox::paintMaskImages):
2769
2770 2010-10-07  Kwang Yul Seo  <skyul@company100.net>
2771
2772         Reviewed by Kent Tamura.
2773
2774         [BREWMP] Map non-alphabet key code to Unicode value
2775         https://bugs.webkit.org/show_bug.cgi?id=46002
2776
2777         Non-alphabet key codes are not equal to the unicode values. Add conversion.
2778
2779         * platform/brew/PlatformKeyboardEventBrew.cpp:
2780         (WebCore::singleCharacterString):
2781
2782 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
2783
2784         Reviewed by Chris Fleizach.
2785
2786         [GTK] The FreeType backend does not respect the FC_EMBOLDEN property
2787         https://bugs.webkit.org/show_bug.cgi?id=46216
2788
2789         Look for the FC_EMBOLDEN property of the FcPattern when constructing
2790         FontPlatformData and use it to enable synthetic bold fonts when necessary.
2791
2792         Test: platform/gtk/fonts/fontconfig-synthetic-bold.html
2793
2794         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
2795         (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property.
2796
2797 2010-10-07  James Simonsen  <simonjam@chromium.org>
2798
2799         Reviewed by Pavel Feldman.
2800
2801         [Web Timing] Use platform definition of responseEnd
2802         https://bugs.webkit.org/show_bug.cgi?id=46306
2803
2804         No new tests. Used existing webtiming test.
2805
2806         * loader/MainResourceLoader.cpp:
2807         (WebCore::MainResourceLoader::didFinishLoading):
2808
2809 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
2810
2811         Reviewed by Chris Fleizach.
2812
2813         [Gtk] CSS font-style: italic behavior
2814         https://bugs.webkit.org/show_bug.cgi?id=33299
2815
2816         Properly interpret the FC_MATRIX property from a FontConfig pattern.
2817         FontConfig will use this property when returning fonts which have a
2818         synthetic oblique variant configured in the fonts.conf configuration
2819         file.
2820
2821         Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html
2822
2823         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
2824         (WebCore::FontPlatformData::FontPlatformData): Added a constructor that
2825         takes an existing FontPlatformData and a font size.
2826         (WebCore::FontPlatformData::initializeWithFontFace): Added this helper
2827         intialization method that properly handles the FC_MATRIX property from
2828         the FcPattern.
2829         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration
2830         to the new constructor and the initializeWithFontFace.
2831         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
2832         (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData
2833         constructor.
2834
2835 2010-10-07  David Hyatt  <hyatt@apple.com>
2836
2837         Reviewed by Dan Bernstein.
2838
2839         https://bugs.webkit.org/show_bug.cgi?id=47357
2840         
2841         Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware.
2842
2843         * rendering/InlineFlowBox.cpp:
2844         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2845         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
2846         * rendering/RenderBlock.cpp:
2847         (WebCore::RenderBlock::positionNewFloatOnLine):
2848         * rendering/RenderBlockLineLayout.cpp:
2849         (WebCore::getBorderPaddingMargin):
2850         (WebCore::inlineLogicalWidth):
2851         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2852         (WebCore::inlineFlowRequiresLineBox):
2853         (WebCore::RenderBlock::skipLeadingWhitespace):
2854         (WebCore::RenderBlock::fitBelowFloats):
2855         (WebCore::RenderBlock::findNextLineBreak):
2856         * rendering/RenderBoxModelObject.h:
2857         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin):
2858         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding):
2859
2860 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
2861
2862         Reviewed by Kenneth Rohde Christiansen.
2863
2864         Fixing viewport meta tag user-scalable handling
2865         https://bugs.webkit.org/show_bug.cgi?id=47330
2866
2867         user-scalable attribute was not considered in viewport meta tag handling.
2868
2869         * dom/ViewportArguments.cpp:
2870         (WebCore::findConfigurationForViewportData):
2871         * dom/ViewportArguments.h:
2872
2873 2010-10-05  Diego Gonzalez  <diegohcg@webkit.org>
2874
2875         Reviewed by Andreas Kling.
2876
2877         [Qt] Hook up accelerometer data via Qt DeviceMotion
2878         https://bugs.webkit.org/show_bug.cgi?id=47105
2879
2880         Get accelerometer necessary data via Qt mobility library using a
2881         provider class. Enable, also the RotationRate using the current device
2882         orientation provider.
2883
2884         * WebCore.pro:
2885
2886 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
2887
2888         Reviewed by Kenneth Rohde Christiansen.
2889
2890         Some viewport meta tag api refactoring
2891         https://bugs.webkit.org/show_bug.cgi?id=47334
2892
2893         WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
2894         WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
2895
2896         * dom/ViewportArguments.cpp:
2897         (WebCore::computeViewportAttributes):
2898         * dom/ViewportArguments.h:
2899
2900 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2901
2902         Reviewed by Xan Lopez.
2903
2904         [GTK] Don't use GtkObject
2905         https://bugs.webkit.org/show_bug.cgi?id=47090
2906
2907         GtkObject has been removed in gtk3.
2908
2909         * plugins/gtk/gtk2xtbin.c:
2910         (gtk_xtbin_class_init):
2911         (gtk_xtbin_dispose):
2912
2913 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
2914
2915         Reviewed by Pavel Feldman.
2916
2917         Web Inspector: highlight XHR breakpoint when hit.
2918         https://bugs.webkit.org/show_bug.cgi?id=47253
2919
2920         * inspector/InspectorController.cpp:
2921         (WebCore::InspectorController::didCommitLoad):
2922         (WebCore::InspectorController::setNativeBreakpoint):
2923         (WebCore::InspectorController::removeNativeBreakpoint):
2924         (WebCore::InspectorController::findEventListenerBreakpoint):
2925         (WebCore::InspectorController::findXHRBreakpoint):
2926         * inspector/InspectorController.h:
2927         * inspector/InspectorInstrumentation.cpp:
2928         (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
2929         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
2930         * inspector/front-end/BreakpointManager.js:
2931         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
2932         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
2933         (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
2934         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
2935         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
2936         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
2937         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
2938         (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend):
2939         (WebInspector.BreakpointManager.prototype.debuggerPaused):
2940         (WebInspector.BreakpointManager.prototype.debuggerResumed):
2941         (WebInspector.NativeBreakpoint):
2942         (WebInspector.NativeBreakpoint.prototype.get enabled):
2943         (WebInspector.NativeBreakpoint.prototype.set enabled):
2944         (WebInspector.NativeBreakpoint.prototype.remove):
2945         * inspector/front-end/BreakpointsSidebarPane.js:
2946         (WebInspector.BreakpointItem):
2947         (WebInspector.BreakpointItem.prototype._breakpointClicked):
2948         (WebInspector.BreakpointItem.prototype._hitStateChanged):
2949         * inspector/front-end/CallStackSidebarPane.js:
2950         (WebInspector.CallStackSidebarPane.prototype.updateStatus):
2951         * inspector/front-end/inspector.css:
2952         (.breakpoint-list .breakpoint-hit):
2953         * inspector/front-end/inspector.js:
2954         (WebInspector.pausedScript):
2955         (WebInspector.resumedScript):
2956
2957 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2958
2959         Reviewed by Xan Lopez.
2960
2961         [GTK] Fix the build for GTK+ 3
2962         https://bugs.webkit.org/show_bug.cgi?id=47249
2963
2964         Use GdkVisual instead of GdkColormap. GdkColormap has been removed
2965         in gtk3.
2966
2967         * plugins/gtk/PluginViewGtk.cpp:
2968         (WebCore::PluginView::platformStart):
2969         * plugins/gtk/gtk2xtbin.c:
2970         (gtk_xtbin_new):
2971
2972 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2973
2974         Reviewed by Xan Lopez.
2975
2976         [GTK] Fix the build for GTK+ 3
2977         https://bugs.webkit.org/show_bug.cgi?id=47249
2978
2979         Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
2980         are deprecated in gtk2 and have been removed in gtk3. Equivalent
2981         API has been added to GdkWindow.
2982
2983         * platform/gtk/GtkVersioning.c:
2984         (getDefaultGDKPointerDevice):
2985         * platform/gtk/GtkVersioning.h:
2986         * platform/gtk/PlatformScreenGtk.cpp:
2987         (WebCore::getVisual):
2988         (WebCore::screenAvailableRect):
2989
2990 2010-10-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2991
2992         Reviewed by Andreas Kling.
2993
2994         [Qt] Disconnect signals before destroying MediaPlayerPrivateQt
2995
2996         https://bugs.webkit.org/show_bug.cgi?id=47073
2997
2998         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2999
3000 2010-10-07  Alexander Pavlov  <apavlov@chromium.org>
3001
3002         Unreviewed, release build fix.
3003
3004         * inspector/InspectorStyleSheet.cpp:
3005         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
3006         * inspector/InspectorStyleSheet.h:
3007         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
3008         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
3009
3010 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
3011
3012         Unreviewed, build fix.
3013
3014         Build fix for r69283.
3015
3016         * dom/Document.cpp:
3017         (WebCore::Document::inspectorController):
3018         * dom/Document.h:
3019
3020 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3021
3022         Reviewed by Xan Lopez.
3023
3024         [GTK] Fix the build for GTK+ 3
3025         https://bugs.webkit.org/show_bug.cgi?id=47249
3026
3027         Don't use gtk_size_request_get_size(). It has been removed,
3028         gtk_widget_get_preferred_size() should be used instead
3029
3030         * platform/gtk/PopupMenuGtk.cpp:
3031         (WebCore::PopupMenuGtk::show):
3032
3033 2010-10-06  Alexander Pavlov  <apavlov@chromium.org>
3034
3035         Reviewed by Pavel Feldman.
3036
3037         Web Inspector: Implement handling of CSS operations in InspectorCSSAgent.
3038         Property toggling not implemented yet. The code is not going live.
3039         https://bugs.webkit.org/show_bug.cgi?id=45825
3040
3041         * CMakeLists.txt:
3042         * GNUmakefile.am:
3043         * WebCore.gypi:
3044         * WebCore.pro:
3045         * WebCore.vcproj/WebCore.vcproj:
3046         * WebCore.xcodeproj/project.pbxproj:
3047         * inspector/InspectorCSSAgent.cpp: Added.
3048         (WebCore::InspectorCSSAgent::buildObjectForStyle):
3049         (WebCore::InspectorCSSAgent::parentStyleSheet):
3050         (WebCore::InspectorCSSAgent::asCSSStyleRule):
3051         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
3052         (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
3053         (WebCore::InspectorCSSAgent::reset):
3054         (WebCore::InspectorCSSAgent::getMatchedRulesForNode2):
3055         (WebCore::InspectorCSSAgent::getMatchedPseudoRulesForNode2):
3056         (WebCore::InspectorCSSAgent::getAttributeStylesForNode2):
3057         (WebCore::InspectorCSSAgent::getInlineStyleForNode2):
3058         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
3059         (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
3060         (WebCore::InspectorCSSAgent::getAllStyles2):
3061         (WebCore::InspectorCSSAgent::getStyleSheet2):
3062         (WebCore::InspectorCSSAgent::setStyleSheetText2):
3063         (WebCore::InspectorCSSAgent::setStyleText2):
3064         (WebCore::InspectorCSSAgent::toggleProperty2):
3065         (WebCore::InspectorCSSAgent::setRuleSelector2):
3066         (WebCore::InspectorCSSAgent::addRule2):
3067         (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
3068         (WebCore::InspectorCSSAgent::inlineStyleElement):
3069         (WebCore::InspectorCSSAgent::populateObjectWithStyleProperties):
3070         (WebCore::InspectorCSSAgent::shorthandValue):
3071         (WebCore::InspectorCSSAgent::shorthandPriority):
3072         (WebCore::InspectorCSSAgent::longhandProperties):
3073         (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
3074         (WebCore::InspectorCSSAgent::elementForId):
3075         (WebCore::InspectorCSSAgent::bindStyleSheet):
3076         (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
3077         (WebCore::InspectorCSSAgent::styleSheetForId):
3078         (WebCore::InspectorCSSAgent::detectOrigin):
3079         (WebCore::InspectorCSSAgent::buildArrayForRuleList):
3080         (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
3081         (WebCore::InspectorCSSAgent::didRemoveDocument):
3082         (WebCore::InspectorCSSAgent::didRemoveDOMNode):
3083         * inspector/InspectorCSSAgent.h: Added.
3084         (WebCore::InspectorCSSAgent::create):
3085         * inspector/InspectorDOMAgent.cpp:
3086         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3087         (WebCore::InspectorDOMAgent::setDOMListener):
3088         (WebCore::InspectorDOMAgent::unbind):
3089         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
3090         (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
3091         * inspector/InspectorDOMAgent.h:
3092         (WebCore::InspectorDOMAgent::DOMListener::~DOMListener):
3093         (WebCore::InspectorDOMAgent::documents):
3094         * inspector/InspectorStyleSheet.cpp: Added.
3095         (ParsedStyleSheet::cssStyleSheet):
3096         (ParsedStyleSheet::text):
3097         (ParsedStyleSheet::hasText):
3098         (ParsedStyleSheet::sourceData):
3099         (ParsedStyleSheet::hasSourceData):
3100         (ParsedStyleSheet::ParsedStyleSheet):
3101         (ParsedStyleSheet::setText):
3102         (ParsedStyleSheet::setSourceData):
3103         (ParsedStyleSheet::ruleSourceDataAt):
3104         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
3105         (WebCore::InspectorStyleSheet::~InspectorStyleSheet):
3106         (WebCore::InspectorStyleSheet::setText):
3107         (WebCore::InspectorStyleSheet::setRuleSelector):
3108         (WebCore::InspectorStyleSheet::addRule):
3109         (WebCore::InspectorStyleSheet::ruleForId):
3110         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
3111         (WebCore::InspectorStyleSheet::buildObjectForRule):
3112         (WebCore::InspectorStyleSheet::buildObjectForStyle):
3113         (WebCore::InspectorStyleSheet::styleForId):
3114         (WebCore::InspectorStyleSheet::setStyleText):
3115         (WebCore::InspectorStyleSheet::ownerDocument):
3116         (WebCore::InspectorStyleSheet::ruleSourceDataFor):
3117         (WebCore::InspectorStyleSheet::ruleIndexByStyle):
3118         (WebCore::InspectorStyleSheet::ensureParsedDataReady):
3119         (WebCore::InspectorStyleSheet::text):
3120         (WebCore::InspectorStyleSheet::ensureText):
3121         (WebCore::InspectorStyleSheet::ensureSourceData):
3122         (WebCore::InspectorStyleSheet::innerSetStyleSheetText):
3123         (WebCore::InspectorStyleSheet::innerSetStyleText):
3124         (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
3125         (WebCore::InspectorStyleSheet::findPageRuleWithStyle):
3126         (WebCore::InspectorStyleSheet::fullRuleId):
3127         (WebCore::InspectorStyleSheet::revalidateStyle):
3128         (WebCore::InspectorStyleSheet::styleSheetText):
3129         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
3130         (WebCore::InspectorStyleSheet::inlineStyleSheetText):
3131         (WebCore::InspectorStyleSheet::buildArrayForRuleList):
3132         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
3133         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
3134         (WebCore::InspectorStyleSheetForInlineStyle::ownerDocument):
3135         (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
3136         (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle):
3137         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
3138         * inspector/InspectorStyleSheet.h: Added.
3139         (WebCore::InspectorStyleSheet::create):
3140         (WebCore::InspectorStyleSheet::id):
3141         (WebCore::InspectorStyleSheet::pageStyleSheet):
3142         (WebCore::InspectorStyleSheet::canBind):
3143         (WebCore::InspectorStyleSheet::fullRuleOrStyleId):
3144         (WebCore::InspectorStyleSheet::ruleOrStyleId):
3145         (WebCore::InspectorStyleSheet::fullStyleId):
3146         (WebCore::InspectorStyleSheetForInlineStyle::create):
3147         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
3148         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
3149         (WebCore::InspectorStyleSheetForInlineStyle::ruleIndexByStyle):
3150         * inspector/InspectorUtilities.cpp: Added.
3151         (WebCore::InspectorUtilities::resourceContentForURL):
3152         * inspector/InspectorUtilities.h: Added.
3153
3154 2010-10-05  Pavel Podivilov  <podivilov@chromium.org>
3155
3156         Reviewed by Pavel Feldman.
3157
3158         Web Inspector: extract Inspector Instrumentation API as a class
3159         https://bugs.webkit.org/show_bug.cgi?id=47173
3160
3161         * bindings/js/JSXMLHttpRequestCustom.cpp:
3162         (WebCore::JSXMLHttpRequest::send):
3163         * bindings/js/ScriptController.cpp:
3164         (WebCore::ScriptController::evaluateInWorld):
3165         * bindings/v8/V8DOMWindowShell.cpp:
3166         * bindings/v8/V8Proxy.cpp:
3167         (WebCore::V8Proxy::evaluate):
3168         (WebCore::V8Proxy::callFunction):
3169         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3170         (WebCore::V8XMLHttpRequest::sendCallback):
3171         * dom/Document.cpp:
3172         (WebCore::Document::recalcStyle):
3173         * dom/Document.h:
3174         * dom/Node.cpp:
3175         (WebCore::Node::dispatchGenericEvent):
3176         * html/parser/HTMLDocumentParser.cpp:
3177         (WebCore::HTMLDocumentParser::pumpTokenizer):
3178         * html/parser/HTMLDocumentParser.h:
3179         * inspector/InspectorInstrumentation.cpp:
3180         (WebCore::InspectorInstrumentation::hasFrontend):
3181         (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
3182         * inspector/InspectorInstrumentation.h:
3183         (WebCore::InspectorInstrumentation::hasFrontends):
3184         (WebCore::InspectorInstrumentation::inspectorControllerForContext):
3185         (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
3186         (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
3187         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
3188         * inspector/InspectorTimelineAgent.cpp:
3189         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3190         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
3191         * inspector/InspectorTimelineAgent.h:
3192         * loader/ResourceLoader.cpp:
3193         (WebCore::ResourceLoader::didReceiveResponse):
3194         (WebCore::ResourceLoader::didReceiveData):
3195         * loader/loader.cpp:
3196         (WebCore::Loader::load):
3197         * page/DOMTimer.cpp:
3198         (WebCore::DOMTimer::install):
3199         (WebCore::DOMTimer::removeById):
3200         (WebCore::DOMTimer::fired):
3201         * page/DOMTimer.h:
3202         * page/DOMWindow.cpp:
3203         (WebCore::DOMWindow::dispatchEvent):
3204         * page/DOMWindow.h:
3205         * page/FrameView.cpp:
3206         (WebCore::FrameView::layout):
3207         (WebCore::FrameView::paintContents):
3208         * page/FrameView.h:
3209         * page/Page.cpp:
3210         * page/Page.h:
3211         * rendering/RenderLayerBacking.cpp:
3212         (WebCore::RenderLayerBacking::paintContents):
3213         * xml/XMLHttpRequest.cpp:
3214         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
3215
3216 2010-10-07  Zraly Mike  <mike.zraly@nokia.com>
3217
3218         Reviewed by Andreas Kling.
3219
3220         Windowless flash plugin is not rendered in Symbian
3221         https://bugs.webkit.org/show_bug.cgi?id=47172
3222
3223         * plugins/symbian/PluginViewSymbian.cpp:
3224         (WebCore::PluginView::platformStart):
3225         Add call to updatePluginWidget() following changes to
3226         platform widget.  This is needed to set PluginView's
3227         m_windowRect and m_clipRect members properly after
3228         the proxy widget and its container get created.
3229
3230 2010-10-07  Andreas Kling  <kling@webkit.org>
3231
3232         Reviewed by Nikolas Zimmermann.
3233
3234         Rename (and move) RenderPath to svg/RenderSVGPath
3235         https://bugs.webkit.org/show_bug.cgi?id=47053
3236
3237         Also renamed RenderObject::isRenderPath() to isSVGPath()
3238
3239         * Android.mk:
3240         * CMakeLists.txt:
3241         * GNUmakefile.am:
3242         * WebCore.gypi:
3243         * WebCore.order:
3244         * WebCore.pro:
3245         * WebCore.vcproj/WebCore.vcproj:
3246         * WebCore.xcodeproj/project.pbxproj:
3247         * rendering/RenderObject.h:
3248         (WebCore::RenderObject::isSVGPath):
3249         * rendering/RenderPath.cpp: Removed.
3250         * rendering/RenderPath.h: Removed.
3251         * rendering/RenderSVGHiddenContainer.cpp:
3252         * rendering/RenderSVGResourceClipper.cpp:
3253         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
3254         (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
3255         (WebCore::RenderSVGResourceClipper::hitTestClipContent):
3256         * rendering/RenderSVGResourceContainer.cpp:
3257         (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
3258         * rendering/RenderSVGResourceSolidColor.cpp:
3259         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
3260         * rendering/RenderTreeAsText.cpp:
3261         (WebCore::write):
3262         * rendering/SVGRenderSupport.cpp:
3263         (WebCore::SVGRenderSupport::layoutChildren):
3264         * rendering/SVGRenderTreeAsText.cpp:
3265         (WebCore::writeStyle):
3266         (WebCore::operator<<):
3267         (WebCore::write):
3268         * rendering/SVGRenderTreeAsText.h:
3269         * rendering/style/SVGRenderStyle.cpp:
3270         (WebCore::SVGRenderStyle::diff):
3271         * rendering/svg/RenderSVGPath.cpp: Copied from WebCore/rendering/RenderPath.cpp.
3272         (WebCore::RenderSVGPath::RenderSVGPath):
3273         (WebCore::RenderSVGPath::fillContains):
3274         (WebCore::RenderSVGPath::strokeContains):
3275         (WebCore::RenderSVGPath::layout):
3276         (WebCore::RenderSVGPath::fillAndStrokePath):
3277         (WebCore::RenderSVGPath::paint):
3278         (WebCore::RenderSVGPath::addFocusRingRects):
3279         (WebCore::RenderSVGPath::nodeAtFloatPoint):
3280         (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded):
3281         (WebCore::RenderSVGPath::updateCachedBoundaries):
3282         * rendering/svg/RenderSVGPath.h: Copied from WebCore/rendering/RenderPath.h.
3283         (WebCore::RenderSVGPath::isSVGPath):
3284         (WebCore::RenderSVGPath::renderName):
3285         (WebCore::toRenderSVGPath):
3286         * svg/SVGCircleElement.cpp:
3287         (WebCore::SVGCircleElement::svgAttributeChanged):
3288         * svg/SVGEllipseElement.cpp:
3289         (WebCore::SVGEllipseElement::svgAttributeChanged):
3290         * svg/SVGGradientElement.cpp:
3291         * svg/SVGLineElement.cpp:
3292         (WebCore::SVGLineElement::svgAttributeChanged):
3293         * svg/SVGPathElement.cpp:
3294         (WebCore::SVGPathElement::svgAttributeChanged):
3295         * svg/SVGPolyElement.cpp:
3296         (WebCore::SVGPolyElement::svgAttributeChanged):
3297         * svg/SVGRectElement.cpp:
3298         (WebCore::SVGRectElement::svgAttributeChanged):
3299         * svg/SVGStyledLocatableElement.cpp:
3300         * svg/SVGStyledTransformableElement.cpp:
3301         (WebCore::SVGStyledTransformableElement::createRenderer):
3302
3303 2010-10-06  Yury Semikhatsky  <yurys@chromium.org>
3304
3305         Reviewed by Pavel Feldman.
3306
3307         Web Inspector: clear line highlight when switching current view
3308         https://bugs.webkit.org/show_bug.cgi?id=47262
3309
3310         * inspector/front-end/SourceFrame.js:
3311         (WebInspector.SourceFrame.prototype.clearLineHighlight):
3312         * inspector/front-end/SourceView.js:
3313         (WebInspector.SourceView.prototype.hide):
3314         * inspector/front-end/TextViewer.js:
3315         (WebInspector.TextViewer.prototype.highlightLine):
3316         (WebInspector.TextViewer.prototype.clearLineHighlight):
3317
3318 2010-10-06  Chris Evans  <cevans@google.com>
3319
3320         Reviewed by David Levin.
3321
3322         https://bugs.webkit.org/show_bug.cgi?id=47313
3323
3324         Fix integer errors with enormous input strings to newline normalization APIs.
3325
3326         * platform/text/LineEnding.cpp:
3327         (WebCore::normalizeLineEndingsToCRLF): return the empty string upon huge input strings. (Behaves similarly to base64Encode now).
3328         (WebCore::normalizeToCROrLF): use the correct type for a string length.
3329
3330 2010-10-06  Kent Tamura  <tkent@chromium.org>
3331
3332         Unreviewed, build fix.
3333
3334         Windows build fix for r69272.
3335
3336         * html/BaseDateAndTimeInputType.cpp:
3337         (WebCore::BaseDateAndTimeInputType::stepBase):
3338          Use defaultStepBase() instead of defaultStepBase.
3339         * html/InputType.h:
3340         (WebCore::InputType::defaultStepBase):
3341          Make defaultStepBase static function.
3342         * html/NumberInputType.cpp:
3343         (WebCore::NumberInputType::stepBase):
3344          Use defaultStepBase() instead of defaultStepBase.
3345
3346 2010-10-06  Kent Tamura  <tkent@chromium.org>
3347
3348         Reviewed by Dimitri Glazkov.
3349
3350         Refactor HTMLInputElement: Move range/step related functions
3351         https://bugs.webkit.org/show_bug.cgi?id=47251
3352
3353         Move the content of the following functions:
3354          - rangeUnderflow()
3355          - rangeOverflow()
3356          - minimum()
3357          - maximum()
3358          - stepMismatch()
3359          - stepBase()
3360
3361         getStepParameters() was split into InputType::defaultStep() and
3362         stepScaleFactor().
3363
3364         * html/BaseDateAndTimeInputType.cpp:
3365         (WebCore::BaseDateAndTimeInputType::rangeUnderflow):
3366         (WebCore::BaseDateAndTimeInputType::rangeOverflow):
3367         (WebCore::BaseDateAndTimeInputType::stepMismatch):
3368         (WebCore::BaseDateAndTimeInputType::stepBase):
3369         * html/BaseDateAndTimeInputType.h:
3370         * html/DateInputType.cpp:
3371         (WebCore::DateInputType::minimum):
3372         (WebCore::DateInputType::maximum):
3373         (WebCore::DateInputType::defaultStep):
3374         (WebCore::DateInputType::stepScaleFactor):
3375         (WebCore::DateInputType::parsedStepValueShouldBeInteger):
3376         * html/DateInputType.h:
3377         * html/DateTimeInputType.cpp:
3378         (WebCore::DateTimeInputType::minimum):
3379         (WebCore::DateTimeInputType::maximum):
3380         (WebCore::DateTimeInputType::defaultStep):
3381         (WebCore::DateTimeInputType::stepScaleFactor):
3382         (WebCore::DateTimeInputType::scaledStepValeuShouldBeInteger):
3383         * html/DateTimeInputType.h:
3384         * html/DateTimeLocalInputType.cpp:
3385         (WebCore::DateTimeLocalInputType::minimum):
3386         (WebCore::DateTimeLocalInputType::maximum):
3387         (WebCore::DateTimeLocalInputType::defaultStep):
3388         (WebCore::DateTimeLocalInputType::stepScaleFactor):
3389         (WebCore::DateTimeLocalInputType::scaledStepValeuShouldBeInteger):
3390         * html/DateTimeLocalInputType.h:
3391         * html/HTMLInputElement.cpp:
3392         (WebCore::HTMLInputElement::rangeUnderflow):
3393         (WebCore::HTMLInputElement::rangeOverflow):
3394         (WebCore::HTMLInputElement::minimum):
3395         (WebCore::HTMLInputElement::maximum):
3396         (WebCore::HTMLInputElement::stepMismatch):
3397         (WebCore::HTMLInputElement::getAllowedValueStep):
3398         (WebCore::HTMLInputElement::applyStep):
3399         (WebCore::HTMLInputElement::handleKeyEventForRange):
3400         (WebCore::HTMLInputElement::stepUpFromRenderer):
3401         * html/HTMLInputElement.h:
3402         * html/InputType.cpp:
3403         (WebCore::InputType::patternMismatch):
3404         (WebCore::InputType::rangeUnderflow):
3405         (WebCore::InputType::rangeOverflow):
3406         (WebCore::InputType::minimum):
3407         (WebCore::InputType::maximum):
3408         (WebCore::InputType::stepMismatch):
3409         (WebCore::InputType::stepBase):
3410         (WebCore::InputType::defaultStep):
3411         (WebCore::InputType::stepScaleFactor):
3412         (WebCore::InputType::parsedStepValueShouldBeInteger):
3413         (WebCore::InputType::scaledStepValeuShouldBeInteger):
3414         * html/InputType.h:
3415         * html/MonthInputType.cpp:
3416         (WebCore::MonthInputType::minimum):
3417         (WebCore::MonthInputType::maximum):
3418         (WebCore::MonthInputType::defaultStep):
3419         (WebCore::MonthInputType::stepScaleFactor):
3420         (WebCore::MonthInputType::parsedStepValueShouldBeInteger):
3421         * html/MonthInputType.h:
3422         * html/NumberInputType.cpp:
3423         (WebCore::NumberInputType::rangeUnderflow):
3424         (WebCore::NumberInputType::rangeOverflow):
3425         (WebCore::NumberInputType::minimum):
3426         (WebCore::NumberInputType::maximum):
3427         (WebCore::NumberInputType::stepMismatch):
3428         (WebCore::NumberInputType::stepBase):
3429         (WebCore::NumberInputType::defaultStep):
3430         (WebCore::NumberInputType::stepScaleFactor):
3431         * html/NumberInputType.h:
3432         * html/RangeInputType.cpp:
3433         (WebCore::RangeInputType::rangeUnderflow):
3434         (WebCore::RangeInputType::rangeOverflow):
3435         (WebCore::RangeInputType::minimum):
3436         (WebCore::RangeInputType::maximum):
3437         (WebCore::RangeInputType::stepMismatch):
3438         (WebCore::RangeInputType::stepBase):
3439         (WebCore::RangeInputType::defaultStep):
3440         (WebCore::RangeInputType::stepScaleFactor):
3441         * html/RangeInputType.h:
3442         * html/TimeInputType.cpp:
3443         (WebCore::TimeInputType::minimum):
3444         (WebCore::TimeInputType::maximum):
3445         (WebCore::TimeInputType::defaultStep):
3446         (WebCore::TimeInputType::stepScaleFactor):
3447         (WebCore::TimeInputType::scaledStepValeuShouldBeInteger):
3448         * html/TimeInputType.h:
3449         * html/WeekInputType.cpp:
3450         (WebCore::WeekInputType::minimum):
3451         (WebCore::WeekInputType::maximum):
3452         (WebCore::WeekInputType::stepBase):
3453         (WebCore::WeekInputType::defaultStep):
3454         (WebCore::WeekInputType::stepScaleFactor):
3455         (WebCore::WeekInputType::parsedStepValueShouldBeInteger):
3456         * html/WeekInputType.h:
3457
3458 2010-10-06  Simon Fraser  <simon.fraser@apple.com>
3459
3460         Reviewed by Dan Bernstein, Darin Adler.
3461
3462         :first-letter should apply to "punctuation" after the first letter
3463         https://bugs.webkit.org/show_bug.cgi?id=45986
3464         
3465         Follow the CSS 2.1 spec by allow certain kinds of punctuation before and after
3466         the :first-letter character.
3467         
3468         The spec does not describe whitespace behavior, and browsers are inconsistent.
3469         This patch allows whitespace (including non-breaking spaces) before and after the
3470         leading punctuation, and before the trailing punctuation.
3471
3472         Test: fast/css/first-letter-punctuation.html
3473
3474         * rendering/RenderBlock.cpp:
3475         (WebCore::isPunctuationForFirstLetter):
3476         (WebCore::shouldSkipForFirstLetter):
3477         (WebCore::RenderBlock::updateFirstLetter):
3478
3479 2010-10-06  Sanjeev Radhakrishnan  <sanjeevr@chromium.org>
3480
3481         Reviewed by Darin Fisher.
3482
3483         Released the pluginNode in PluginDocument::detach() and prevents a memory leak.
3484         https://bugs.webkit.org/show_bug.cgi?id=47129
3485
3486         * html/PluginDocument.cpp:
3487         (WebCore::PluginDocument::detach):
3488         * html/PluginDocument.h:
3489
3490 2010-10-06  Vincent Scheib  <scheib@chromium.org>
3491
3492         Reviewed by Kenneth Russell.
3493
3494         [chromium] Thumbnail generation asserts on zero alpha values.
3495         https://bugs.webkit.org/show_bug.cgi?id=47292
3496
3497         Test: Tested manually by running debug mode, and analyzing in PIX.
3498
3499         * platform/graphics/chromium/LayerRendererChromium.cpp:
3500         (WebCore::LayerRendererChromium::drawLayers):
3501
3502 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
3503
3504         Unreviewed, trying to fix chromium Windows build.
3505
3506         Explicitly give the parameter value that has a default parameter value.
3507
3508         * page/DOMWindow.cpp:
3509         (WebCore::DOMWindow::requestFileSystem):
3510         * workers/WorkerContext.cpp:
3511         (WebCore::WorkerContext::requestFileSystem):
3512
3513 2010-10-06  Darin Adler  <darin@apple.com>
3514
3515         Try to fix Windows build.
3516
3517         * platform/graphics/cg/ColorCG.cpp:
3518         (WebCore::cachedCGColor): Put in braces to make the Windows compiler
3519         happy with this file.
3520
3521         * platform/graphics/cg/ImageCG.cpp: Added include of RetainPtr.h.
3522
3523 2010-10-06  Darin Adler  <darin@apple.com>
3524
3525         Reviewed by Alexey Proskuryakov.
3526
3527         Cache CGColor as we do NSColor
3528         https://bugs.webkit.org/show_bug.cgi?id=47226
3529
3530         This fixes performance problems on certain web pages that use
3531         multiple colors. Once in the past we were using NSColor. Now that
3532         we are using CGColor, we need the same sort of caching that we have
3533         for NSColor.
3534
3535         One example: <http://results.active.com/uploads/html/100759.html>.
3536
3537         * WebCore.xcodeproj/project.pbxproj: Add GraphicsContextCG.h.
3538
3539         * platform/graphics/Color.h: Replace createCGColor with cachedCGColor.
3540
3541         * platform/graphics/cg/ColorCG.cpp:
3542         (WebCore::cachedCGColorSpace): Added.
3543         (WebCore::leakCGColor): Added. 
3544         (WebCore::cachedCGColor): Added.
3545
3546         * platform/graphics/cg/GraphicsContextCG.cpp:
3547         (WebCore::setCGFillColor): Use cachedCGColor.
3548         (WebCore::setCGStrokeColor): Ditto.
3549         (WebCore::GraphicsContext::fillRect): Ditto.
3550         (WebCore::GraphicsContext::setPlatformShadow): Ditto.
3551
3552         * platform/graphics/cg/GraphicsContextCG.h: Added.
3553         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
3554         Moved the color space functions here.
3555
3556         * platform/graphics/cg/ImageCG.cpp: Tweaked headers and formatting.
3557
3558         * platform/graphics/mac/ColorMac.mm: Removed the createCGColor
3559         function.
3560
3561         * platform/graphics/mac/GraphicsContextMac.mm:
3562         (WebCore::drawFocusRingToContext): Removed innappropriate use of
3563         RetainPtr for the arguments to this function.
3564         (WebCore::GraphicsContext::drawFocusRing): Use cachedCGColor.
3565
3566         * platform/graphics/mac/GraphicsLayerCA.mm:
3567         (WebCore::setLayerBorderColor): Use cachedCGColor.
3568         (WebCore::setLayerBackgroundColor): Ditto.
3569         * platform/graphics/win/GraphicsContextCGWin.cpp:
3570         (WebCore::GraphicsContext::drawFocusRing): Ditto.
3571         * platform/graphics/win/GraphicsLayerCACF.cpp:
3572         (WebCore::setLayerBorderColor): Ditto.
3573         (WebCore::setLayerBackgroundColor): Ditto.
3574
3575         * platform/graphics/win/WKCACFLayerRenderer.cpp:
3576         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Use
3577         CGColorCreateGenericRGB for color used only for debugging.
3578         * platform/graphics/win/WebTiledLayer.cpp:
3579         (WebCore::WebTiledLayer::addTile): Ditto.
3580
3581 2010-10-06  Peter Kasting  <pkasting@google.com>
3582
3583         Reviewed by James Robinson
3584
3585         ScrollViews without scrollbars should not eat scroll events
3586         https://bugs.webkit.org/show_bug.cgi?id=47036
3587
3588         * platform/ScrollView.cpp:
3589         (WebCore::ScrollView::wheelEvent):
3590
3591 2010-10-06  Daniel Bates  <dbates@rim.com>
3592
3593         Reviewed by Darin Adler.
3594
3595         ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet
3596         when <frameset> has CSS content property
3597         https://bugs.webkit.org/show_bug.cgi?id=47314
3598
3599         Fixes an issue where sending a mouse event to an HTML Frameset Element that
3600         whose content was replaced via the CSS content property causes an assertion
3601         failure.
3602
3603         By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as
3604         to support resizing a frame within the set. When a <frameset> specifies an
3605         image in its CSS content property we create a generic render object (RenderObject)
3606         for the frame set instead of a RenderFrameSet object. The event handler code
3607         in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer
3608         to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement
3609         must check that its renderer is of type RenderFrameSet before casting to this type.
3610
3611         Test: fast/frames/crash-frameset-CSS-content-property.html
3612
3613         * html/HTMLFrameSetElement.cpp:
3614         (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is
3615         of type RenderFrameSet before casting it as such.
3616
3617 2010-10-06  Albert J. Wong  <ajwong@chromium.org>
3618
3619         Reviewed by Andreas Kling.
3620
3621         r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false.
3622         https://bugs.webkit.org/show_bug.cgi?id=47315
3623
3624         Compile fix. No tests.
3625
3626         * platform/graphics/filters/FETile.cpp:
3627         (WebCore::FETile::apply):
3628
3629 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
3630
3631         Unreviewed, fixing screwed up ChangeLogs.
3632
3633 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
3634
3635         Reviewed by David Levin.
3636
3637         Add FileSystemSync implementation for Worker
3638         https://bugs.webkit.org/show_bug.cgi?id=47044
3639
3640         Tests: fast/filesystem/async-operations.html
3641                fast/filesystem/workers/async-operations.html
3642                fast/filesystem/workers/sync-operations.html
3643
3644         * GNUmakefile.am:
3645         * WebCore.gypi:
3646         * WebCore.pro:
3647         * WebCore.vcproj/WebCore.vcproj:
3648         * WebCore.xcodeproj/project.pbxproj:
3649         * bindings/generic/RuntimeEnabledFeatures.h: Removed
3650         requestFileSystemEnabled() as I changed the idl/generator to
3651         use fileSystemEnabled for all the FileSystem related features.
3652         * fileapi/DOMFileSystem.cpp:
3653         * fileapi/DOMFileSystem.h:
3654         * fileapi/DOMFileSystemBase.cpp:
3655         (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem.
3656         (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem.
3657         (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem.
3658         (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem.
3659         (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem.
3660         (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem.
3661         (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem.
3662         (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem.
3663         (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem.
3664         * fileapi/DOMFileSystemBase.h:
3665         * fileapi/DOMFileSystemSync.h:
3666         * fileapi/DirectoryEntry.cpp:
3667         (WebCore::DirectoryEntry::DirectoryEntry): Updated to call
3668         DOMFileSystemBase's method instead of DOMFileSystem's one.
3669         (WebCore::DirectoryEntry::getFile): Ditto.
3670         (WebCore::DirectoryEntry::getDirectory): Ditto.
3671         * fileapi/DirectoryEntry.h:
3672         * fileapi/DirectoryEntrySync.cpp:
3673         (WebCore::DirectoryEntrySync::getFile): Implemented.
3674         (WebCore::DirectoryEntrySync::getDirectory): Implemented.
3675         * fileapi/DirectoryReader.h:
3676         * fileapi/DirectoryReaderSync.cpp:
3677         (WebCore::DirectoryReaderSync::readEntries): Implemented.
3678         * fileapi/Entry.cpp:
3679         (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method.
3680         (WebCore::Entry::getMetadata): Ditto.
3681         (WebCore::Entry::moveTo): Ditto.
3682         (WebCore::Entry::copyTo): Ditto.
3683         (WebCore::Entry::remove): Ditto.
3684         (WebCore::Entry::getParent): Ditto.
3685         * fileapi/Entry.h:
3686         * fileapi/Entry.idl:
3687         * fileapi/EntryArraySync.cpp:
3688         (WebCore::EntryArraySync::create): Added.
3689         * fileapi/EntryArraySync.h:
3690         * fileapi/EntryBase.h:
3691         (WebCore::EntryBase::filesystem): Added.
3692         * fileapi/EntrySync.cpp:
3693         (WebCore::EntrySync::create): Implemented.
3694         (WebCore::EntrySync::getMetadata): Implemented.
3695         (WebCore::EntrySync::moveTo): Implemented.
3696         (WebCore::EntrySync::copyTo): Implemented.
3697         (WebCore::EntrySync::remove): Implemented.
3698         * fileapi/EntrySync.h:
3699         * fileapi/FileEntry.cpp:
3700         * fileapi/FileEntry.h:
3701         * fileapi/FileSystemCallbacks.cpp:
3702         (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase
3703         instead of DOMFileSystem.
3704         (WebCore::EntryCallbacks::EntryCallbacks): Ditto.
3705         (WebCore::EntriesCallbacks::create): Ditto.
3706         (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
3707         * fileapi/FileSystemCallbacks.h:
3708         * fileapi/LocalFileSystem.cpp:
3709         (WebCore::LocalFileSystem::requestFileSystem): Added synchronous
3710         parameter.
3711         * fileapi/LocalFileSystem.h:
3712         * fileapi/Metadata.h:
3713         * fileapi/SyncCallbackHelper.h: Added. This defines a helper template
3714         for synchronous implementation.
3715         * page/DOMWindow.idl:
3716         * platform/AsyncFileSystem.h:
3717         (WebCore::AsyncFileSystem::waitCompletion): Added.
3718         * workers/WorkerContext.cpp:
3719         (WebCore::WorkerContext::requestFileSystemSync): Added.
3720         * workers/WorkerContext.h:
3721         * workers/WorkerContext.idl:
3722
3723 2010-10-06  Andrei Popescu  <andreip@google.com>
3724
3725         Reviewed by Jeremy Orlow.
3726
3727         IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts.
3728         https://bugs.webkit.org/show_bug.cgi?id=47245
3729
3730         Recover metadata properly by adding abort tasks that
3731         are run when a transaction aborts.
3732  
3733         * storage/IDBDatabase.cpp:
3734         (WebCore::IDBDatabase::createObjectStore):
3735         (WebCore::IDBDatabase::removeObjectStore):
3736         * storage/IDBDatabaseBackendImpl.cpp:
3737         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
3738         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
3739         (WebCore::IDBDatabaseBackendImpl::setVersion):
3740         (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):
3741         (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap):
3742         (WebCore::IDBDatabaseBackendImpl::resetVersion):
3743         * storage/IDBDatabaseBackendImpl.h:
3744         * storage/IDBObjectStoreBackendImpl.cpp:
3745         (WebCore::IDBObjectStoreBackendImpl::createIndex):
3746         (WebCore::IDBObjectStoreBackendImpl::removeIndex):
3747         (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap):
3748         (WebCore::IDBObjectStoreBackendImpl::addIndexToMap):
3749         * storage/IDBObjectStoreBackendImpl.h:
3750         * storage/IDBTransactionBackendImpl.cpp:
3751         (WebCore::IDBTransactionBackendImpl::scheduleTask):
3752         (WebCore::IDBTransactionBackendImpl::abort):
3753         * storage/IDBTransactionBackendImpl.h:
3754         * storage/IDBTransactionBackendInterface.h:
3755         * storage/IDBTransactionCoordinator.h:
3756
3757 2010-10-06  David Hyatt  <hyatt@apple.com>
3758
3759         Reviewed by Dan Bernstein.
3760
3761         https://bugs.webkit.org/show_bug.cgi?id=47306
3762         
3763         Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware.
3764
3765         * rendering/RenderBlockLineLayout.cpp:
3766         (WebCore::RenderBlock::determineStartPosition):
3767         (WebCore::RenderBlock::determineEndPosition):
3768         (WebCore::RenderBlock::matchedEndLine):
3769
3770 22010-10-06  Chris Fleizach  <cfleizach@apple.com>
3771
3772         Reviewed by Beth Dakin.
3773
3774         REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks.
3775         https://bugs.webkit.org/show_bug.cgi?id=45832
3776
3777         Test: fast/events/mouse-focus-imagemap.html
3778
3779         * html/HTMLAreaElement.cpp:
3780         (WebCore::HTMLAreaElement::isKeyboardFocusable):
3781         (WebCore::HTMLAreaElement::isMouseFocusable):
3782         (WebCore::HTMLAreaElement::isFocusable):
3783         (WebCore::HTMLAreaElement::updateFocusAppearance):
3784         * html/HTMLAreaElement.h:
3785
3786 010-10-06  David Hyatt  <hyatt@apple.com>
3787
3788         Reviewed by Dan Bernstein.
3789
3790         https://bugs.webkit.org/show_bug.cgi?id=47303
3791
3792         Convert layoutInlineChildren to be block-flow-aware.  None of the functions it calls are patched yet.
3793
3794         * rendering/RenderBlock.cpp:
3795         (WebCore::RenderBlock::layoutBlock):
3796         * rendering/RenderBlock.h:
3797         (WebCore::RenderBlock::forceLayoutInlineChildren):
3798         * rendering/RenderBlockLineLayout.cpp:
3799         (WebCore::RenderBlock::layoutInlineChildren):
3800         (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
3801         (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
3802         (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
3803         (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
3804         * rendering/RenderBox.h:
3805         (WebCore::RenderBox::logicalLeftLayoutOverflow):
3806         (WebCore::RenderBox::logicalRightLayoutOverflow):
3807         (WebCore::RenderBox::logicalLeftVisualOverflow):
3808         (WebCore::RenderBox::logicalRightVisualOverflow):
3809
3810 2010-10-06  David Hyatt  <hyatt@apple.com>
3811
3812         Reviewed by Dan Bernstein.
3813
3814         https://bugs.webkit.org/show_bug.cgi?id=47298
3815         
3816         Rename blockHeight to blockLogicalHeight.
3817
3818         * rendering/RenderBlock.cpp:
3819         (WebCore::RenderBlock::markLinesDirtyInBlockRange):
3820         * rendering/RenderBlockLineLayout.cpp:
3821         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
3822         (WebCore::RenderBlock::layoutInlineChildren):
3823         (WebCore::RenderBlock::determineStartPosition):
3824         (WebCore::RenderBlock::determineEndPosition):
3825         (WebCore::RenderBlock::matchedEndLine):
3826         * rendering/RootInlineBox.cpp:
3827         (WebCore::RootInlineBox::RootInlineBox):
3828         (WebCore::RootInlineBox::adjustPosition):
3829         * rendering/RootInlineBox.h:
3830         (WebCore::RootInlineBox::blockLogicalHeight):
3831         (WebCore::RootInlineBox::setBlockLogicalHeight):
3832         * rendering/svg/SVGRootInlineBox.cpp:
3833         (WebCore::SVGRootInlineBox::layoutRootBox):
3834
3835 2010-10-05  James Robinson  <jamesr@chromium.org>
3836
3837         Reviewed by Kenneth Russell.
3838
3839         [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia
3840         https://bugs.webkit.org/show_bug.cgi?id=47242
3841
3842         Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData
3843         since that call mutates the software backing store.
3844
3845         Test: fast/canvas/canvas-putImageData.html
3846
3847         * platform/graphics/skia/ImageBufferSkia.cpp:
3848         (WebCore::ImageBuffer::putUnmultipliedImageData):
3849
3850 2010-10-06  Alexey Proskuryakov  <ap@apple.com>
3851
3852         Reviewed by Brady Eidson.
3853
3854         https://bugs.webkit.org/show_bug.cgi?id=47294
3855         <rdar://problem/8425647>Application cache isn't consulted on redirect
3856
3857         Test: http/tests/appcache/main-resource-redirect.html
3858
3859         * loader/MainResourceLoader.cpp:
3860         (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now
3861         (presumably after a redirect is served by appcache), switch to it.
3862         (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL.
3863
3864         * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest
3865         reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now.
3866
3867 2010-10-06  Alejandro G. Castro  <alex@igalia.com>
3868
3869         Reviewed by Dirk Schulze.
3870
3871         ContextShadow should not use the blur radius as kernel size of the
3872         box blurs
3873         https://bugs.webkit.org/show_bug.cgi?id=46918
3874
3875         Calculate the size of the kernel in the blur algorithm using the radius instead
3876         of using the blur distance directly. Change the name of the variables to match the
3877         terminology in the spec.
3878
3879         * platform/graphics/ContextShadow.cpp:
3880         (WebCore::ContextShadow::ContextShadow):
3881         (WebCore::ContextShadow::clear):
3882         (WebCore::ContextShadow::blurLayerImage):
3883         (WebCore::ContextShadow::calculateLayerBoundingRect):
3884         * platform/graphics/ContextShadow.h:
3885
3886 2010-10-06  Andras Becsi  <abecsi@webkit.org>
3887
3888         Reviewed by Kenneth Rohde Christiansen.
3889
3890         [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate 
3891         to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests.
3892         https://bugs.webkit.org/show_bug.cgi?id=47284
3893
3894         No new tests needed.
3895
3896         * platform/network/qt/SocketStreamHandlePrivate.h:
3897         * platform/network/qt/SocketStreamHandleQt.cpp:
3898         (WebCore::SocketStreamHandlePrivate::socketSentData):
3899
3900 2010-10-06  David Hyatt  <hyatt@apple.com>
3901
3902         Reviewed by Dan Bernstein.
3903
3904         https://bugs.webkit.org/show_bug.cgi?id=47285
3905
3906         Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
3907         Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
3908         as appropriate.
3909
3910         * css/CSSComputedStyleDeclaration.cpp:
3911         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3912         * css/CSSParser.cpp:
3913         (WebCore::CSSParser::parseValue):
3914         * css/CSSPrimitiveValueMappings.h:
3915         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3916         (WebCore::CSSPrimitiveValue::operator WritingMode):
3917         (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
3918         * css/CSSProperty.cpp:
3919         (WebCore::resolveToPhysicalProperty):
3920         (WebCore::CSSProperty::resolveDirectionAwareProperty):
3921         * css/CSSProperty.h:
3922         * css/CSSPropertyNames.in:
3923         * css/CSSStyleSelector.cpp:
3924         (WebCore::CSSStyleSelector::styleForDocument):
3925         (WebCore::CSSStyleSelector::adjustRenderStyle):
3926         (WebCore::CSSStyleSelector::applyDeclarations):
3927         (WebCore::CSSStyleSelector::applyProperty):
3928         * css/CSSValueKeywords.in:
3929         * rendering/RenderBlock.cpp:
3930         (WebCore::RenderBlock::MarginInfo::MarginInfo):
3931         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
3932         (WebCore::RenderBlock::setLogicalLeftForChild):
3933         (WebCore::RenderBlock::setLogicalTopForChild):
3934         (WebCore::RenderBlock::layoutBlockChild):
3935         (WebCore::RenderBlock::insertFloatingObject):
3936         (WebCore::RenderBlock::addOverhangingFloats):
3937         (WebCore::RenderBlock::addIntrudingFloats):
3938         (WebCore::RenderBlock::collapsedMarginBeforeForChild):
3939         (WebCore::RenderBlock::collapsedMarginAfterForChild):
3940         (WebCore::RenderBlock::marginBeforeForChild):
3941         (WebCore::RenderBlock::marginAfterForChild):
3942         (WebCore::RenderBlock::marginStartForChild):
3943         (WebCore::RenderBlock::marginEndForChild):
3944         (WebCore::RenderBlock::setMarginStartForChild):
3945         (WebCore::RenderBlock::setMarginEndForChild):
3946         (WebCore::RenderBlock::setMarginBeforeForChild):
3947         (WebCore::RenderBlock::setMarginAfterForChild):
3948         (WebCore::RenderBlock::marginValuesForChild):
3949         * rendering/RenderBlock.h:
3950         (WebCore::RenderBlock::logicalWidthForChild):
3951         (WebCore::RenderBlock::logicalHeightForChild):
3952         (WebCore::RenderBlock::logicalTopForChild):
3953         (WebCore::RenderBlock::logicalRightOffsetForContent):
3954         (WebCore::RenderBlock::logicalLeftOffsetForContent):
3955         (WebCore::RenderBlock::logicalTopForFloat):
3956         (WebCore::RenderBlock::logicalBottomForFloat):
3957         (WebCore::RenderBlock::logicalLeftForFloat):
3958         (WebCore::RenderBlock::logicalRightForFloat):
3959         (WebCore::RenderBlock::logicalWidthForFloat):
3960         (WebCore::RenderBlock::setLogicalTopForFloat):
3961         (WebCore::RenderBlock::setLogicalLeftForFloat):
3962         (WebCore::RenderBlock::setLogicalHeightForFloat):
3963         (WebCore::RenderBlock::setLogicalWidthForFloat):
3964         * rendering/RenderBox.cpp:
3965         (WebCore::RenderBox::marginBefore):
3966         (WebCore::RenderBox::marginAfter):
3967         (WebCore::RenderBox::marginStart):
3968         (WebCore::RenderBox::marginEnd):
3969         (WebCore::RenderBox::setMarginStart):
3970         (WebCore::RenderBox::setMarginEnd):
3971         (WebCore::RenderBox::setMarginBefore):
3972         (WebCore::RenderBox::setMarginAfter):
3973         (WebCore::RenderBox::styleDidChange):
3974         (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
3975         (WebCore::RenderBox::computeLogicalWidth):
3976         (WebCore::RenderBox::computeLogicalHeight):
3977         (WebCore::RenderBox::availableLogicalHeightUsing):
3978         (WebCore::RenderBox::avoidsFloats):
3979         * rendering/RenderBox.h:
3980         (WebCore::RenderBox::logicalLeft):
3981         (WebCore::RenderBox::logicalTop):
3982         (WebCore::RenderBox::logicalWidth):
3983         (WebCore::RenderBox::logicalHeight):
3984         (WebCore::RenderBox::setLogicalLeft):
3985         (WebCore::RenderBox::setLogicalTop):
3986         (WebCore::RenderBox::setLogicalWidth):
3987         (WebCore::RenderBox::setLogicalHeight):
3988         (WebCore::RenderBox::setLogicalLocation):
3989         (WebCore::RenderBox::contentLogicalWidth):
3990         (WebCore::RenderBox::contentLogicalHeight):
3991         (WebCore::RenderBox::stretchesToViewport):
3992         (WebCore::RenderBox::intrinsicLogicalWidth):
3993         (WebCore::RenderBox::intrinsicLogicalHeight):
3994         (WebCore::RenderBox::availableWidth):
3995         (WebCore::RenderBox::availableHeight):
3996         (WebCore::RenderBox::scrollbarLogicalHeight):
3997         (WebCore::RenderBox::isWritingModeRoot):
3998         * rendering/RenderFieldset.cpp:
3999         (WebCore::RenderFieldset::paintBoxDecorations):
4000         (WebCore::RenderFieldset::paintMask):
4001         * rendering/RenderImage.cpp:
4002         (WebCore::RenderImage::computeReplacedLogicalWidth):
4003         (WebCore::RenderImage::computeReplacedLogicalHeight):
4004         * rendering/RenderInline.cpp:
4005         (WebCore::RenderInline::marginLeft):
4006         (WebCore::RenderInline::marginRight):
4007         (WebCore::RenderInline::marginTop):
4008         (WebCore::RenderInline::marginBottom):
4009         * rendering/RenderTableCell.cpp:
4010         (WebCore::RenderTableCell::paddingTop):
4011         (WebCore::RenderTableCell::paddingBottom):
4012         (WebCore::RenderTableCell::paddingLeft):
4013         (WebCore::RenderTableCell::paddingRight):
4014         * rendering/RenderView.h:
4015         (WebCore::RenderView::viewLogicalWidth):
4016         (WebCore::RenderView::viewLogicalHeight):
4017         * rendering/RootInlineBox.cpp:
4018         (WebCore::RootInlineBox::RootInlineBox):
4019         * rendering/style/RenderStyle.cpp:
4020         (WebCore::RenderStyle::diff):
4021         (WebCore::RenderStyle::logicalWidth):
4022         (WebCore::RenderStyle::logicalHeight):
4023         (WebCore::RenderStyle::logicalMinWidth):
4024         (WebCore::RenderStyle::logicalMaxWidth):
4025         (WebCore::RenderStyle::logicalMinHeight):
4026         (WebCore::RenderStyle::logicalMaxHeight):
4027         (WebCore::RenderStyle::borderBeforeWidth):
4028         (WebCore::RenderStyle::borderAfterWidth):
4029         (WebCore::RenderStyle::borderStartWidth):
4030         (WebCore::RenderStyle::borderEndWidth):
4031         (WebCore::RenderStyle::marginBefore):
4032         (WebCore::RenderStyle::marginAfter):
4033         (WebCore::RenderStyle::marginBeforeUsing):
4034         (WebCore::RenderStyle::marginAfterUsing):
4035         (WebCore::RenderStyle::marginStart):
4036         (WebCore::RenderStyle::marginEnd):
4037         (WebCore::RenderStyle::marginStartUsing):
4038         (WebCore::RenderStyle::marginEndUsing):
4039         (WebCore::RenderStyle::paddingBefore):
4040         (WebCore::RenderStyle::paddingAfter):
4041         (WebCore::RenderStyle::paddingStart):
4042         (WebCore::RenderStyle::paddingEnd):
4043         * rendering/style/RenderStyle.h:
4044         (WebCore::InheritedFlags::setBitDefaults):
4045         (WebCore::InheritedFlags::writingMode):
4046         (WebCore::InheritedFlags::isHorizontalWritingMode):
4047         (WebCore::InheritedFlags::setWritingMode):
4048         (WebCore::InheritedFlags::initialWritingMode):
4049         * rendering/style/RenderStyleConstants.h:
4050         * rendering/style/SVGRenderStyle.h:
4051         (WebCore::SVGRenderStyle::initialWritingMode):
4052         (WebCore::SVGRenderStyle::setWritingMode):
4053         (WebCore::SVGRenderStyle::writingMode):
4054         * rendering/style/SVGRenderStyleDefs.h:
4055
4056 2010-10-06  Sheriff Bot  <webkit.review.bot@gmail.com>
4057
4058         Unreviewed, rolling out r69201.
4059         http://trac.webkit.org/changeset/69201
4060         https://bugs.webkit.org/show_bug.cgi?id=47279
4061
4062         This change broke the WebKitGTK+ build for GTK+ 2.0.
4063         (Requested by mrobinson on #webkit).
4064
4065         * platform/gtk/GtkVersioning.c:
4066         (getDefaultGDKPointerDevice):
4067         * platform/gtk/GtkVersioning.h:
4068         * platform/gtk/PlatformScreenGtk.cpp:
4069         (WebCore::getVisual):
4070         (WebCore::screenAvailableRect):
4071
4072 2010-10-06  Stephen White  <senorblanco@chromium.org>
4073
4074         Reviewed by James Robinson.
4075         https://bugs.webkit.org/show_bug.cgi?id=47282
4076
4077         Robustify the creation of SharedGraphicsContext3D against shader
4078         compilation failures.
4079
4080         Covered by any canvas 2D layout test, when opened in chrome with 
4081         --enable-accelerated-2d-canvas --in-process-webgl.
4082
4083         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
4084         (WebCore::SharedGraphicsContext3D::create):
4085         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
4086         * platform/graphics/gpu/SharedGraphicsContext3D.h:
4087
4088 2010-10-06  Luiz Agostini  <luiz.agostini@openbossa.org>
4089
4090         Reviewed by Kenneth Rohde Christiansen.
4091
4092         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
4093         https://bugs.webkit.org/show_bug.cgi?id=47268
4094
4095         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
4096
4097         * dom/ViewportArguments.cpp:
4098         (WebCore::findConfigurationForViewportData):
4099         * dom/ViewportArguments.h:
4100
4101 2010-10-06  Renata Hodovan  <reni@inf.u-szeged.hu>
4102
4103         Reviewed by Nikolas Zimmermann.
4104
4105         SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change.
4106         https://bugs.webkit.org/show_bug.cgi?id=47181
4107
4108         Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent.
4109
4110         Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html
4111                svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html
4112
4113         * svg/SVGFEMergeNodeElement.cpp:
4114         (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
4115         * svg/SVGFEMergeNodeElement.h:
4116
4117 2010-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
4118
4119         Reviewed by Martin Robinson.
4120
4121         [GTK] Remove unused code from gtk2drawing.c
4122         https://bugs.webkit.org/show_bug.cgi?id=47086
4123
4124         gtk2drawing.c was copied from mozilla and contains a lot of code that is not
4125         used by WebKit. Most of that unused code is uncompatible with gtk3, so
4126         removing it will make easier porting to gtk3.
4127
4128         * platform/gtk/gtk2drawing.c:
4129         (moz_gtk_get_widget_border):
4130         (moz_gtk_widget_paint):
4131         (moz_gtk_destroy_theme_parts_widgets):
4132         * platform/gtk/gtkdrawing.h:
4133
4134 2010-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
4135
4136         Reviewed by Xan Lopez.
4137
4138         [GTK] Use pixbufs instead of pixmaps when creating platform cursors
4139         https://bugs.webkit.org/show_bug.cgi?id=47087
4140
4141         gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a
4142         pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead
4143         for both gtk2 and gtk3.
4144
4145         * platform/gtk/CursorGtk.cpp:
4146         (WebCore::createNamedCursor):
4147         * platform/gtk/GtkVersioning.c:
4148         (gdk_cairo_format_for_content):
4149         (gdk_cairo_surface_coerce_to_image):
4150         (convert_alpha):
4151         (convert_no_alpha):
4152         (gdk_pixbuf_get_from_surface):
4153         * platform/gtk/GtkVersioning.h:
4154
4155 2010-10-06  Pavel Podivilov  <podivilov@chromium.org>
4156
4157         Reviewed by Yury Semikhatsky.
4158
4159         Web Inspector: add event listener breakpoints sidebar pane
4160         https://bugs.webkit.org/show_bug.cgi?id=46738
4161
4162         * inspector/front-end/BreakpointManager.js:
4163         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
4164         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo):
4165         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
4166         (WebInspector.NativeBreakpoint):
4167         (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet):
4168         (WebInspector.NativeBreakpoint.prototype._setOnBackend):
4169         * inspector/front-end/BreakpointsSidebarPane.js:
4170         (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
4171         (WebInspector.BreakpointItem):
4172         (WebInspector.EventListenerBreakpointsSidebarPane):
4173         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
4174         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox):
4175         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
4176         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked):
4177         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged):
4178         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
4179         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
4180         * inspector/front-end/EventListenersSidebarPane.js:
4181         ():
4182         * inspector/front-end/PropertiesSection.js:
4183         (WebInspector.PropertiesSection):
4184         * inspector/front-end/ScriptsPanel.js:
4185         (WebInspector.ScriptsPanel):
4186         (WebInspector.ScriptsPanel.prototype.reset):
4187         * inspector/front-end/inspector.css:
4188         (.section .properties, .event-bar .event-properties):
4189         (.section.expanded .properties, .event-bar.expanded .event-properties):
4190         (ol.properties-tree):
4191         (ol.properties-tree li):
4192         (ol.properties-tree li.parent):
4193         (ol.properties-tree li.parent::before):
4194         (ol.properties-tree li.parent.expanded::before):
4195         (ol.properties-tree li .info):
4196         (ol.properties-tree ol, .stack-trace ol, ol.stack-trace):
4197         (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
4198         (ol.stack-trace):
4199         (.event-listener-breakpoints .event-category):
4200         (ol.event-listener-breakpoints.properties-tree .children li):
4201         (.event-listener-breakpoints .checkbox-elem):
4202         * inspector/front-end/inspector.js:
4203         (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):