2010-10-08 Ryosuke Niwa <rniwa@webkit.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-10-08  Ryosuke Niwa  <rniwa@webkit.org>
2
3         Reviewed by Darin Adler.
4
5         Redo in ReplaceNodeWithSpanCommand is broken
6         https://bugs.webkit.org/show_bug.cgi?id=47428
7
8         The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand,
9         and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply
10         directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply
11         only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op.
12
13         Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand.
14         This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation.
15
16         Test: editing/undo/replace-by-span-then-remove.html
17
18         * editing/ApplyStyleCommand.h:
19         (WebCore::ApplyStyleCommand::printStyle):
20         * editing/ReplaceNodeWithSpanCommand.cpp:
21         (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
22         * editing/ReplaceNodeWithSpanCommand.h:
23
24 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
25
26         Reviewed by Martin Robinson.
27
28         [GTK] Implement subregion rendering in WebView when using gtk3
29         https://bugs.webkit.org/show_bug.cgi?id=47411
30
31         * GNUmakefile.am:
32         * platform/graphics/FloatRect.h:
33         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
34         (WebCore::FloatRect::FloatRect):
35         (WebCore::FloatRect::operator cairo_rectangle_t):
36
37 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
38
39         Reviewed by Martin Robinson.
40
41         [GTK] Implement subregion rendering in WebView when using gtk3
42         https://bugs.webkit.org/show_bug.cgi?id=47411
43
44         * GNUmakefile.am:
45         * platform/graphics/FloatRect.h:
46         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
47         (WebCore::FloatRect::FloatRect):
48         (WebCore::FloatRect::operator cairo_rectangle_t):
49
50 2010-10-09  Kwang Yul Seo  <skyul@company100.net>
51
52         Reviewed by Andreas Kling.
53
54         Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture
55         https://bugs.webkit.org/show_bug.cgi?id=47114
56
57         PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS).
58
59         * platform/graphics/skia/PlatformContextSkia.h:
60
61 2010-10-09  Patrick Gansterer  <paroga@webkit.org>
62
63         Reviewed by Adam Barth.
64
65         Use WTF::StringHasher for hashing MappedAttributeKey
66         https://bugs.webkit.org/show_bug.cgi?id=46516
67
68         * dom/StyledElement.cpp:
69         (WebCore::MappedAttributeHash::hash):
70
71 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
72
73         Reviewed by Xan Lopez.
74
75         [Gtk] Non-rectangular buttons have a square background behind them
76         https://bugs.webkit.org/show_bug.cgi?id=23569
77
78         Remove some code which was clearing pieces of the GdkDrawable if it was
79         currently mapped to a window. In our case it is unnecessary, because the
80         platform-independent parts of the render have already cleared this section
81         if it is needed.
82
83         Mozilla must not trip this code path, which means they are probably rendering
84         most often to a non-mapped GdkPixmap.
85
86         No new tests as some themed rendering is covered by existing tests that
87         render buttons. This particular bug is very hard to test as it only appears
88         with certain GTK+ themes and we currently have no mechanism to test different
89         themes in DRT.
90
91         * platform/gtk/gtk2drawing.c:
92         (moz_gtk_button_paint): Remove unnecessary code.
93
94 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
95
96         Reviewed by Xan Lopez.
97
98         [GTK] Slider padding translate into a larger track rect
99         https://bugs.webkit.org/show_bug.cgi?id=47435
100
101         Instead of painting the track rectangle for ranges onto the entire RenderBox
102         rectangle, simply paint it on the content rectangle. This prevents misrendering
103         sliders with padding.
104
105         * platform/gtk/RenderThemeGtk.cpp:
106         (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect
107         of the slider instead of the entire area (which includes padding).
108
109 2010-10-09  Kent Tamura  <tkent@chromium.org>
110
111         Unreviewed, trivial regression fix for r69445.
112
113         RangeInputType::supportsRequired() should return false.
114         https://bugs.webkit.org/show_bug.cgi?id=47405
115
116         * html/RangeInputType.cpp:
117         (WebCore::RangeInputType::supportsRequired):
118         * html/RangeInputType.h:
119
120 2010-10-09  Kent Tamura  <tkent@chromium.org>
121
122         Reviewed by Dimitri Glazkov.
123
124         Refactor HTMLInputElement: Move typeMismatch(), valueMissing(),
125         isRequiredFormControl(), and recalcWillValidate()
126         https://bugs.webkit.org/show_bug.cgi?id=47405
127
128         Also make checkedRadioButtons() an inline member function of
129         HTMLInputElement in order that RadioInputType can use it.
130
131         * html/BaseDateAndTimeInputType.cpp:
132         (WebCore::BaseDateAndTimeInputType::typeMismatchFor):
133         (WebCore::BaseDateAndTimeInputType::typeMismatch):
134         * html/BaseDateAndTimeInputType.h:
135         * html/ButtonInputType.cpp:
136         (WebCore::ButtonInputType::supportsValidation):
137         * html/ButtonInputType.h:
138         * html/CheckboxInputType.cpp:
139         (WebCore::CheckboxInputType::valueMissing):
140         * html/CheckboxInputType.h:
141         * html/ColorInputType.cpp:
142         (WebCore::isValidColorString):
143         (WebCore::ColorInputType::typeMismatchFor):
144         (WebCore::ColorInputType::typeMismatch):
145         (WebCore::ColorInputType::supportsRequired):
146         * html/ColorInputType.h:
147         * html/EmailInputType.cpp:
148         (WebCore::isValidEmailAddress):
149         (WebCore::EmailInputType::typeMismatchFor):
150         (WebCore::EmailInputType::typeMismatch):
151         * html/EmailInputType.h:
152         * html/FileInputType.cpp:
153         (WebCore::FileInputType::valueMissing):
154         * html/FileInputType.h:
155         * html/HTMLInputElement.cpp:
156         (WebCore::HTMLInputElement::updateCheckedRadioButtons):
157         (WebCore::HTMLInputElement::isValidValue):
158         (WebCore::HTMLInputElement::typeMismatch):
159         (WebCore::HTMLInputElement::valueMissing):
160         (WebCore::HTMLInputElement::isKeyboardFocusable):
161         (WebCore::HTMLInputElement::updateType):
162         (WebCore::HTMLInputElement::parseMappedAttribute):
163         (WebCore::HTMLInputElement::setChecked):
164         (WebCore::HTMLInputElement::preDispatchEventHandler):
165         (WebCore::HTMLInputElement::isRequiredFormControl):
166         (WebCore::HTMLInputElement::recalcWillValidate):
167         * html/HTMLInputElement.h:
168         (WebCore::HTMLInputElement::checkedRadioButtons):
169         * html/HiddenInputType.cpp:
170         (WebCore::HiddenInputType::supportsValidation):
171         * html/HiddenInputType.h:
172         * html/ImageInputType.cpp:
173         (WebCore::ImageInputType::supportsValidation):
174         * html/ImageInputType.h:
175         * html/InputType.cpp:
176         (WebCore::InputType::supportsValidation):
177         (WebCore::InputType::typeMismatchFor):
178         (WebCore::InputType::typeMismatch):
179         (WebCore::InputType::supportsRequired):
180         (WebCore::InputType::valueMissing):
181         * html/InputType.h:
182         * html/IsIndexInputType.cpp:
183         (WebCore::IsIndexInputType::supportsRequired):
184         * html/IsIndexInputType.h:
185         * html/NumberInputType.cpp:
186         (WebCore::NumberInputType::typeMismatchFor):
187         (WebCore::NumberInputType::typeMismatch):
188         * html/NumberInputType.h:
189         * html/RadioInputType.cpp:
190         (WebCore::RadioInputType::valueMissing):
191         * html/RadioInputType.h:
192         * html/ResetInputType.cpp:
193         (WebCore::ResetInputType::supportsValidation):
194         * html/ResetInputType.h:
195         * html/SubmitInputType.cpp:
196         (WebCore::SubmitInputType::supportsValidation):
197         * html/SubmitInputType.h:
198         * html/TextFieldInputType.cpp:
199         (WebCore::TextFieldInputType::valueMissing):
200         * html/TextFieldInputType.h:
201         * html/URLInputType.cpp:
202         (WebCore::URLInputType::typeMismatchFor):
203         (WebCore::URLInputType::typeMismatch):
204         * html/URLInputType.h:
205         * html/ValidityState.cpp:
206         (WebCore::ValidityState::typeMismatch):
207
208 2010-10-09  Pratik Solanki  <psolanki@apple.com>
209
210         Reviewed by Dan Bernstein.
211
212         https://bugs.webkit.org/show_bug.cgi?id=47450
213         Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil
214         <rdar://problem/8244376>
215
216         * platform/network/cf/SocketStreamHandleCFNet.cpp:
217         (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is
218         NULL, return early to avoid crash.
219
220 2010-10-08  Chris Rogers  <crogers@google.com>
221
222         Reviewed by James Robinson.
223
224         Add HRTFPanner files
225         https://bugs.webkit.org/show_bug.cgi?id=46299
226
227         No new tests since audio API is not yet implemented.
228
229         * platform/audio/HRTFPanner.cpp: Added.
230         (WebCore::HRTFPanner::HRTFPanner):
231         (WebCore::HRTFPanner::~HRTFPanner):
232         (WebCore::HRTFPanner::fftSizeForSampleRate):
233         (WebCore::HRTFPanner::reset):
234         (WebCore::wrapDistance):
235         (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend):
236         (WebCore::HRTFPanner::pan):
237         * platform/audio/HRTFPanner.h: Added.
238         (WebCore::HRTFPanner::fftSize):
239         (WebCore::HRTFPanner::sampleRate):
240
241 2010-10-08  James Robinson  <jamesr@chromium.org>
242
243         Reviewed by Adam Barth.
244
245         Avoid inlining large and/or virtual functions in widely included header files
246         https://bugs.webkit.org/show_bug.cgi?id=47230
247
248         Functions with very large bodies should not be included in widely included header files.
249         This results in the function's code ending up included in hundreds of object files that
250         the linker has to discard, at a cost of linker memory use, link time, and disk space. This
251         is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit
252         virtual address space and completely fails to link.
253
254         This patch moves function definitions from the .h to the corresponding .cpp when the function
255         is large and not a candidate for inlining either because it is virtual or because its size is
256         above any reasonable compiler's threshhold for inlining.  The most common case by far in this
257         patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in
258         the header and an explicitly defined d'tor in the .cpp.  This is important since many of our
259         container and utility classes (especially Vector, String, and HashSet) have quite large
260         destructors.
261
262         This patch removes 22.4MB of object file size in a debug 64 bit compile.
263
264         * css/CSSBorderImageValue.cpp:
265         (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
266         * css/CSSBorderImageValue.h:
267         * css/CSSFontFaceSrcValue.cpp:
268         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
269         * css/CSSFontFaceSrcValue.h:
270         * css/CSSFunctionValue.h:
271         * dom/BeforeTextInsertedEvent.cpp:
272         (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent):
273         * dom/BeforeTextInsertedEvent.h:
274         * dom/BeforeUnloadEvent.cpp:
275         (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
276         * dom/BeforeUnloadEvent.h:
277         * dom/ClassNodeList.h:
278         * dom/ClipboardEvent.cpp:
279         (WebCore::ClipboardEvent::~ClipboardEvent):
280         * dom/ClipboardEvent.h:
281         * dom/CustomEvent.cpp:
282         (WebCore::CustomEvent::~CustomEvent):
283         * dom/CustomEvent.h:
284         * dom/Element.cpp:
285         * dom/Element.h:
286         * dom/EventTarget.cpp:
287         (WebCore::EventTargetData::EventTargetData):
288         * dom/EventTarget.h:
289         * dom/InputElement.cpp:
290         (WebCore::InputElementData::~InputElementData):
291         * dom/InputElement.h:
292         * dom/MutationEvent.cpp:
293         (WebCore::MutationEvent::~MutationEvent):
294         * dom/MutationEvent.h:
295         * dom/Node.cpp:
296         (WebCore::Node::refEventTarget):
297         (WebCore::Node::derefEventTarget):
298         * dom/Node.h:
299         * dom/OptionElement.cpp:
300         (WebCore::OptionElementData::~OptionElementData):
301         * dom/OptionElement.h:
302         * dom/PopStateEvent.cpp:
303         (WebCore::PopStateEvent::~PopStateEvent):
304         * dom/PopStateEvent.h:
305         * dom/QualifiedName.cpp:
306         (WebCore::QualifiedName::~QualifiedName):
307         * dom/QualifiedName.h:
308         * dom/SelectElement.cpp:
309         (WebCore::SelectElementData::~SelectElementData):
310         * dom/SelectElement.h:
311         * dom/StaticHashSetNodeList.cpp:
312         (WebCore::StaticHashSetNodeList::StaticHashSetNodeList):
313         (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList):
314         * dom/StaticHashSetNodeList.h:
315         * dom/StyleElement.cpp:
316         (WebCore::StyleElement::~StyleElement):
317         * dom/StyleElement.h:
318         * dom/TouchEvent.cpp:
319         (WebCore::TouchEvent::TouchEvent):
320         (WebCore::TouchEvent::~TouchEvent):
321         * dom/TouchEvent.h:
322         * editing/CompositeEditCommand.cpp:
323         (WebCore::CompositeEditCommand::~CompositeEditCommand):
324         * editing/CompositeEditCommand.h:
325         * editing/TextIterator.cpp:
326         (WebCore::BitStack::~BitStack):
327         (WebCore::TextIterator::~TextIterator):
328         (WebCore::WordAwareIterator::~WordAwareIterator):
329         * editing/TextIterator.h:
330         * inspector/InspectorValues.cpp:
331         (WebCore::InspectorObject::~InspectorObject):
332         (WebCore::InspectorObject::InspectorObject):
333         (WebCore::InspectorArray::~InspectorArray):
334         (WebCore::InspectorArray::InspectorArray):
335         * inspector/InspectorValues.h:
336         * loader/CachedResource.cpp:
337         (WebCore::CachedResource::registerHandle):
338         (WebCore::CachedResource::unregisterHandle):
339         * loader/CachedResource.h:
340         * platform/network/HTTPHeaderMap.cpp:
341         (WebCore::HTTPHeaderMap::HTTPHeaderMap):
342         (WebCore::HTTPHeaderMap::~HTTPHeaderMap):
343         (WebCore::HTTPHeaderMap::get):
344         (WebCore::HTTPHeaderMap::add):
345         * platform/network/HTTPHeaderMap.h:
346         * rendering/RenderApplet.cpp:
347         (WebCore::RenderApplet::~RenderApplet):
348         * rendering/RenderApplet.h:
349         * rendering/RenderButton.cpp:
350         (WebCore::RenderButton::~RenderButton):
351         * rendering/RenderButton.h:
352         * rendering/RenderCounter.cpp:
353         (WebCore::RenderCounter::~RenderCounter):
354         * rendering/RenderCounter.h:
355         * rendering/RenderFieldset.h:
356         * rendering/RenderForeignObject.cpp:
357         (WebCore::RenderForeignObject::~RenderForeignObject):
358         * rendering/RenderForeignObject.h:
359         * rendering/RenderFrame.h:
360         * rendering/RenderFrameBase.h:
361         * rendering/RenderHTMLCanvas.h:
362         * rendering/RenderIFrame.h:
363         * rendering/RenderInline.h:
364         * rendering/RenderListItem.h:
365         * rendering/RenderMarquee.cpp:
366         (WebCore::RenderMarquee::~RenderMarquee):
367         * rendering/RenderMarquee.h:
368         * rendering/RenderPath.cpp:
369         (WebCore::RenderPath::~RenderPath):
370         * rendering/RenderPath.h:
371         * rendering/RenderSVGBlock.h:
372         * rendering/RenderSVGContainer.cpp:
373         (WebCore::RenderSVGContainer::~RenderSVGContainer):
374         * rendering/RenderSVGContainer.h:
375         * rendering/RenderSVGHiddenContainer.h:
376         * rendering/RenderSVGInline.h:
377         * rendering/RenderSVGInlineText.cpp:
378         (WebCore::RenderSVGInlineText::~RenderSVGInlineText):
379         * rendering/RenderSVGInlineText.h:
380         * rendering/RenderSVGModelObject.h:
381         * rendering/RenderSVGResourceFilterPrimitive.h:
382         * rendering/RenderSVGRoot.cpp:
383         (WebCore::RenderSVGRoot::~RenderSVGRoot):
384         * rendering/RenderSVGRoot.h:
385         * rendering/RenderSVGTSpan.h:
386         * rendering/RenderSVGText.h:
387         * rendering/RenderSVGTextPath.h:
388         * rendering/RenderSVGTransformableContainer.h:
389         * rendering/RenderSVGViewportContainer.h:
390         * rendering/RenderTable.cpp:
391         (WebCore::RenderTable::~RenderTable):
392         * rendering/RenderTable.h:
393         * rendering/RenderTableCell.h:
394         * rendering/RenderTableCol.h:
395         * rendering/RenderTableRow.h:
396         * rendering/RenderTextFragment.cpp:
397         (WebCore::RenderTextFragment::~RenderTextFragment):
398         * rendering/RenderTextFragment.h:
399         * rendering/RenderWordBreak.h:
400         * svg/SVGStyledElement.cpp:
401         (WebCore::SVGStyledElement::~SVGStyledElement):
402         * svg/SVGStyledElement.h:
403         * svg/SVGStyledTransformableElement.cpp:
404         (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement):
405         * svg/SVGStyledTransformableElement.h:
406         * xml/XPathParser.cpp:
407         (WebCore::XPath::Parser::~Parser):
408         * xml/XPathParser.h:
409
410 2010-10-08  Martin Robinson  <mrobinson@igalia.com>
411
412         Reviewed by Daniel Bates.
413
414         [GTK] Fails /LayoutTests/fast/css/button-height.html
415         https://bugs.webkit.org/show_bug.cgi?id=33936
416
417         GTK buttons honor height property set via CSS. The code for the method
418         adjustButtonStyle originates from the original GTK+ theme drawing code
419         and is clearly just a copy-paste from the Safari theme drawing code. The
420         Safari theme drawing code does quite a bit of work to ensure that button
421         fonts are consistent with the system theme, which is not something the GTK+
422         port does.
423
424         This change brings the method more in line with the Chromium port, which
425         allows CSS to style buttons, only overriding the line-height property,
426         which is required for layout tests to pass.
427
428         * platform/gtk/RenderThemeGtk.cpp:
429         (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS
430         properties for button styling.
431
432 2010-10-08  Mihai Parparita  <mihaip@chromium.org>
433
434         Reviewed by Adam Barth.
435
436         popstate events are lost when network connection is in progress
437         https://bugs.webkit.org/show_bug.cgi?id=42940
438         
439         Instead of checking FrameLoader::isComplete() (which isn't true if the
440         document's resource loader has requests outstanding), check that the
441         document's readyState is complete, as the spec says.
442
443         Test: http/tests/history/popstate-fires-with-pending-requests.html
444
445         * dom/Document.cpp:
446         (WebCore::Document::statePopped):
447         * loader/FrameLoader.cpp:
448         (WebCore::FrameLoader::didBeginDocument): Added call to set readyState
449         to Loading earlier. Otherwise, readyState's initial value is Complete,
450         and we only set it to Loading in Document::implicitOpen (which is called
451         after FrameLoader::didBeginDocument by DocumentWriter::begin), so we 
452         could end up in Document::statePopped and have the readyState be
453         Complete, even if we hadn't even begin loading the document.
454
455 2010-10-08  Daniel Cheng  <dcheng@chromium.org>
456
457         Reviewed by Tony Chang.
458
459         [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change
460         https://bugs.webkit.org/show_bug.cgi?id=47394
461
462         Minor cleanup--these classes have suffered from bit rot since they aren't
463         actively used at the moment. The three main changes are to:
464         1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl,
465            setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL
466            title and HTML base URL.
467         2) Use Clipboard::ClipboardType instead of a bool.
468         3) Remove the use of virtuals, as they are no longer needed..
469
470         * platform/chromium/ReadableDataObject.cpp:
471         (WebCore::clipboardBuffer):
472         (WebCore::ReadableDataObject::create):
473         (WebCore::ReadableDataObject::ReadableDataObject):
474         (WebCore::ReadableDataObject::getData):
475         (WebCore::ReadableDataObject::urlTitle): renamed from getURL
476         (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML
477         (WebCore::ReadableDataObject::containsFilenames):
478         (WebCore::ReadableDataObject::filenames):
479         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
480         * platform/chromium/ReadableDataObject.h:
481         * platform/chromium/WritableDataObject.cpp:
482         (WebCore::WritableDataObject::create):
483         (WebCore::WritableDataObject::WritableDataObject):
484         (WebCore::WritableDataObject::setData):
485         * platform/chromium/WritableDataObject.h:
486         (WebCore::WritableDataObject::setUrlTitle): renamed from setURL
487         (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML
488         (WebCore::WritableDataObject::dataMap):
489         (WebCore::WritableDataObject::urlTitle):
490         (WebCore::WritableDataObject::htmlBaseURL):
491         (WebCore::WritableDataObject::fileExtension):
492         (WebCore::WritableDataObject::fileContentFilename):
493         (WebCore::WritableDataObject::fileContent):
494         (WebCore::WritableDataObject::setFileExtension):
495         (WebCore::WritableDataObject::setFileContentFilename):
496         (WebCore::WritableDataObject::setFileContent):
497
498 2010-10-08  Abhishek Arya  <inferno@chromium.org>
499
500         Unreviewed, rolling out r69360.
501         http://trac.webkit.org/changeset/69360
502         https://bugs.webkit.org/show_bug.cgi?id=46921
503
504         Test still crashing on chromium test_shell
505
506         * html/HTMLObjectElement.cpp:
507         (WebCore::HTMLObjectElement::renderFallbackContent):
508
509 2010-10-08  Sheriff Bot  <webkit.review.bot@gmail.com>
510
511         Unreviewed, rolling out r68574.
512         http://trac.webkit.org/changeset/68574
513         https://bugs.webkit.org/show_bug.cgi?id=47433
514
515         [chromium] Breaks partial repaint of images while scrolling
516         (Requested by jamesr on #webkit).
517
518         * platform/graphics/skia/ImageSkia.cpp:
519         (WebCore::computeResamplingMode):
520         (WebCore::drawResampledBitmap):
521
522 2010-10-08  Andy Estes  <aestes@apple.com>
523
524         Reviewed by Darin Adler.
525
526         REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images.
527         https://bugs.webkit.org/show_bug.cgi?id=47430
528
529         Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html
530
531         * rendering/RenderImage.cpp:
532         (WebCore::RenderImage::imageChanged): imageChanged() can be called prior
533         to m_imageResource being set. The appropriate thing to do in this case
534         is to return early.
535         (WebCore::RenderImage::notifyFinished): Ditto.
536
537 2010-10-08  Andrei Popescu  <andreip@google.com>
538
539         Reviewed by Jeremy Orlow.
540
541         IndexedDB does not have a quota mechanism.
542         https://bugs.webkit.org/show_bug.cgi?id=47389
543
544         Test: storage/indexeddb/database-quota.html
545
546         Add a simple mechanism for enforcing a maximum size
547         for each origin using IndexedDB. Note that this depends
548         on having one SQLite database file per origin, which is
549         addressed in a separate patch.
550
551         * page/GroupSettings.cpp:
552         (WebCore::GroupSettings::GroupSettings):
553         (WebCore::GroupSettings::setIndexedDBQuotaBytes):
554         * page/GroupSettings.h:
555         (WebCore::GroupSettings::indexedDBQuotaBytes):
556         * storage/IDBDatabaseBackendImpl.cpp:
557         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
558         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
559         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
560         (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
561         * storage/IDBFactory.cpp:
562         (WebCore::IDBFactory::open):
563         * storage/IDBFactoryBackendImpl.cpp:
564         (WebCore::openSQLiteDatabase):
565         (WebCore::IDBFactoryBackendImpl::open):
566         * storage/IDBFactoryBackendImpl.h:
567         * storage/IDBFactoryBackendInterface.h:
568         * storage/IDBObjectStoreBackendImpl.cpp:
569         (WebCore::putObjectStoreData):
570         (WebCore::putIndexData):
571         (WebCore::IDBObjectStoreBackendImpl::put):
572         (WebCore::IDBObjectStoreBackendImpl::putInternal):
573         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
574         * storage/IDBObjectStoreBackendImpl.h:
575
576 2010-10-08  Gavin Peters  <gavinp@chromium.org>
577
578         Reviewed by Adam Barth.
579
580         Output X-Purpose header for prefetch requests
581         https://bugs.webkit.org/show_bug.cgi?id=46529
582
583         Test: http/tests/misc/prefetch-purpose.html
584
585         * loader/loader.cpp:
586         (WebCore::Loader::Host::servePendingRequests):
587
588 2010-10-08  James Kozianski  <koz@chromium.org>
589
590         Reviewed by Simon Fraser.
591
592         Crash on reload when CSS property 'content' has malformed URL.
593         https://bugs.webkit.org/show_bug.cgi?id=47322
594
595         Make CSSStyleSelector handle the case where a cached image can't be
596         produced due to a malformed URL.
597
598         Test: fast/css-generated-content/malformed-url.html
599
600         * css/CSSStyleSelector.cpp:
601         (WebCore::CSSStyleSelector::loadPendingImages):
602
603 2010-10-08  Dirk Schulze  <krit@webkit.org>
604
605         Reviewed by Nikolas Zimmermann.
606
607         SVG feImage needs absolute subregion for preserveAspectRatio
608         https://bugs.webkit.org/show_bug.cgi?id=47409
609
610         PreserverAspectRatio needs the subregion in absolute coordinates to determine
611         the destination position and size of the input image. The maxEffectRect() already
612         stores the absolute subregion, but clipped to the filter region.
613
614         Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg
615
616         * platform/graphics/filters/FETile.cpp:
617         (WebCore::FETile::apply):
618         * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage.
619         (WebCore::FilterEffect::filterEffectType):
620         * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect
621         (WebCore::SourceAlpha::filterEffectType):
622         * platform/graphics/filters/SourceGraphic.h: Ditto.
623         (WebCore::SourceGraphic::filterEffectType):
624         * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image.
625         (WebCore::FEImage::apply):
626         * svg/graphics/filters/SVGFEImage.h: Ditto.
627         (WebCore::FEImage::setAbsoluteSubregion):
628         (WebCore::FEImage::filterEffectType):
629         * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it.
630         (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
631
632 2010-10-08  Nikolas Zimmermann  <nzimmermann@rim.com>
633
634         Reviewed by Dirk Schulze.
635
636         gradient stroke on lines does not work
637         https://bugs.webkit.org/show_bug.cgi?id=40985
638
639         Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition.
640         Perfectly matches Opera, and now lets us pass three of the new tests.
641
642         Fix incorrect svg/custom/invalid-fill* tests:
643         -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg)
644         -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg)
645
646         Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers.
647         As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition.
648
649         Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
650                svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg
651                svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg
652
653         * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions.
654         (WebCore::requestPaintingResource):
655         (WebCore::RenderSVGResource::fillPaintingResource):
656         (WebCore::RenderSVGResource::strokePaintingResource):
657         * rendering/RenderSVGResource.h:
658         * 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).
659         (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
660         (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
661         (WebCore::clipToTextMask):
662         (WebCore::RenderSVGResourceGradient::applyResource):
663         * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once.
664         * rendering/RenderSVGResourceLinearGradient.cpp:
665         (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient.
666         (WebCore::RenderSVGResourceLinearGradient::buildGradient):
667         * rendering/RenderSVGResourceLinearGradient.h:
668         (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData.
669         (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto.
670         * 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).
671         (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
672         (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
673         (WebCore::RenderSVGResourcePattern::applyResource):
674         (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
675         * rendering/RenderSVGResourcePattern.h:
676         * rendering/RenderSVGResourceRadialGradient.cpp:
677         (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes):
678         (WebCore::RenderSVGResourceRadialGradient::buildGradient):
679         * rendering/RenderSVGResourceRadialGradient.h:
680         (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode):
681         (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform):
682         * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter.
683         (WebCore::writeStyle):
684         (WebCore::writeSVGResourceContainer):
685         * rendering/svg/RenderSVGPath.cpp: 
686         (WebCore::RenderSVGPath::fillContains): Ditto.
687         (WebCore::RenderSVGPath::strokeContains): Ditto.
688         (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply.
689         * rendering/svg/SVGInlineTextBox.cpp:
690         (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto.
691         * svg/SVGLinearGradientElement.cpp:
692         (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy.
693         * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
694         * svg/SVGPatternElement.cpp:
695         (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning.
696         * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes.
697         * svg/SVGRadialGradientElement.cpp:
698         (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy.
699         * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
700
701 2010-10-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
702
703         Reviewed by Andreas Kling.
704
705         [Qt] Slider widgets looks bad on Mac
706         https://bugs.webkit.org/show_bug.cgi?id=47421
707
708         This patch change the rendering of the slider to only have the
709         subcontrols that would be defined by default on a QSlider.
710
711         * platform/qt/RenderThemeQt.cpp:
712         (WebCore::RenderThemeQt::paintSliderTrack):
713
714 2010-10-08  Renata Hodovan  <reni@inf.u-szeged.hu>
715
716         Reviewed by Andreas Kling.
717
718         SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change.
719         https://bugs.webkit.org/show_bug.cgi?id=47342
720
721         The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
722
723         Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html
724                svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html
725                svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html
726                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html
727                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html
728                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html
729
730         * svg/SVGFEColorMatrixElement.cpp:
731         (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
732         * svg/SVGFEColorMatrixElement.h:
733
734 2010-10-08  Pavel Podivilov  <podivilov@chromium.org>
735
736         Reviewed by Pavel Feldman.
737
738         Web Inspector: save InspectorController in instrumentation cookie
739         https://bugs.webkit.org/show_bug.cgi?id=47406
740
741         * bindings/v8/V8Proxy.cpp:
742         (WebCore::V8Proxy::evaluate):
743         (WebCore::V8Proxy::callFunction):
744         * dom/Document.cpp:
745         (WebCore::Document::recalcStyle):
746         * dom/Node.cpp:
747         (WebCore::Node::dispatchGenericEvent):
748         * html/parser/HTMLDocumentParser.cpp:
749         (WebCore::HTMLDocumentParser::pumpTokenizer):
750         * inspector/InspectorInstrumentation.cpp:
751         * inspector/InspectorInstrumentation.h:
752         * loader/ResourceLoader.cpp:
753         (WebCore::ResourceLoader::didReceiveResponse):
754         (WebCore::ResourceLoader::didReceiveData):
755         * page/DOMTimer.cpp:
756         (WebCore::DOMTimer::fired):
757         * page/DOMWindow.cpp:
758         (WebCore::DOMWindow::dispatchEvent):
759         * page/FrameView.cpp:
760         (WebCore::FrameView::layout):
761         (WebCore::FrameView::paintContents):
762         * rendering/RenderLayerBacking.cpp:
763         (WebCore::RenderLayerBacking::paintContents):
764         * xml/XMLHttpRequest.cpp:
765         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
766
767 2010-10-08  Adam Roben  <aroben@apple.com>
768
769         Windows Release build fix for 32-bit systems
770
771         WebCore had once again grown too large for the linker's virtual
772         address space on 32-bit systems. I combined WebCore/rendering,
773         WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files,
774         and added a few more files to RenderSVGAllInOne.cpp.
775
776         Fixes <http://webkit.org/b/47417> <rdar://problem/8529362>
777
778         * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and
779         excluded the individual files they contain from the build.
780
781         * rendering/RenderSVGAllInOne.cpp: Added a few more files to this.
782
783         * dom/DOMAllInOne.cpp: Added.
784         * rendering/RenderingAllInOne.cpp: Added.
785         * rendering/style/StyleAllInOne.cpp: Added.
786
787 2010-10-08  Girish Ramakrishnan  <girish@forwardbias.in>
788
789         Reviewed by Andreas Kling.
790
791         [Qt] Use constBegin and constEnd when using const iterators
792
793         * platform/graphics/qt/GraphicsLayerQt.cpp:
794         (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
795         (WebCore::GraphicsLayerQtImpl::updateTransform):
796         (WebCore::GraphicsLayerQtImpl::flushChanges):
797
798 2010-10-07  Pavel Feldman  <pfeldman@chromium.org>
799
800         Reviewed by Yury Semikhatsky.
801
802         Web Inspector: add resource viewer to the network panel.
803         https://bugs.webkit.org/show_bug.cgi?id=47346
804
805         * inspector/front-end/DataGrid.js:
806         (WebInspector.DataGrid):
807         (WebInspector.DataGrid.prototype.autoSizeColumns):
808         (WebInspector.DataGrid.prototype.updateWidths):
809         (WebInspector.DataGrid.prototype.columnWidthsMap):
810         (WebInspector.DataGrid.prototype.applyColumnWidthsMap):
811         (WebInspector.DataGrid.prototype.isColumnVisible):
812         (WebInspector.DataGrid.prototype.showColumn):
813         (WebInspector.DataGrid.prototype.hideColumn):
814         (WebInspector.DataGrid.prototype._positionResizers):
815         (WebInspector.DataGrid.prototype._resizerDragging):
816         * inspector/front-end/NetworkPanel.js:
817         (WebInspector.NetworkPanel):
818         (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
819         (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
820         (WebInspector.NetworkPanel.prototype.handleShortcut):
821         (WebInspector.NetworkPanel.prototype._createTable):
822         (WebInspector.NetworkPanel.prototype._sortItems):
823         (WebInspector.NetworkPanel.prototype._sortByTimeline):
824         (WebInspector.NetworkPanel.prototype._createSummaryBar):
825         (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
826         (WebInspector.NetworkPanel.prototype.hide):
827         (WebInspector.NetworkPanel.prototype.get searchableViews):
828         (WebInspector.NetworkPanel.prototype.refresh):
829         (WebInspector.NetworkPanel.prototype.reset):
830         (WebInspector.NetworkPanel.prototype.refreshResource):
831         (WebInspector.NetworkPanel.prototype.canShowSourceLine):
832         (WebInspector.NetworkPanel.prototype.showSourceLine):
833         (WebInspector.NetworkPanel.prototype._showResource):
834         (WebInspector.NetworkPanel.prototype._closeVisibleResource):
835         (WebInspector.NetworkPanel.prototype._resourceViewForResource):
836         (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource):
837         (WebInspector.NetworkPanel.prototype._toggleGridMode):
838         (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
839         (WebInspector.NetworkDataGridNode):
840         (WebInspector.NetworkDataGridNode.prototype.select):
841         (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
842         * inspector/front-end/networkPanel.css:
843         (#network-container):
844         (#network-views):
845         (.network.panel .data-grid.full-grid-mode .viewer-column):
846         (.network.panel .data-grid.brief-grid-mode .time-column):
847         (.network.panel.viewing-resource .network-timeline-grid):
848         (.network.panel .data-grid.viewing-resource-mode .timeline-column):
849         (.network.panel .network-sidebar):
850         (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical):
851         (.network.panel.viewing-resource .data-grid-resizer):
852         (.network.panel .scope-bar):
853         (.network.panel .resource-view.headers-visible .resource-view-content):
854         (.network.panel:not(.viewing-resource) .data-grid tr.selected):
855
856 2010-10-08  Andreas Kling  <kling@webkit.org>
857
858         Reviewed by Nikolas Zimmermann.
859
860         SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros
861         https://bugs.webkit.org/show_bug.cgi?id=47180
862
863         Rename *Value to *ValueAttribute
864
865         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
866         (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue):
867         (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter):
868         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
869
870 2010-10-08  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
871
872         Reviewed by Kenneth Rohde Christiansen.
873
874         [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
875         https://bugs.webkit.org/show_bug.cgi?id=47347
876
877         * WebCore.pro:
878
879 2010-10-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
880
881         Reviewed by Kenneth Rohde Christiansen.
882
883         [EFL] Implement IntRectEfl.cpp
884         https://bugs.webkit.org/show_bug.cgi?id=47403
885
886         Implement IntRect for Efl Port using Eina_Rectangle.
887
888         * platform/graphics/IntRect.h:
889         * platform/graphics/efl/IntRectEfl.cpp:
890         (WebCore::IntRect::IntRect):
891         (WebCore::IntRect::operator Eina_Rectangle):
892
893 2010-10-08  Andreas Kling  <andreas.kling@nokia.com>
894
895         Reviewed by Nikolas Zimmermann.
896
897         SVG: Make RenderPath DRT output platform-independent
898         https://bugs.webkit.org/show_bug.cgi?id=46051
899
900         Move away from using the port-specific Path::debugString() to dump
901         RenderPath objects. This shrinks the DRT output delta between platforms
902         and makes it more readable as we now dump only the relevant,
903         element-specific properties of each object.
904
905         * rendering/SVGRenderTreeAsText.cpp:
906         (WebCore::operator<<):
907         Generate DRT output for RenderPaths in a platform-independent manner,
908         dumping the relevant element properties.
909
910 2010-10-08  Kinuko Yasuda  <kinuko@chromium.org>
911
912         Reviewed by David Levin.
913
914         Fix FileSystem path validation order to normalize '..' and '.' before restriction checks
915         https://bugs.webkit.org/show_bug.cgi?id=47309
916
917         Test: fast/filesystem/op-get-entry.html
918
919         * fileapi/DOMFileSystemBase.cpp:
920         (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order.
921         (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order.
922
923 2010-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
924
925         Reviewed by Xan Lopez.
926
927         [GTK] Port GTK+ theming code to GTK+ 3.x APIs
928         https://bugs.webkit.org/show_bug.cgi?id=47398
929
930         Create a new gtk3drawing file for the widget drawing primitives in
931         WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x
932         code at the moment, but we'll evolve it incrementally from here.
933
934         * GNUmakefile.am:
935         * platform/gtk/RenderThemeGtk.cpp:
936         (WebCore::RenderThemeGtk::partsForDrawable):
937         (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
938         * platform/gtk/gtk2drawing.c:
939         (TSOffsetStyleGCArray):
940         (TSOffsetStyleGCs):
941         (moz_gtk_button_paint):
942         (moz_gtk_scrollbar_thumb_paint):
943         (moz_gtk_entry_paint):
944         (moz_gtk_combo_box_paint):
945         (moz_gtk_get_widget_border):
946         * platform/gtk/gtk3drawing.c: Added.
947         * platform/gtk/gtkdrawing.h:
948
949 2010-10-07  Daniel Cheng  <dcheng@chromium.org>
950
951         Reviewed by Kent Tamura.
952
953         [chromium] Fix indentation in ChromiumDataObject.h 
954         https://bugs.webkit.org/show_bug.cgi?id=47396
955
956         Just a cleanup patch to make followup diffs smaller.
957
958         * platform/chromium/ChromiumDataObject.h:
959         (WebCore::ChromiumDataObject::create):
960         (WebCore::ChromiumDataObject::copy):
961         (WebCore::ChromiumDataObject::urlTitle):
962         (WebCore::ChromiumDataObject::setUrlTitle):
963         (WebCore::ChromiumDataObject::htmlBaseUrl):
964         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
965         (WebCore::ChromiumDataObject::containsFilenames):
966         (WebCore::ChromiumDataObject::filenames):
967         (WebCore::ChromiumDataObject::setFilenames):
968         (WebCore::ChromiumDataObject::fileExtension):
969         (WebCore::ChromiumDataObject::setFileExtension):
970         (WebCore::ChromiumDataObject::fileContentFilename):
971         (WebCore::ChromiumDataObject::setFileContentFilename):
972         (WebCore::ChromiumDataObject::fileContent):
973         (WebCore::ChromiumDataObject::setFileContent):
974
975 2010-10-07  Kent Tamura  <tkent@chromium.org>
976
977         Reviewed by Dimitri Glazkov.
978
979         Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations
980         https://bugs.webkit.org/show_bug.cgi?id=47327
981
982         Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(),
983         valueAsNumber(), and setValueAsNumber() to InputType, and move
984         serialize() and serializeForDateTimeTypes() too
985
986         * html/BaseDateAndTimeInputType.cpp:
987         (WebCore::BaseDateAndTimeInputType::valueAsDate):
988         (WebCore::BaseDateAndTimeInputType::setValueAsDate):
989         (WebCore::BaseDateAndTimeInputType::valueAsNumber):
990         (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
991         (WebCore::BaseDateAndTimeInputType::serialize):
992         * html/BaseDateAndTimeInputType.h:
993         * html/DateInputType.cpp:
994         (WebCore::DateInputType::setMillisecondToDateComponents):
995         * html/DateInputType.h:
996         * html/DateTimeInputType.cpp:
997         (WebCore::DateTimeInputType::setMillisecondToDateComponents):
998         * html/DateTimeInputType.h:
999         * html/DateTimeLocalInputType.cpp:
1000         (WebCore::DateTimeLocalInputType::valueAsDate):
1001         (WebCore::DateTimeLocalInputType::setValueAsDate):
1002         (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents):
1003         * html/DateTimeLocalInputType.h:
1004         * html/HTMLInputElement.cpp:
1005         (WebCore::HTMLInputElement::valueAsDate):
1006         (WebCore::HTMLInputElement::setValueAsDate):
1007         (WebCore::HTMLInputElement::valueAsNumber):
1008         (WebCore::HTMLInputElement::setValueAsNumber):
1009         (WebCore::HTMLInputElement::stepUpFromRenderer):
1010         * html/HTMLInputElement.h:
1011         * html/InputType.cpp:
1012         (WebCore::InputType::valueAsDate):
1013         (WebCore::InputType::setValueAsDate):
1014         (WebCore::InputType::valueAsNumber):
1015         (WebCore::InputType::setValueAsNumber):
1016         (WebCore::InputType::serialize):
1017         * html/InputType.h:
1018         * html/MonthInputType.cpp:
1019         (WebCore::MonthInputType::valueAsDate):
1020         (WebCore::MonthInputType::setValueAsDate):
1021         (WebCore::MonthInputType::setMillisecondToDateComponents):
1022         * html/MonthInputType.h:
1023         * html/NumberInputType.cpp:
1024         (WebCore::NumberInputType::valueAsNumber):
1025         (WebCore::NumberInputType::setValueAsNumber):
1026         (WebCore::NumberInputType::serialize):
1027         * html/NumberInputType.h:
1028         * html/RangeInputType.cpp:
1029         (WebCore::RangeInputType::valueAsNumber):
1030         (WebCore::RangeInputType::setValueAsNumber):
1031         (WebCore::RangeInputType::serialize):
1032         * html/RangeInputType.h:
1033         * html/TimeInputType.cpp:
1034         (WebCore::TimeInputType::setMillisecondToDateComponents):
1035         * html/TimeInputType.h:
1036         * html/WeekInputType.cpp:
1037         (WebCore::WeekInputType::setMillisecondToDateComponents):
1038         * html/WeekInputType.h:
1039
1040 2010-10-07  No'am Rosenthal  <noam.rosenthal@nokia.com>
1041
1042         Reviewed by Kenneth Rohde Christiansen.
1043
1044         [Texmap] [Qt] Texture mapper initial implementation
1045         Texture Mapper is an implementation of accelerated compositing that doesn't require a
1046         platform specific scenegraph library like CA or QGraphicsView. The idea is that with
1047         time this would replace GraphicsLayerQt, and could serve as an implementation for other
1048         platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk,
1049         and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches
1050         an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt.
1051
1052         This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer.
1053
1054         * platform/graphics/qt/TextureMapperQt.cpp: Added.
1055         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added.
1056         * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added.
1057         * platform/graphics/texmap/TextureMapper.h: Added.
1058         * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added.
1059
1060 2010-10-07  Antonio Gomes  <agomes@rim.com>
1061
1062         Reviewed by Simon Fraser.
1063
1064         [Mac] [DRT] implement setSpatialNavigationEnabled
1065         https://bugs.webkit.org/show_bug.cgi?id=47291
1066
1067         Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in
1068         so it can be used from WebKit/mac.
1069
1070         * WebCore.exp.in:
1071
1072 2010-10-07  Eric Uhrhane  <ericu@chromium.org>
1073
1074         Reviewed by Jian Li
1075
1076         [V8] Add FileWriter to active DOM map
1077         https://bugs.webkit.org/show_bug.cgi?id=47380
1078
1079         It's an ActiveDOMObject; it needs to be in the map.
1080
1081         * bindings/scripts/CodeGeneratorV8.pm:
1082
1083 2010-10-07  Nico Weber  <thakis@chromium.org>
1084
1085         Reviewed by James Robinson.
1086
1087         [chromium] Make sure to update the current graphics context when calling out to AppKit.
1088         https://bugs.webkit.org/show_bug.cgi?id=47387
1089
1090         This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is
1091         now no longer necessary.
1092
1093         Should be covered by existing tests. The checkbox at
1094         http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should
1095         now show up correctly.
1096
1097         * platform/chromium/ThemeChromiumMac.mm:
1098         (WebCore::paintCheckbox):
1099         (WebCore::paintRadio):
1100         Create current context.
1101         * platform/graphics/chromium/ContentLayerChromium.cpp:
1102         (WebCore::ContentLayerChromium::updateContents):
1103         Remove LocalCurrentContext, it's now no longer necessary.
1104
1105 2010-10-07  Cris Neckar  <cdn@chromium.org>
1106
1107         Reviewed by Adam Barth.
1108
1109         Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach().
1110         https://bugs.webkit.org/show_bug.cgi?id=46921
1111
1112         Test: fast/html/object-image-nested-fallback.html
1113
1114         * html/HTMLObjectElement.cpp:
1115         (WebCore::HTMLObjectElement::renderFallbackContent):
1116
1117 2010-10-07  Rafael Antognolli  <antognolli@profusion.mobi>
1118
1119         Reviewed by Kenneth Rohde Christiansen.
1120
1121         [EFL] Fix shared timers on EFL port - make them thread safe.
1122         https://bugs.webkit.org/show_bug.cgi?id=47383
1123
1124         Using ecore_timer_add to create a timer from a thread that is
1125         not the main thread isn't safe. Now we add a pipe that is used
1126         to request a timer to be added in the main thread.
1127
1128         In order to reduce some delay on timers that are added with a
1129         very small interval, the timer callback is called immediately
1130         if the interval is smaller than the mainloop frame time.
1131
1132         No new features, so no tests added.
1133
1134         * platform/efl/SharedTimerEfl.cpp:
1135         (WebCore::setSharedTimerFiredFunction):
1136         (WebCore::timerEvent):
1137         (WebCore::processTimers):
1138         (WebCore::pipeHandlerCb):
1139         (WebCore::stopSharedTimer):
1140         (WebCore::addNewTimer):
1141         (WebCore::setSharedTimerFireTime):
1142
1143 2010-10-07  James Kozianski  <koz@chromium.org>
1144
1145         Reviewed by Adam Barth.
1146
1147         getPropertyValue('border') is incorrect after border-top-width is set
1148         https://bugs.webkit.org/show_bug.cgi?id=45949
1149
1150         Test: fast/dom/css-shorthand-common-value.html
1151
1152         CSSMutableStyleDeclaration::getCommonValue() was ignoring values from
1153         properties that were implicitly set, which led to erroneous results
1154         from getPropertyValue().
1155
1156         * css/CSSMutableStyleDeclaration.cpp:
1157         (WebCore::CSSMutableStyleDeclaration::getCommonValue):
1158
1159 2010-10-07  Ryosuke Niwa  <rniwa@webkit.org>
1160
1161         Reviewed by Tony Chang.
1162
1163         REGRESSION: Indenting pre duplicates content
1164         https://bugs.webkit.org/show_bug.cgi?id=47233
1165
1166         The bug was caused by our not splitting text nodes properly.
1167
1168         In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded
1169         to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions
1170         for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph,
1171         start, and end to work-around moveParagraphWithClones's removing a line feed.
1172
1173         Tests: editing/execCommand/indent-pre-list.html
1174                editing/execCommand/indent-pre-paragraphs.html
1175
1176         * editing/ApplyBlockElementCommand.cpp:
1177         (WebCore::ApplyBlockElementCommand::formatSelection): See above.
1178         (WebCore::isNewLineAtPosition):
1179         (WebCore::renderStyleOfEnclosingTextNode): Added.
1180         (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added.
1181         (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added.
1182         * editing/ApplyBlockElementCommand.h:
1183         * editing/FormatBlockCommand.cpp:
1184         (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition.
1185         * editing/FormatBlockCommand.h:
1186         * editing/IndentOutdentCommand.cpp:
1187         (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto.
1188         (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto.
1189         (WebCore::IndentOutdentCommand::formatRange): Ditto.
1190         * editing/IndentOutdentCommand.h:
1191
1192 2010-10-07  Jian Li  <jianli@chromium.org>
1193
1194         Reviewed by Adam Barth.
1195
1196         Support generating a FormData object based on the data in an existing <form>.
1197         https://bugs.webkit.org/show_bug.cgi?id=45929
1198
1199         Test: http/tests/local/formdata/send-form-data-constructed-from-form.html
1200
1201         * bindings/js/JSDOMFormDataCustom.cpp:
1202         (WebCore::toHTMLFormElement):
1203         (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):
1204         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1205         (WebCore::V8DOMFormData::constructorCallback):
1206         * html/DOMFormData.cpp:
1207         (WebCore::DOMFormData::DOMFormData):
1208         * html/DOMFormData.h:
1209         (WebCore::DOMFormData::create):
1210         * html/DOMFormData.idl:
1211
1212 2010-10-07  Abhishek Arya  <inferno@chromium.org>
1213
1214         Reviewed by Dave Hyatt.
1215
1216         Set the m_selectedChildren flag on the root inline box if one of the leaf 
1217         inline box from the bidi runs walk has a selection state. Remove the flag
1218         setting logic from addToLine, since line boxes created in createLinesBoxes
1219         should not be propagating selection state to root inline box.
1220         https://bugs.webkit.org/show_bug.cgi?id=47201
1221
1222         Test: editing/selection/root-inlinebox-selected-children-crash.html
1223
1224         * rendering/InlineFlowBox.cpp:
1225         (WebCore::InlineFlowBox::addToLine):
1226         * rendering/RenderBlockLineLayout.cpp:
1227         (WebCore::RenderBlock::constructLine):
1228
1229 2010-10-07  Benjamin Otte  <otte@gnome.org>
1230
1231         Reviewed by Martin Robinson.
1232
1233         [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins
1234         https://bugs.webkit.org/show_bug.cgi?id=47361
1235
1236         Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead
1237         of directly with X11. This should work fine with GDK double-buffering, but
1238         if we ever disable it, we'll need to verify that this is still functioning
1239         properly.
1240
1241         * plugins/gtk/PluginViewGtk.cpp:
1242         (WebCore::PluginView::paint): Do a bit of code cleanup.
1243
1244 2010-10-07  Anders Carlsson  <andersca@apple.com>
1245
1246         Reviewed by Sam Weinig.
1247
1248         Add a WKPageFindClient, hook up WKPageCountStringMatches
1249         https://bugs.webkit.org/show_bug.cgi?id=47373
1250
1251         Export find related symbols needed by WebKit2.
1252
1253         * WebCore.exp.in:
1254
1255 2010-10-07  David Hyatt  <hyatt@apple.com>
1256
1257         Reviewed by Sam Weinig.
1258
1259         https://bugs.webkit.org/show_bug.cgi?id=47370
1260         
1261         Make line box placement in the inline direction writing-mode-aware.  Lines now set their y-position instead of x-position
1262         when vertical.
1263         
1264         Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in
1265         placeBoxesInInlineDirection can be replaced with the helper.
1266
1267         Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line
1268         boxes.
1269
1270         Vertical lines are still not testable until they can be placed in the block direction.  Then the render tree dumps
1271         become meaningful (even if the pixel results look horrible).
1272
1273         * rendering/InlineBox.h:
1274         (WebCore::InlineBox::logicalRight):
1275         * rendering/InlineFlowBox.cpp:
1276         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
1277         * rendering/InlineFlowBox.h:
1278         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
1279         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
1280         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
1281         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
1282         (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
1283         * rendering/RenderBlockLineLayout.cpp:
1284         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1285         * rendering/style/RenderStyle.cpp:
1286         (WebCore::RenderStyle::getShadowExtent):
1287         (WebCore::RenderStyle::getShadowHorizontalExtent):
1288         (WebCore::RenderStyle::getShadowVerticalExtent):
1289         * rendering/style/RenderStyle.h:
1290         (WebCore::InheritedFlags::getTextShadowExtent):
1291         (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
1292         (WebCore::InheritedFlags::getTextShadowVerticalExtent):
1293         (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
1294         (WebCore::InheritedFlags::getBoxShadowExtent):
1295         (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
1296         (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
1297         (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
1298         (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
1299
1300 2010-10-07  Dan Bernstein  <mitz@apple.com>
1301
1302         Reviewed by Simon Fraser.
1303
1304         <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page
1305         https://bugs.webkit.org/show_bug.cgi?id=47374
1306
1307         In the legacy (paint-time pagination) printing model, when there are overlapping lines,
1308         adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n,
1309         namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1
1310         moved the truncation point up again.
1311
1312         * rendering/RenderLineBoxList.cpp:
1313         (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the
1314         current line extends below the truncation point.
1315
1316 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
1317
1318         Reviewed by Beth Dakin.
1319
1320         Use isIdentityOrTranslationOrFlipped() in scrollbar code
1321         https://bugs.webkit.org/show_bug.cgi?id=47378
1322
1323         Replace old code that looked at values in the CGAffineTransform
1324         with nicely named method that does the same test.
1325
1326         * platform/mac/ScrollbarThemeMac.mm:
1327         (WebCore::ScrollbarThemeMac::paint):
1328
1329 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
1330
1331         Reviewed by Beth Dakin.
1332
1333         Edge fringe artifact with transformed, masked elements (including reflections)
1334         https://bugs.webkit.org/show_bug.cgi?id=19179
1335         
1336         When drawing the mask images, use a transparency layer if the CTM
1337         has a rotation, scale or skew in it to avoid antialiasing issues at
1338         the edges.
1339
1340         Test: fast/css/transformed-mask.html
1341
1342         * rendering/RenderBox.cpp:
1343         (WebCore::RenderBox::paintMask): Don't bother painting the mask if
1344         painting is disabled, which also avoids an assertion in getCTM().
1345         (WebCore::RenderBox::paintMaskImages):
1346
1347 2010-10-07  Kwang Yul Seo  <skyul@company100.net>
1348
1349         Reviewed by Kent Tamura.
1350
1351         [BREWMP] Map non-alphabet key code to Unicode value
1352         https://bugs.webkit.org/show_bug.cgi?id=46002
1353
1354         Non-alphabet key codes are not equal to the unicode values. Add conversion.
1355
1356         * platform/brew/PlatformKeyboardEventBrew.cpp:
1357         (WebCore::singleCharacterString):
1358
1359 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
1360
1361         Reviewed by Chris Fleizach.
1362
1363         [GTK] The FreeType backend does not respect the FC_EMBOLDEN property
1364         https://bugs.webkit.org/show_bug.cgi?id=46216
1365
1366         Look for the FC_EMBOLDEN property of the FcPattern when constructing
1367         FontPlatformData and use it to enable synthetic bold fonts when necessary.
1368
1369         Test: platform/gtk/fonts/fontconfig-synthetic-bold.html
1370
1371         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
1372         (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property.
1373
1374 2010-10-07  James Simonsen  <simonjam@chromium.org>
1375
1376         Reviewed by Pavel Feldman.
1377
1378         [Web Timing] Use platform definition of responseEnd
1379         https://bugs.webkit.org/show_bug.cgi?id=46306
1380
1381         No new tests. Used existing webtiming test.
1382
1383         * loader/MainResourceLoader.cpp:
1384         (WebCore::MainResourceLoader::didFinishLoading):
1385
1386 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
1387
1388         Reviewed by Chris Fleizach.
1389
1390         [Gtk] CSS font-style: italic behavior
1391         https://bugs.webkit.org/show_bug.cgi?id=33299
1392
1393         Properly interpret the FC_MATRIX property from a FontConfig pattern.
1394         FontConfig will use this property when returning fonts which have a
1395         synthetic oblique variant configured in the fonts.conf configuration
1396         file.
1397
1398         Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html
1399
1400         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
1401         (WebCore::FontPlatformData::FontPlatformData): Added a constructor that
1402         takes an existing FontPlatformData and a font size.
1403         (WebCore::FontPlatformData::initializeWithFontFace): Added this helper
1404         intialization method that properly handles the FC_MATRIX property from
1405         the FcPattern.
1406         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration
1407         to the new constructor and the initializeWithFontFace.
1408         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
1409         (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData
1410         constructor.
1411
1412 2010-10-07  David Hyatt  <hyatt@apple.com>
1413
1414         Reviewed by Dan Bernstein.
1415
1416         https://bugs.webkit.org/show_bug.cgi?id=47357
1417         
1418         Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware.
1419
1420         * rendering/InlineFlowBox.cpp:
1421         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1422         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
1423         * rendering/RenderBlock.cpp:
1424         (WebCore::RenderBlock::positionNewFloatOnLine):
1425         * rendering/RenderBlockLineLayout.cpp:
1426         (WebCore::getBorderPaddingMargin):
1427         (WebCore::inlineLogicalWidth):
1428         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1429         (WebCore::inlineFlowRequiresLineBox):
1430         (WebCore::RenderBlock::skipLeadingWhitespace):
1431         (WebCore::RenderBlock::fitBelowFloats):
1432         (WebCore::RenderBlock::findNextLineBreak):
1433         * rendering/RenderBoxModelObject.h:
1434         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin):
1435         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding):
1436
1437 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
1438
1439         Reviewed by Kenneth Rohde Christiansen.
1440
1441         Fixing viewport meta tag user-scalable handling
1442         https://bugs.webkit.org/show_bug.cgi?id=47330
1443
1444         user-scalable attribute was not considered in viewport meta tag handling.
1445
1446         * dom/ViewportArguments.cpp:
1447         (WebCore::findConfigurationForViewportData):
1448         * dom/ViewportArguments.h:
1449
1450 2010-10-05  Diego Gonzalez  <diegohcg@webkit.org>
1451
1452         Reviewed by Andreas Kling.
1453
1454         [Qt] Hook up accelerometer data via Qt DeviceMotion
1455         https://bugs.webkit.org/show_bug.cgi?id=47105
1456
1457         Get accelerometer necessary data via Qt mobility library using a
1458         provider class. Enable, also the RotationRate using the current device
1459         orientation provider.
1460
1461         * WebCore.pro:
1462
1463 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
1464
1465         Reviewed by Kenneth Rohde Christiansen.
1466
1467         Some viewport meta tag api refactoring
1468         https://bugs.webkit.org/show_bug.cgi?id=47334
1469
1470         WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
1471         WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
1472
1473         * dom/ViewportArguments.cpp:
1474         (WebCore::computeViewportAttributes):
1475         * dom/ViewportArguments.h:
1476
1477 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1478
1479         Reviewed by Xan Lopez.
1480
1481         [GTK] Don't use GtkObject
1482         https://bugs.webkit.org/show_bug.cgi?id=47090
1483
1484         GtkObject has been removed in gtk3.
1485
1486         * plugins/gtk/gtk2xtbin.c:
1487         (gtk_xtbin_class_init):
1488         (gtk_xtbin_dispose):
1489
1490 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
1491
1492         Reviewed by Pavel Feldman.
1493
1494         Web Inspector: highlight XHR breakpoint when hit.
1495         https://bugs.webkit.org/show_bug.cgi?id=47253
1496
1497         * inspector/InspectorController.cpp:
1498         (WebCore::InspectorController::didCommitLoad):
1499         (WebCore::InspectorController::setNativeBreakpoint):
1500         (WebCore::InspectorController::removeNativeBreakpoint):
1501         (WebCore::InspectorController::findEventListenerBreakpoint):
1502         (WebCore::InspectorController::findXHRBreakpoint):
1503         * inspector/InspectorController.h:
1504         * inspector/InspectorInstrumentation.cpp:
1505         (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
1506         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
1507         * inspector/front-end/BreakpointManager.js:
1508         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
1509         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
1510         (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
1511         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
1512         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
1513         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
1514         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
1515         (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend):
1516         (WebInspector.BreakpointManager.prototype.debuggerPaused):
1517         (WebInspector.BreakpointManager.prototype.debuggerResumed):
1518         (WebInspector.NativeBreakpoint):
1519         (WebInspector.NativeBreakpoint.prototype.get enabled):
1520         (WebInspector.NativeBreakpoint.prototype.set enabled):
1521         (WebInspector.NativeBreakpoint.prototype.remove):
1522         * inspector/front-end/BreakpointsSidebarPane.js:
1523         (WebInspector.BreakpointItem):
1524         (WebInspector.BreakpointItem.prototype._breakpointClicked):
1525         (WebInspector.BreakpointItem.prototype._hitStateChanged):
1526         * inspector/front-end/CallStackSidebarPane.js:
1527         (WebInspector.CallStackSidebarPane.prototype.updateStatus):
1528         * inspector/front-end/inspector.css:
1529         (.breakpoint-list .breakpoint-hit):
1530         * inspector/front-end/inspector.js:
1531         (WebInspector.pausedScript):
1532         (WebInspector.resumedScript):
1533
1534 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1535
1536         Reviewed by Xan Lopez.
1537
1538         [GTK] Fix the build for GTK+ 3
1539         https://bugs.webkit.org/show_bug.cgi?id=47249
1540
1541         Use GdkVisual instead of GdkColormap. GdkColormap has been removed
1542         in gtk3.
1543
1544         * plugins/gtk/PluginViewGtk.cpp:
1545         (WebCore::PluginView::platformStart):
1546         * plugins/gtk/gtk2xtbin.c:
1547         (gtk_xtbin_new):
1548
1549 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1550
1551         Reviewed by Xan Lopez.
1552
1553         [GTK] Fix the build for GTK+ 3
1554         https://bugs.webkit.org/show_bug.cgi?id=47249
1555
1556         Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
1557         are deprecated in gtk2 and have been removed in gtk3. Equivalent
1558         API has been added to GdkWindow.
1559
1560         * platform/gtk/GtkVersioning.c:
1561         (getDefaultGDKPointerDevice):
1562         * platform/gtk/GtkVersioning.h:
1563         * platform/gtk/PlatformScreenGtk.cpp:
1564         (WebCore::getVisual):
1565         (WebCore::screenAvailableRect):
1566
1567 2010-10-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1568
1569         Reviewed by Andreas Kling.
1570
1571         [Qt] Disconnect signals before destroying MediaPlayerPrivateQt
1572
1573         https://bugs.webkit.org/show_bug.cgi?id=47073
1574
1575         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1576
1577 2010-10-07  Alexander Pavlov  <apavlov@chromium.org>
1578
1579         Unreviewed, release build fix.
1580
1581         * inspector/InspectorStyleSheet.cpp:
1582         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
1583         * inspector/InspectorStyleSheet.h:
1584         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
1585         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
1586
1587 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
1588
1589         Unreviewed, build fix.
1590
1591         Build fix for r69283.
1592
1593         * dom/Document.cpp:
1594         (WebCore::Document::inspectorController):
1595         * dom/Document.h:
1596
1597 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1598
1599         Reviewed by Xan Lopez.
1600
1601         [GTK] Fix the build for GTK+ 3
1602         https://bugs.webkit.org/show_bug.cgi?id=47249
1603
1604         Don't use gtk_size_request_get_size(). It has been removed,
1605         gtk_widget_get_preferred_size() should be used instead
1606
1607         * platform/gtk/PopupMenuGtk.cpp:
1608         (WebCore::PopupMenuGtk::show):
1609
1610 2010-10-06  Alexander Pavlov  <apavlov@chromium.org>
1611
1612         Reviewed by Pavel Feldman.
1613
1614         Web Inspector: Implement handling of CSS operations in InspectorCSSAgent.
1615         Property toggling not implemented yet. The code is not going live.
1616         https://bugs.webkit.org/show_bug.cgi?id=45825
1617
1618         * CMakeLists.txt:
1619         * GNUmakefile.am:
1620         * WebCore.gypi:
1621         * WebCore.pro:
1622         * WebCore.vcproj/WebCore.vcproj:
1623         * WebCore.xcodeproj/project.pbxproj:
1624         * inspector/InspectorCSSAgent.cpp: Added.
1625         (WebCore::InspectorCSSAgent::buildObjectForStyle):
1626         (WebCore::InspectorCSSAgent::parentStyleSheet):
1627         (WebCore::InspectorCSSAgent::asCSSStyleRule):
1628         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
1629         (WebCore::InspectorCSSAgent::~InspectorCSSAgent):
1630         (WebCore::InspectorCSSAgent::reset):
1631         (WebCore::InspectorCSSAgent::getMatchedRulesForNode2):
1632         (WebCore::InspectorCSSAgent::getMatchedPseudoRulesForNode2):
1633         (WebCore::InspectorCSSAgent::getAttributeStylesForNode2):
1634         (WebCore::InspectorCSSAgent::getInlineStyleForNode2):
1635         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
1636         (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
1637         (WebCore::InspectorCSSAgent::getAllStyles2):
1638         (WebCore::InspectorCSSAgent::getStyleSheet2):
1639         (WebCore::InspectorCSSAgent::setStyleSheetText2):
1640         (WebCore::InspectorCSSAgent::setStyleText2):
1641         (WebCore::InspectorCSSAgent::toggleProperty2):
1642         (WebCore::InspectorCSSAgent::setRuleSelector2):
1643         (WebCore::InspectorCSSAgent::addRule2):
1644         (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
1645         (WebCore::InspectorCSSAgent::inlineStyleElement):
1646         (WebCore::InspectorCSSAgent::populateObjectWithStyleProperties):
1647         (WebCore::InspectorCSSAgent::shorthandValue):
1648         (WebCore::InspectorCSSAgent::shorthandPriority):
1649         (WebCore::InspectorCSSAgent::longhandProperties):
1650         (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
1651         (WebCore::InspectorCSSAgent::elementForId):
1652         (WebCore::InspectorCSSAgent::bindStyleSheet):
1653         (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
1654         (WebCore::InspectorCSSAgent::styleSheetForId):
1655         (WebCore::InspectorCSSAgent::detectOrigin):
1656         (WebCore::InspectorCSSAgent::buildArrayForRuleList):
1657         (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
1658         (WebCore::InspectorCSSAgent::didRemoveDocument):
1659         (WebCore::InspectorCSSAgent::didRemoveDOMNode):
1660         * inspector/InspectorCSSAgent.h: Added.
1661         (WebCore::InspectorCSSAgent::create):
1662         * inspector/InspectorDOMAgent.cpp:
1663         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1664         (WebCore::InspectorDOMAgent::setDOMListener):
1665         (WebCore::InspectorDOMAgent::unbind):
1666         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1667         (WebCore::InspectorDOMAgent::getSupportedCSSProperties):
1668         * inspector/InspectorDOMAgent.h:
1669         (WebCore::InspectorDOMAgent::DOMListener::~DOMListener):
1670         (WebCore::InspectorDOMAgent::documents):
1671         * inspector/InspectorStyleSheet.cpp: Added.
1672         (ParsedStyleSheet::cssStyleSheet):
1673         (ParsedStyleSheet::text):
1674         (ParsedStyleSheet::hasText):
1675         (ParsedStyleSheet::sourceData):
1676         (ParsedStyleSheet::hasSourceData):
1677         (ParsedStyleSheet::ParsedStyleSheet):
1678         (ParsedStyleSheet::setText):
1679         (ParsedStyleSheet::setSourceData):
1680         (ParsedStyleSheet::ruleSourceDataAt):
1681         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
1682         (WebCore::InspectorStyleSheet::~InspectorStyleSheet):
1683         (WebCore::InspectorStyleSheet::setText):
1684         (WebCore::InspectorStyleSheet::setRuleSelector):
1685         (WebCore::InspectorStyleSheet::addRule):
1686         (WebCore::InspectorStyleSheet::ruleForId):
1687         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
1688         (WebCore::InspectorStyleSheet::buildObjectForRule):
1689         (WebCore::InspectorStyleSheet::buildObjectForStyle):
1690         (WebCore::InspectorStyleSheet::styleForId):
1691         (WebCore::InspectorStyleSheet::setStyleText):
1692         (WebCore::InspectorStyleSheet::ownerDocument):
1693         (WebCore::InspectorStyleSheet::ruleSourceDataFor):
1694         (WebCore::InspectorStyleSheet::ruleIndexByStyle):
1695         (WebCore::InspectorStyleSheet::ensureParsedDataReady):
1696         (WebCore::InspectorStyleSheet::text):
1697         (WebCore::InspectorStyleSheet::ensureText):
1698         (WebCore::InspectorStyleSheet::ensureSourceData):
1699         (WebCore::InspectorStyleSheet::innerSetStyleSheetText):
1700         (WebCore::InspectorStyleSheet::innerSetStyleText):
1701         (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
1702         (WebCore::InspectorStyleSheet::findPageRuleWithStyle):
1703         (WebCore::InspectorStyleSheet::fullRuleId):
1704         (WebCore::InspectorStyleSheet::revalidateStyle):
1705         (WebCore::InspectorStyleSheet::styleSheetText):
1706         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
1707         (WebCore::InspectorStyleSheet::inlineStyleSheetText):
1708         (WebCore::InspectorStyleSheet::buildArrayForRuleList):
1709         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1710         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
1711         (WebCore::InspectorStyleSheetForInlineStyle::ownerDocument):
1712         (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
1713         (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle):
1714         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
1715         * inspector/InspectorStyleSheet.h: Added.
1716         (WebCore::InspectorStyleSheet::create):
1717         (WebCore::InspectorStyleSheet::id):
1718         (WebCore::InspectorStyleSheet::pageStyleSheet):
1719         (WebCore::InspectorStyleSheet::canBind):
1720         (WebCore::InspectorStyleSheet::fullRuleOrStyleId):
1721         (WebCore::InspectorStyleSheet::ruleOrStyleId):
1722         (WebCore::InspectorStyleSheet::fullStyleId):
1723         (WebCore::InspectorStyleSheetForInlineStyle::create):
1724         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
1725         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
1726         (WebCore::InspectorStyleSheetForInlineStyle::ruleIndexByStyle):
1727         * inspector/InspectorUtilities.cpp: Added.
1728         (WebCore::InspectorUtilities::resourceContentForURL):
1729         * inspector/InspectorUtilities.h: Added.
1730
1731 2010-10-05  Pavel Podivilov  <podivilov@chromium.org>
1732
1733         Reviewed by Pavel Feldman.
1734
1735         Web Inspector: extract Inspector Instrumentation API as a class
1736         https://bugs.webkit.org/show_bug.cgi?id=47173
1737
1738         * bindings/js/JSXMLHttpRequestCustom.cpp:
1739         (WebCore::JSXMLHttpRequest::send):
1740         * bindings/js/ScriptController.cpp:
1741         (WebCore::ScriptController::evaluateInWorld):
1742         * bindings/v8/V8DOMWindowShell.cpp:
1743         * bindings/v8/V8Proxy.cpp:
1744         (WebCore::V8Proxy::evaluate):
1745         (WebCore::V8Proxy::callFunction):
1746         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1747         (WebCore::V8XMLHttpRequest::sendCallback):
1748         * dom/Document.cpp:
1749         (WebCore::Document::recalcStyle):
1750         * dom/Document.h:
1751         * dom/Node.cpp:
1752         (WebCore::Node::dispatchGenericEvent):
1753         * html/parser/HTMLDocumentParser.cpp:
1754         (WebCore::HTMLDocumentParser::pumpTokenizer):
1755         * html/parser/HTMLDocumentParser.h:
1756         * inspector/InspectorInstrumentation.cpp:
1757         (WebCore::InspectorInstrumentation::hasFrontend):
1758         (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
1759         * inspector/InspectorInstrumentation.h:
1760         (WebCore::InspectorInstrumentation::hasFrontends):
1761         (WebCore::InspectorInstrumentation::inspectorControllerForContext):
1762         (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
1763         (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
1764         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
1765         * inspector/InspectorTimelineAgent.cpp:
1766         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1767         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
1768         * inspector/InspectorTimelineAgent.h:
1769         * loader/ResourceLoader.cpp:
1770         (WebCore::ResourceLoader::didReceiveResponse):
1771         (WebCore::ResourceLoader::didReceiveData):
1772         * loader/loader.cpp:
1773         (WebCore::Loader::load):
1774         * page/DOMTimer.cpp:
1775         (WebCore::DOMTimer::install):
1776         (WebCore::DOMTimer::removeById):
1777         (WebCore::DOMTimer::fired):
1778         * page/DOMTimer.h:
1779         * page/DOMWindow.cpp:
1780         (WebCore::DOMWindow::dispatchEvent):
1781         * page/DOMWindow.h:
1782         * page/FrameView.cpp:
1783         (WebCore::FrameView::layout):
1784         (WebCore::FrameView::paintContents):
1785         * page/FrameView.h:
1786         * page/Page.cpp:
1787         * page/Page.h:
1788         * rendering/RenderLayerBacking.cpp:
1789         (WebCore::RenderLayerBacking::paintContents):
1790         * xml/XMLHttpRequest.cpp:
1791         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
1792
1793 2010-10-07  Zraly Mike  <mike.zraly@nokia.com>
1794
1795         Reviewed by Andreas Kling.
1796
1797         Windowless flash plugin is not rendered in Symbian
1798         https://bugs.webkit.org/show_bug.cgi?id=47172
1799
1800         * plugins/symbian/PluginViewSymbian.cpp:
1801         (WebCore::PluginView::platformStart):
1802         Add call to updatePluginWidget() following changes to
1803         platform widget.  This is needed to set PluginView's
1804         m_windowRect and m_clipRect members properly after
1805         the proxy widget and its container get created.
1806
1807 2010-10-07  Andreas Kling  <kling@webkit.org>
1808
1809         Reviewed by Nikolas Zimmermann.
1810
1811         Rename (and move) RenderPath to svg/RenderSVGPath
1812         https://bugs.webkit.org/show_bug.cgi?id=47053
1813
1814         Also renamed RenderObject::isRenderPath() to isSVGPath()
1815
1816         * Android.mk:
1817         * CMakeLists.txt:
1818         * GNUmakefile.am:
1819         * WebCore.gypi:
1820         * WebCore.order:
1821         * WebCore.pro:
1822         * WebCore.vcproj/WebCore.vcproj:
1823         * WebCore.xcodeproj/project.pbxproj:
1824         * rendering/RenderObject.h:
1825         (WebCore::RenderObject::isSVGPath):
1826         * rendering/RenderPath.cpp: Removed.
1827         * rendering/RenderPath.h: Removed.
1828         * rendering/RenderSVGHiddenContainer.cpp:
1829         * rendering/RenderSVGResourceClipper.cpp:
1830         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
1831         (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
1832         (WebCore::RenderSVGResourceClipper::hitTestClipContent):
1833         * rendering/RenderSVGResourceContainer.cpp:
1834         (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
1835         * rendering/RenderSVGResourceSolidColor.cpp:
1836         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
1837         * rendering/RenderTreeAsText.cpp:
1838         (WebCore::write):
1839         * rendering/SVGRenderSupport.cpp:
1840         (WebCore::SVGRenderSupport::layoutChildren):
1841         * rendering/SVGRenderTreeAsText.cpp:
1842         (WebCore::writeStyle):
1843         (WebCore::operator<<):
1844         (WebCore::write):
1845         * rendering/SVGRenderTreeAsText.h:
1846         * rendering/style/SVGRenderStyle.cpp:
1847         (WebCore::SVGRenderStyle::diff):
1848         * rendering/svg/RenderSVGPath.cpp: Copied from WebCore/rendering/RenderPath.cpp.
1849         (WebCore::RenderSVGPath::RenderSVGPath):
1850         (WebCore::RenderSVGPath::fillContains):
1851         (WebCore::RenderSVGPath::strokeContains):
1852         (WebCore::RenderSVGPath::layout):
1853         (WebCore::RenderSVGPath::fillAndStrokePath):
1854         (WebCore::RenderSVGPath::paint):
1855         (WebCore::RenderSVGPath::addFocusRingRects):
1856         (WebCore::RenderSVGPath::nodeAtFloatPoint):
1857         (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded):
1858         (WebCore::RenderSVGPath::updateCachedBoundaries):
1859         * rendering/svg/RenderSVGPath.h: Copied from WebCore/rendering/RenderPath.h.
1860         (WebCore::RenderSVGPath::isSVGPath):
1861         (WebCore::RenderSVGPath::renderName):
1862         (WebCore::toRenderSVGPath):
1863         * svg/SVGCircleElement.cpp:
1864         (WebCore::SVGCircleElement::svgAttributeChanged):
1865         * svg/SVGEllipseElement.cpp:
1866         (WebCore::SVGEllipseElement::svgAttributeChanged):
1867         * svg/SVGGradientElement.cpp:
1868         * svg/SVGLineElement.cpp:
1869         (WebCore::SVGLineElement::svgAttributeChanged):
1870         * svg/SVGPathElement.cpp:
1871         (WebCore::SVGPathElement::svgAttributeChanged):
1872         * svg/SVGPolyElement.cpp:
1873         (WebCore::SVGPolyElement::svgAttributeChanged):
1874         * svg/SVGRectElement.cpp:
1875         (WebCore::SVGRectElement::svgAttributeChanged):
1876         * svg/SVGStyledLocatableElement.cpp:
1877         * svg/SVGStyledTransformableElement.cpp:
1878         (WebCore::SVGStyledTransformableElement::createRenderer):
1879
1880 2010-10-06  Yury Semikhatsky  <yurys@chromium.org>
1881
1882         Reviewed by Pavel Feldman.
1883
1884         Web Inspector: clear line highlight when switching current view
1885         https://bugs.webkit.org/show_bug.cgi?id=47262
1886
1887         * inspector/front-end/SourceFrame.js:
1888         (WebInspector.SourceFrame.prototype.clearLineHighlight):
1889         * inspector/front-end/SourceView.js:
1890         (WebInspector.SourceView.prototype.hide):
1891         * inspector/front-end/TextViewer.js:
1892         (WebInspector.TextViewer.prototype.highlightLine):
1893         (WebInspector.TextViewer.prototype.clearLineHighlight):
1894
1895 2010-10-06  Chris Evans  <cevans@google.com>
1896
1897         Reviewed by David Levin.
1898
1899         https://bugs.webkit.org/show_bug.cgi?id=47313
1900
1901         Fix integer errors with enormous input strings to newline normalization APIs.
1902
1903         * platform/text/LineEnding.cpp:
1904         (WebCore::normalizeLineEndingsToCRLF): return the empty string upon huge input strings. (Behaves similarly to base64Encode now).
1905         (WebCore::normalizeToCROrLF): use the correct type for a string length.
1906
1907 2010-10-06  Kent Tamura  <tkent@chromium.org>
1908
1909         Unreviewed, build fix.
1910
1911         Windows build fix for r69272.
1912
1913         * html/BaseDateAndTimeInputType.cpp:
1914         (WebCore::BaseDateAndTimeInputType::stepBase):
1915          Use defaultStepBase() instead of defaultStepBase.
1916         * html/InputType.h:
1917         (WebCore::InputType::defaultStepBase):
1918          Make defaultStepBase static function.
1919         * html/NumberInputType.cpp:
1920         (WebCore::NumberInputType::stepBase):
1921          Use defaultStepBase() instead of defaultStepBase.
1922
1923 2010-10-06  Kent Tamura  <tkent@chromium.org>
1924
1925         Reviewed by Dimitri Glazkov.
1926
1927         Refactor HTMLInputElement: Move range/step related functions
1928         https://bugs.webkit.org/show_bug.cgi?id=47251
1929
1930         Move the content of the following functions:
1931          - rangeUnderflow()
1932          - rangeOverflow()
1933          - minimum()
1934          - maximum()
1935          - stepMismatch()
1936          - stepBase()
1937
1938         getStepParameters() was split into InputType::defaultStep() and
1939         stepScaleFactor().
1940
1941         * html/BaseDateAndTimeInputType.cpp:
1942         (WebCore::BaseDateAndTimeInputType::rangeUnderflow):
1943         (WebCore::BaseDateAndTimeInputType::rangeOverflow):
1944         (WebCore::BaseDateAndTimeInputType::stepMismatch):
1945         (WebCore::BaseDateAndTimeInputType::stepBase):
1946         * html/BaseDateAndTimeInputType.h:
1947         * html/DateInputType.cpp:
1948         (WebCore::DateInputType::minimum):
1949         (WebCore::DateInputType::maximum):
1950         (WebCore::DateInputType::defaultStep):
1951         (WebCore::DateInputType::stepScaleFactor):
1952         (WebCore::DateInputType::parsedStepValueShouldBeInteger):
1953         * html/DateInputType.h:
1954         * html/DateTimeInputType.cpp:
1955         (WebCore::DateTimeInputType::minimum):
1956         (WebCore::DateTimeInputType::maximum):
1957         (WebCore::DateTimeInputType::defaultStep):
1958         (WebCore::DateTimeInputType::stepScaleFactor):
1959         (WebCore::DateTimeInputType::scaledStepValeuShouldBeInteger):
1960         * html/DateTimeInputType.h:
1961         * html/DateTimeLocalInputType.cpp:
1962         (WebCore::DateTimeLocalInputType::minimum):
1963         (WebCore::DateTimeLocalInputType::maximum):
1964         (WebCore::DateTimeLocalInputType::defaultStep):
1965         (WebCore::DateTimeLocalInputType::stepScaleFactor):
1966         (WebCore::DateTimeLocalInputType::scaledStepValeuShouldBeInteger):
1967         * html/DateTimeLocalInputType.h:
1968         * html/HTMLInputElement.cpp:
1969         (WebCore::HTMLInputElement::rangeUnderflow):
1970         (WebCore::HTMLInputElement::rangeOverflow):
1971         (WebCore::HTMLInputElement::minimum):
1972         (WebCore::HTMLInputElement::maximum):
1973         (WebCore::HTMLInputElement::stepMismatch):
1974         (WebCore::HTMLInputElement::getAllowedValueStep):
1975         (WebCore::HTMLInputElement::applyStep):
1976         (WebCore::HTMLInputElement::handleKeyEventForRange):
1977         (WebCore::HTMLInputElement::stepUpFromRenderer):
1978         * html/HTMLInputElement.h:
1979         * html/InputType.cpp:
1980         (WebCore::InputType::patternMismatch):
1981         (WebCore::InputType::rangeUnderflow):
1982         (WebCore::InputType::rangeOverflow):
1983         (WebCore::InputType::minimum):
1984         (WebCore::InputType::maximum):
1985         (WebCore::InputType::stepMismatch):
1986         (WebCore::InputType::stepBase):
1987         (WebCore::InputType::defaultStep):
1988         (WebCore::InputType::stepScaleFactor):
1989         (WebCore::InputType::parsedStepValueShouldBeInteger):
1990         (WebCore::InputType::scaledStepValeuShouldBeInteger):
1991         * html/InputType.h:
1992         * html/MonthInputType.cpp:
1993         (WebCore::MonthInputType::minimum):
1994         (WebCore::MonthInputType::maximum):
1995         (WebCore::MonthInputType::defaultStep):
1996         (WebCore::MonthInputType::stepScaleFactor):
1997         (WebCore::MonthInputType::parsedStepValueShouldBeInteger):
1998         * html/MonthInputType.h:
1999         * html/NumberInputType.cpp:
2000         (WebCore::NumberInputType::rangeUnderflow):
2001         (WebCore::NumberInputType::rangeOverflow):
2002         (WebCore::NumberInputType::minimum):
2003         (WebCore::NumberInputType::maximum):
2004         (WebCore::NumberInputType::stepMismatch):
2005         (WebCore::NumberInputType::stepBase):
2006         (WebCore::NumberInputType::defaultStep):
2007         (WebCore::NumberInputType::stepScaleFactor):
2008         * html/NumberInputType.h:
2009         * html/RangeInputType.cpp:
2010         (WebCore::RangeInputType::rangeUnderflow):
2011         (WebCore::RangeInputType::rangeOverflow):
2012         (WebCore::RangeInputType::minimum):
2013         (WebCore::RangeInputType::maximum):
2014         (WebCore::RangeInputType::stepMismatch):
2015         (WebCore::RangeInputType::stepBase):
2016         (WebCore::RangeInputType::defaultStep):
2017         (WebCore::RangeInputType::stepScaleFactor):
2018         * html/RangeInputType.h:
2019         * html/TimeInputType.cpp:
2020         (WebCore::TimeInputType::minimum):
2021         (WebCore::TimeInputType::maximum):
2022         (WebCore::TimeInputType::defaultStep):
2023         (WebCore::TimeInputType::stepScaleFactor):
2024         (WebCore::TimeInputType::scaledStepValeuShouldBeInteger):
2025         * html/TimeInputType.h:
2026         * html/WeekInputType.cpp:
2027         (WebCore::WeekInputType::minimum):
2028         (WebCore::WeekInputType::maximum):
2029         (WebCore::WeekInputType::stepBase):
2030         (WebCore::WeekInputType::defaultStep):
2031         (WebCore::WeekInputType::stepScaleFactor):
2032         (WebCore::WeekInputType::parsedStepValueShouldBeInteger):
2033         * html/WeekInputType.h:
2034
2035 2010-10-06  Simon Fraser  <simon.fraser@apple.com>
2036
2037         Reviewed by Dan Bernstein, Darin Adler.
2038
2039         :first-letter should apply to "punctuation" after the first letter
2040         https://bugs.webkit.org/show_bug.cgi?id=45986
2041         
2042         Follow the CSS 2.1 spec by allow certain kinds of punctuation before and after
2043         the :first-letter character.
2044         
2045         The spec does not describe whitespace behavior, and browsers are inconsistent.
2046         This patch allows whitespace (including non-breaking spaces) before and after the
2047         leading punctuation, and before the trailing punctuation.
2048
2049         Test: fast/css/first-letter-punctuation.html
2050
2051         * rendering/RenderBlock.cpp:
2052         (WebCore::isPunctuationForFirstLetter):
2053         (WebCore::shouldSkipForFirstLetter):
2054         (WebCore::RenderBlock::updateFirstLetter):
2055
2056 2010-10-06  Sanjeev Radhakrishnan  <sanjeevr@chromium.org>
2057
2058         Reviewed by Darin Fisher.
2059
2060         Released the pluginNode in PluginDocument::detach() and prevents a memory leak.
2061         https://bugs.webkit.org/show_bug.cgi?id=47129
2062
2063         * html/PluginDocument.cpp:
2064         (WebCore::PluginDocument::detach):
2065         * html/PluginDocument.h:
2066
2067 2010-10-06  Vincent Scheib  <scheib@chromium.org>
2068
2069         Reviewed by Kenneth Russell.
2070
2071         [chromium] Thumbnail generation asserts on zero alpha values.
2072         https://bugs.webkit.org/show_bug.cgi?id=47292
2073
2074         Test: Tested manually by running debug mode, and analyzing in PIX.
2075
2076         * platform/graphics/chromium/LayerRendererChromium.cpp:
2077         (WebCore::LayerRendererChromium::drawLayers):
2078
2079 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
2080
2081         Unreviewed, trying to fix chromium Windows build.
2082
2083         Explicitly give the parameter value that has a default parameter value.
2084
2085         * page/DOMWindow.cpp:
2086         (WebCore::DOMWindow::requestFileSystem):
2087         * workers/WorkerContext.cpp:
2088         (WebCore::WorkerContext::requestFileSystem):
2089
2090 2010-10-06  Darin Adler  <darin@apple.com>
2091
2092         Try to fix Windows build.
2093
2094         * platform/graphics/cg/ColorCG.cpp:
2095         (WebCore::cachedCGColor): Put in braces to make the Windows compiler
2096         happy with this file.
2097
2098         * platform/graphics/cg/ImageCG.cpp: Added include of RetainPtr.h.
2099
2100 2010-10-06  Darin Adler  <darin@apple.com>
2101
2102         Reviewed by Alexey Proskuryakov.
2103
2104         Cache CGColor as we do NSColor
2105         https://bugs.webkit.org/show_bug.cgi?id=47226
2106
2107         This fixes performance problems on certain web pages that use
2108         multiple colors. Once in the past we were using NSColor. Now that
2109         we are using CGColor, we need the same sort of caching that we have
2110         for NSColor.
2111
2112         One example: <http://results.active.com/uploads/html/100759.html>.
2113
2114         * WebCore.xcodeproj/project.pbxproj: Add GraphicsContextCG.h.
2115
2116         * platform/graphics/Color.h: Replace createCGColor with cachedCGColor.
2117
2118         * platform/graphics/cg/ColorCG.cpp:
2119         (WebCore::cachedCGColorSpace): Added.
2120         (WebCore::leakCGColor): Added. 
2121         (WebCore::cachedCGColor): Added.
2122
2123         * platform/graphics/cg/GraphicsContextCG.cpp:
2124         (WebCore::setCGFillColor): Use cachedCGColor.
2125         (WebCore::setCGStrokeColor): Ditto.
2126         (WebCore::GraphicsContext::fillRect): Ditto.
2127         (WebCore::GraphicsContext::setPlatformShadow): Ditto.
2128
2129         * platform/graphics/cg/GraphicsContextCG.h: Added.
2130         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
2131         Moved the color space functions here.
2132
2133         * platform/graphics/cg/ImageCG.cpp: Tweaked headers and formatting.
2134
2135         * platform/graphics/mac/ColorMac.mm: Removed the createCGColor
2136         function.
2137
2138         * platform/graphics/mac/GraphicsContextMac.mm:
2139         (WebCore::drawFocusRingToContext): Removed innappropriate use of
2140         RetainPtr for the arguments to this function.
2141         (WebCore::GraphicsContext::drawFocusRing): Use cachedCGColor.
2142
2143         * platform/graphics/mac/GraphicsLayerCA.mm:
2144         (WebCore::setLayerBorderColor): Use cachedCGColor.
2145         (WebCore::setLayerBackgroundColor): Ditto.
2146         * platform/graphics/win/GraphicsContextCGWin.cpp:
2147         (WebCore::GraphicsContext::drawFocusRing): Ditto.
2148         * platform/graphics/win/GraphicsLayerCACF.cpp:
2149         (WebCore::setLayerBorderColor): Ditto.
2150         (WebCore::setLayerBackgroundColor): Ditto.
2151
2152         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2153         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Use
2154         CGColorCreateGenericRGB for color used only for debugging.
2155         * platform/graphics/win/WebTiledLayer.cpp:
2156         (WebCore::WebTiledLayer::addTile): Ditto.
2157
2158 2010-10-06  Peter Kasting  <pkasting@google.com>
2159
2160         Reviewed by James Robinson
2161
2162         ScrollViews without scrollbars should not eat scroll events
2163         https://bugs.webkit.org/show_bug.cgi?id=47036
2164
2165         * platform/ScrollView.cpp:
2166         (WebCore::ScrollView::wheelEvent):
2167
2168 2010-10-06  Daniel Bates  <dbates@rim.com>
2169
2170         Reviewed by Darin Adler.
2171
2172         ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet
2173         when <frameset> has CSS content property
2174         https://bugs.webkit.org/show_bug.cgi?id=47314
2175
2176         Fixes an issue where sending a mouse event to an HTML Frameset Element that
2177         whose content was replaced via the CSS content property causes an assertion
2178         failure.
2179
2180         By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as
2181         to support resizing a frame within the set. When a <frameset> specifies an
2182         image in its CSS content property we create a generic render object (RenderObject)
2183         for the frame set instead of a RenderFrameSet object. The event handler code
2184         in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer
2185         to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement
2186         must check that its renderer is of type RenderFrameSet before casting to this type.
2187
2188         Test: fast/frames/crash-frameset-CSS-content-property.html
2189
2190         * html/HTMLFrameSetElement.cpp:
2191         (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is
2192         of type RenderFrameSet before casting it as such.
2193
2194 2010-10-06  Albert J. Wong  <ajwong@chromium.org>
2195
2196         Reviewed by Andreas Kling.
2197
2198         r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false.
2199         https://bugs.webkit.org/show_bug.cgi?id=47315
2200
2201         Compile fix. No tests.
2202
2203         * platform/graphics/filters/FETile.cpp:
2204         (WebCore::FETile::apply):
2205
2206 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
2207
2208         Unreviewed, fixing screwed up ChangeLogs.
2209
2210 2010-10-06  Kinuko Yasuda  <kinuko@chromium.org>
2211
2212         Reviewed by David Levin.
2213
2214         Add FileSystemSync implementation for Worker
2215         https://bugs.webkit.org/show_bug.cgi?id=47044
2216
2217         Tests: fast/filesystem/async-operations.html
2218                fast/filesystem/workers/async-operations.html
2219                fast/filesystem/workers/sync-operations.html
2220
2221         * GNUmakefile.am:
2222         * WebCore.gypi:
2223         * WebCore.pro:
2224         * WebCore.vcproj/WebCore.vcproj:
2225         * WebCore.xcodeproj/project.pbxproj:
2226         * bindings/generic/RuntimeEnabledFeatures.h: Removed
2227         requestFileSystemEnabled() as I changed the idl/generator to
2228         use fileSystemEnabled for all the FileSystem related features.
2229         * fileapi/DOMFileSystem.cpp:
2230         * fileapi/DOMFileSystem.h:
2231         * fileapi/DOMFileSystemBase.cpp:
2232         (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem.
2233         (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem.
2234         (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem.
2235         (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem.
2236         (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem.
2237         (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem.
2238         (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem.
2239         (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem.
2240         (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem.
2241         * fileapi/DOMFileSystemBase.h:
2242         * fileapi/DOMFileSystemSync.h:
2243         * fileapi/DirectoryEntry.cpp:
2244         (WebCore::DirectoryEntry::DirectoryEntry): Updated to call
2245         DOMFileSystemBase's method instead of DOMFileSystem's one.
2246         (WebCore::DirectoryEntry::getFile): Ditto.
2247         (WebCore::DirectoryEntry::getDirectory): Ditto.
2248         * fileapi/DirectoryEntry.h:
2249         * fileapi/DirectoryEntrySync.cpp:
2250         (WebCore::DirectoryEntrySync::getFile): Implemented.
2251         (WebCore::DirectoryEntrySync::getDirectory): Implemented.
2252         * fileapi/DirectoryReader.h:
2253         * fileapi/DirectoryReaderSync.cpp:
2254         (WebCore::DirectoryReaderSync::readEntries): Implemented.
2255         * fileapi/Entry.cpp:
2256         (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method.
2257         (WebCore::Entry::getMetadata): Ditto.
2258         (WebCore::Entry::moveTo): Ditto.
2259         (WebCore::Entry::copyTo): Ditto.
2260         (WebCore::Entry::remove): Ditto.
2261         (WebCore::Entry::getParent): Ditto.
2262         * fileapi/Entry.h:
2263         * fileapi/Entry.idl:
2264         * fileapi/EntryArraySync.cpp:
2265         (WebCore::EntryArraySync::create): Added.
2266         * fileapi/EntryArraySync.h:
2267         * fileapi/EntryBase.h:
2268         (WebCore::EntryBase::filesystem): Added.
2269         * fileapi/EntrySync.cpp:
2270         (WebCore::EntrySync::create): Implemented.
2271         (WebCore::EntrySync::getMetadata): Implemented.
2272         (WebCore::EntrySync::moveTo): Implemented.
2273         (WebCore::EntrySync::copyTo): Implemented.
2274         (WebCore::EntrySync::remove): Implemented.
2275         * fileapi/EntrySync.h:
2276         * fileapi/FileEntry.cpp:
2277         * fileapi/FileEntry.h:
2278         * fileapi/FileSystemCallbacks.cpp:
2279         (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase
2280         instead of DOMFileSystem.
2281         (WebCore::EntryCallbacks::EntryCallbacks): Ditto.
2282         (WebCore::EntriesCallbacks::create): Ditto.
2283         (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
2284         * fileapi/FileSystemCallbacks.h:
2285         * fileapi/LocalFileSystem.cpp:
2286         (WebCore::LocalFileSystem::requestFileSystem): Added synchronous
2287         parameter.
2288         * fileapi/LocalFileSystem.h:
2289         * fileapi/Metadata.h:
2290         * fileapi/SyncCallbackHelper.h: Added. This defines a helper template
2291         for synchronous implementation.
2292         * page/DOMWindow.idl:
2293         * platform/AsyncFileSystem.h:
2294         (WebCore::AsyncFileSystem::waitCompletion): Added.
2295         * workers/WorkerContext.cpp:
2296         (WebCore::WorkerContext::requestFileSystemSync): Added.
2297         * workers/WorkerContext.h:
2298         * workers/WorkerContext.idl:
2299
2300 2010-10-06  Andrei Popescu  <andreip@google.com>
2301
2302         Reviewed by Jeremy Orlow.
2303
2304         IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts.
2305         https://bugs.webkit.org/show_bug.cgi?id=47245
2306
2307         Recover metadata properly by adding abort tasks that
2308         are run when a transaction aborts.
2309  
2310         * storage/IDBDatabase.cpp:
2311         (WebCore::IDBDatabase::createObjectStore):
2312         (WebCore::IDBDatabase::removeObjectStore):
2313         * storage/IDBDatabaseBackendImpl.cpp:
2314         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
2315         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
2316         (WebCore::IDBDatabaseBackendImpl::setVersion):
2317         (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):
2318         (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap):
2319         (WebCore::IDBDatabaseBackendImpl::resetVersion):
2320         * storage/IDBDatabaseBackendImpl.h:
2321         * storage/IDBObjectStoreBackendImpl.cpp:
2322         (WebCore::IDBObjectStoreBackendImpl::createIndex):
2323         (WebCore::IDBObjectStoreBackendImpl::removeIndex):
2324         (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap):
2325         (WebCore::IDBObjectStoreBackendImpl::addIndexToMap):
2326         * storage/IDBObjectStoreBackendImpl.h:
2327         * storage/IDBTransactionBackendImpl.cpp:
2328         (WebCore::IDBTransactionBackendImpl::scheduleTask):
2329         (WebCore::IDBTransactionBackendImpl::abort):
2330         * storage/IDBTransactionBackendImpl.h:
2331         * storage/IDBTransactionBackendInterface.h:
2332         * storage/IDBTransactionCoordinator.h:
2333
2334 2010-10-06  David Hyatt  <hyatt@apple.com>
2335
2336         Reviewed by Dan Bernstein.
2337
2338         https://bugs.webkit.org/show_bug.cgi?id=47306
2339         
2340         Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware.
2341
2342         * rendering/RenderBlockLineLayout.cpp:
2343         (WebCore::RenderBlock::determineStartPosition):
2344         (WebCore::RenderBlock::determineEndPosition):
2345         (WebCore::RenderBlock::matchedEndLine):
2346
2347 22010-10-06  Chris Fleizach  <cfleizach@apple.com>
2348
2349         Reviewed by Beth Dakin.
2350
2351         REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks.
2352         https://bugs.webkit.org/show_bug.cgi?id=45832
2353
2354         Test: fast/events/mouse-focus-imagemap.html
2355
2356         * html/HTMLAreaElement.cpp:
2357         (WebCore::HTMLAreaElement::isKeyboardFocusable):
2358         (WebCore::HTMLAreaElement::isMouseFocusable):
2359         (WebCore::HTMLAreaElement::isFocusable):
2360         (WebCore::HTMLAreaElement::updateFocusAppearance):
2361         * html/HTMLAreaElement.h:
2362
2363 010-10-06  David Hyatt  <hyatt@apple.com>
2364
2365         Reviewed by Dan Bernstein.
2366
2367         https://bugs.webkit.org/show_bug.cgi?id=47303
2368
2369         Convert layoutInlineChildren to be block-flow-aware.  None of the functions it calls are patched yet.
2370
2371         * rendering/RenderBlock.cpp:
2372         (WebCore::RenderBlock::layoutBlock):
2373         * rendering/RenderBlock.h:
2374         (WebCore::RenderBlock::forceLayoutInlineChildren):
2375         * rendering/RenderBlockLineLayout.cpp:
2376         (WebCore::RenderBlock::layoutInlineChildren):
2377         (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
2378         (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
2379         (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
2380         (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
2381         * rendering/RenderBox.h:
2382         (WebCore::RenderBox::logicalLeftLayoutOverflow):
2383         (WebCore::RenderBox::logicalRightLayoutOverflow):
2384         (WebCore::RenderBox::logicalLeftVisualOverflow):
2385         (WebCore::RenderBox::logicalRightVisualOverflow):
2386
2387 2010-10-06  David Hyatt  <hyatt@apple.com>
2388
2389         Reviewed by Dan Bernstein.
2390
2391         https://bugs.webkit.org/show_bug.cgi?id=47298
2392         
2393         Rename blockHeight to blockLogicalHeight.
2394
2395         * rendering/RenderBlock.cpp:
2396         (WebCore::RenderBlock::markLinesDirtyInBlockRange):
2397         * rendering/RenderBlockLineLayout.cpp:
2398         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
2399         (WebCore::RenderBlock::layoutInlineChildren):
2400         (WebCore::RenderBlock::determineStartPosition):
2401         (WebCore::RenderBlock::determineEndPosition):
2402         (WebCore::RenderBlock::matchedEndLine):
2403         * rendering/RootInlineBox.cpp:
2404         (WebCore::RootInlineBox::RootInlineBox):
2405         (WebCore::RootInlineBox::adjustPosition):
2406         * rendering/RootInlineBox.h:
2407         (WebCore::RootInlineBox::blockLogicalHeight):
2408         (WebCore::RootInlineBox::setBlockLogicalHeight):
2409         * rendering/svg/SVGRootInlineBox.cpp:
2410         (WebCore::SVGRootInlineBox::layoutRootBox):
2411
2412 2010-10-05  James Robinson  <jamesr@chromium.org>
2413
2414         Reviewed by Kenneth Russell.
2415
2416         [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia
2417         https://bugs.webkit.org/show_bug.cgi?id=47242
2418
2419         Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData
2420         since that call mutates the software backing store.
2421
2422         Test: fast/canvas/canvas-putImageData.html
2423
2424         * platform/graphics/skia/ImageBufferSkia.cpp:
2425         (WebCore::ImageBuffer::putUnmultipliedImageData):
2426
2427 2010-10-06  Alexey Proskuryakov  <ap@apple.com>
2428
2429         Reviewed by Brady Eidson.
2430
2431         https://bugs.webkit.org/show_bug.cgi?id=47294
2432         <rdar://problem/8425647>Application cache isn't consulted on redirect
2433
2434         Test: http/tests/appcache/main-resource-redirect.html
2435
2436         * loader/MainResourceLoader.cpp:
2437         (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now
2438         (presumably after a redirect is served by appcache), switch to it.
2439         (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL.
2440
2441         * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest
2442         reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now.
2443
2444 2010-10-06  Alejandro G. Castro  <alex@igalia.com>
2445
2446         Reviewed by Dirk Schulze.
2447
2448         ContextShadow should not use the blur radius as kernel size of the
2449         box blurs
2450         https://bugs.webkit.org/show_bug.cgi?id=46918
2451
2452         Calculate the size of the kernel in the blur algorithm using the radius instead
2453         of using the blur distance directly. Change the name of the variables to match the
2454         terminology in the spec.
2455
2456         * platform/graphics/ContextShadow.cpp:
2457         (WebCore::ContextShadow::ContextShadow):
2458         (WebCore::ContextShadow::clear):
2459         (WebCore::ContextShadow::blurLayerImage):
2460         (WebCore::ContextShadow::calculateLayerBoundingRect):
2461         * platform/graphics/ContextShadow.h:
2462
2463 2010-10-06  Andras Becsi  <abecsi@webkit.org>
2464
2465         Reviewed by Kenneth Rohde Christiansen.
2466
2467         [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate 
2468         to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests.
2469         https://bugs.webkit.org/show_bug.cgi?id=47284
2470
2471         No new tests needed.
2472
2473         * platform/network/qt/SocketStreamHandlePrivate.h:
2474         * platform/network/qt/SocketStreamHandleQt.cpp:
2475         (WebCore::SocketStreamHandlePrivate::socketSentData):
2476
2477 2010-10-06  David Hyatt  <hyatt@apple.com>
2478
2479         Reviewed by Dan Bernstein.
2480
2481         https://bugs.webkit.org/show_bug.cgi?id=47285
2482
2483         Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
2484         Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
2485         as appropriate.
2486
2487         * css/CSSComputedStyleDeclaration.cpp:
2488         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2489         * css/CSSParser.cpp:
2490         (WebCore::CSSParser::parseValue):
2491         * css/CSSPrimitiveValueMappings.h:
2492         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2493         (WebCore::CSSPrimitiveValue::operator WritingMode):
2494         (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
2495         * css/CSSProperty.cpp:
2496         (WebCore::resolveToPhysicalProperty):
2497         (WebCore::CSSProperty::resolveDirectionAwareProperty):
2498         * css/CSSProperty.h:
2499         * css/CSSPropertyNames.in:
2500         * css/CSSStyleSelector.cpp:
2501         (WebCore::CSSStyleSelector::styleForDocument):
2502         (WebCore::CSSStyleSelector::adjustRenderStyle):
2503         (WebCore::CSSStyleSelector::applyDeclarations):
2504         (WebCore::CSSStyleSelector::applyProperty):
2505         * css/CSSValueKeywords.in:
2506         * rendering/RenderBlock.cpp:
2507         (WebCore::RenderBlock::MarginInfo::MarginInfo):
2508         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
2509         (WebCore::RenderBlock::setLogicalLeftForChild):
2510         (WebCore::RenderBlock::setLogicalTopForChild):
2511         (WebCore::RenderBlock::layoutBlockChild):
2512         (WebCore::RenderBlock::insertFloatingObject):
2513         (WebCore::RenderBlock::addOverhangingFloats):
2514         (WebCore::RenderBlock::addIntrudingFloats):
2515         (WebCore::RenderBlock::collapsedMarginBeforeForChild):
2516         (WebCore::RenderBlock::collapsedMarginAfterForChild):
2517         (WebCore::RenderBlock::marginBeforeForChild):
2518         (WebCore::RenderBlock::marginAfterForChild):
2519         (WebCore::RenderBlock::marginStartForChild):
2520         (WebCore::RenderBlock::marginEndForChild):
2521         (WebCore::RenderBlock::setMarginStartForChild):
2522         (WebCore::RenderBlock::setMarginEndForChild):
2523         (WebCore::RenderBlock::setMarginBeforeForChild):
2524         (WebCore::RenderBlock::setMarginAfterForChild):
2525         (WebCore::RenderBlock::marginValuesForChild):
2526         * rendering/RenderBlock.h:
2527         (WebCore::RenderBlock::logicalWidthForChild):
2528         (WebCore::RenderBlock::logicalHeightForChild):
2529         (WebCore::RenderBlock::logicalTopForChild):
2530         (WebCore::RenderBlock::logicalRightOffsetForContent):
2531         (WebCore::RenderBlock::logicalLeftOffsetForContent):
2532         (WebCore::RenderBlock::logicalTopForFloat):
2533         (WebCore::RenderBlock::logicalBottomForFloat):
2534         (WebCore::RenderBlock::logicalLeftForFloat):
2535         (WebCore::RenderBlock::logicalRightForFloat):
2536         (WebCore::RenderBlock::logicalWidthForFloat):
2537         (WebCore::RenderBlock::setLogicalTopForFloat):
2538         (WebCore::RenderBlock::setLogicalLeftForFloat):
2539         (WebCore::RenderBlock::setLogicalHeightForFloat):
2540         (WebCore::RenderBlock::setLogicalWidthForFloat):
2541         * rendering/RenderBox.cpp:
2542         (WebCore::RenderBox::marginBefore):
2543         (WebCore::RenderBox::marginAfter):
2544         (WebCore::RenderBox::marginStart):
2545         (WebCore::RenderBox::marginEnd):
2546         (WebCore::RenderBox::setMarginStart):
2547         (WebCore::RenderBox::setMarginEnd):
2548         (WebCore::RenderBox::setMarginBefore):
2549         (WebCore::RenderBox::setMarginAfter):
2550         (WebCore::RenderBox::styleDidChange):
2551         (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
2552         (WebCore::RenderBox::computeLogicalWidth):
2553         (WebCore::RenderBox::computeLogicalHeight):
2554         (WebCore::RenderBox::availableLogicalHeightUsing):
2555         (WebCore::RenderBox::avoidsFloats):
2556         * rendering/RenderBox.h:
2557         (WebCore::RenderBox::logicalLeft):
2558         (WebCore::RenderBox::logicalTop):
2559         (WebCore::RenderBox::logicalWidth):
2560         (WebCore::RenderBox::logicalHeight):
2561         (WebCore::RenderBox::setLogicalLeft):
2562         (WebCore::RenderBox::setLogicalTop):
2563         (WebCore::RenderBox::setLogicalWidth):
2564         (WebCore::RenderBox::setLogicalHeight):
2565         (WebCore::RenderBox::setLogicalLocation):
2566         (WebCore::RenderBox::contentLogicalWidth):
2567         (WebCore::RenderBox::contentLogicalHeight):
2568         (WebCore::RenderBox::stretchesToViewport):
2569         (WebCore::RenderBox::intrinsicLogicalWidth):
2570         (WebCore::RenderBox::intrinsicLogicalHeight):
2571         (WebCore::RenderBox::availableWidth):
2572         (WebCore::RenderBox::availableHeight):
2573         (WebCore::RenderBox::scrollbarLogicalHeight):
2574         (WebCore::RenderBox::isWritingModeRoot):
2575         * rendering/RenderFieldset.cpp:
2576         (WebCore::RenderFieldset::paintBoxDecorations):
2577         (WebCore::RenderFieldset::paintMask):
2578         * rendering/RenderImage.cpp:
2579         (WebCore::RenderImage::computeReplacedLogicalWidth):
2580         (WebCore::RenderImage::computeReplacedLogicalHeight):
2581         * rendering/RenderInline.cpp:
2582         (WebCore::RenderInline::marginLeft):
2583         (WebCore::RenderInline::marginRight):
2584         (WebCore::RenderInline::marginTop):
2585         (WebCore::RenderInline::marginBottom):
2586         * rendering/RenderTableCell.cpp:
2587         (WebCore::RenderTableCell::paddingTop):
2588         (WebCore::RenderTableCell::paddingBottom):
2589         (WebCore::RenderTableCell::paddingLeft):
2590         (WebCore::RenderTableCell::paddingRight):
2591         * rendering/RenderView.h:
2592         (WebCore::RenderView::viewLogicalWidth):
2593         (WebCore::RenderView::viewLogicalHeight):
2594         * rendering/RootInlineBox.cpp:
2595         (WebCore::RootInlineBox::RootInlineBox):
2596         * rendering/style/RenderStyle.cpp:
2597         (WebCore::RenderStyle::diff):
2598         (WebCore::RenderStyle::logicalWidth):
2599         (WebCore::RenderStyle::logicalHeight):
2600         (WebCore::RenderStyle::logicalMinWidth):
2601         (WebCore::RenderStyle::logicalMaxWidth):
2602         (WebCore::RenderStyle::logicalMinHeight):
2603         (WebCore::RenderStyle::logicalMaxHeight):
2604         (WebCore::RenderStyle::borderBeforeWidth):
2605         (WebCore::RenderStyle::borderAfterWidth):
2606         (WebCore::RenderStyle::borderStartWidth):
2607         (WebCore::RenderStyle::borderEndWidth):
2608         (WebCore::RenderStyle::marginBefore):
2609         (WebCore::RenderStyle::marginAfter):
2610         (WebCore::RenderStyle::marginBeforeUsing):
2611         (WebCore::RenderStyle::marginAfterUsing):
2612         (WebCore::RenderStyle::marginStart):
2613         (WebCore::RenderStyle::marginEnd):
2614         (WebCore::RenderStyle::marginStartUsing):
2615         (WebCore::RenderStyle::marginEndUsing):
2616         (WebCore::RenderStyle::paddingBefore):
2617         (WebCore::RenderStyle::paddingAfter):
2618         (WebCore::RenderStyle::paddingStart):
2619         (WebCore::RenderStyle::paddingEnd):
2620         * rendering/style/RenderStyle.h:
2621         (WebCore::InheritedFlags::setBitDefaults):
2622         (WebCore::InheritedFlags::writingMode):
2623         (WebCore::InheritedFlags::isHorizontalWritingMode):
2624         (WebCore::InheritedFlags::setWritingMode):
2625         (WebCore::InheritedFlags::initialWritingMode):
2626         * rendering/style/RenderStyleConstants.h:
2627         * rendering/style/SVGRenderStyle.h:
2628         (WebCore::SVGRenderStyle::initialWritingMode):
2629         (WebCore::SVGRenderStyle::setWritingMode):
2630         (WebCore::SVGRenderStyle::writingMode):
2631         * rendering/style/SVGRenderStyleDefs.h:
2632
2633 2010-10-06  Sheriff Bot  <webkit.review.bot@gmail.com>
2634
2635         Unreviewed, rolling out r69201.
2636         http://trac.webkit.org/changeset/69201
2637         https://bugs.webkit.org/show_bug.cgi?id=47279
2638
2639         This change broke the WebKitGTK+ build for GTK+ 2.0.
2640         (Requested by mrobinson on #webkit).
2641
2642         * platform/gtk/GtkVersioning.c:
2643         (getDefaultGDKPointerDevice):
2644         * platform/gtk/GtkVersioning.h:
2645         * platform/gtk/PlatformScreenGtk.cpp:
2646         (WebCore::getVisual):
2647         (WebCore::screenAvailableRect):
2648
2649 2010-10-06  Stephen White  <senorblanco@chromium.org>
2650
2651         Reviewed by James Robinson.
2652         https://bugs.webkit.org/show_bug.cgi?id=47282
2653
2654         Robustify the creation of SharedGraphicsContext3D against shader
2655         compilation failures.
2656
2657         Covered by any canvas 2D layout test, when opened in chrome with 
2658         --enable-accelerated-2d-canvas --in-process-webgl.
2659
2660         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2661         (WebCore::SharedGraphicsContext3D::create):
2662         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2663         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2664
2665 2010-10-06  Luiz Agostini  <luiz.agostini@openbossa.org>
2666
2667         Reviewed by Kenneth Rohde Christiansen.
2668
2669         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
2670         https://bugs.webkit.org/show_bug.cgi?id=47268
2671
2672         Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
2673
2674         * dom/ViewportArguments.cpp:
2675         (WebCore::findConfigurationForViewportData):
2676         * dom/ViewportArguments.h:
2677
2678 2010-10-06  Renata Hodovan  <reni@inf.u-szeged.hu>
2679
2680         Reviewed by Nikolas Zimmermann.
2681
2682         SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change.
2683         https://bugs.webkit.org/show_bug.cgi?id=47181
2684
2685         Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent.
2686
2687         Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html
2688                svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html
2689
2690         * svg/SVGFEMergeNodeElement.cpp:
2691         (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
2692         * svg/SVGFEMergeNodeElement.h:
2693
2694 2010-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2695
2696         Reviewed by Martin Robinson.
2697
2698         [GTK] Remove unused code from gtk2drawing.c
2699         https://bugs.webkit.org/show_bug.cgi?id=47086
2700
2701         gtk2drawing.c was copied from mozilla and contains a lot of code that is not
2702         used by WebKit. Most of that unused code is uncompatible with gtk3, so
2703         removing it will make easier porting to gtk3.
2704
2705         * platform/gtk/gtk2drawing.c:
2706         (moz_gtk_get_widget_border):
2707         (moz_gtk_widget_paint):
2708         (moz_gtk_destroy_theme_parts_widgets):
2709         * platform/gtk/gtkdrawing.h:
2710
2711 2010-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2712
2713         Reviewed by Xan Lopez.
2714
2715         [GTK] Use pixbufs instead of pixmaps when creating platform cursors
2716         https://bugs.webkit.org/show_bug.cgi?id=47087
2717
2718         gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a
2719         pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead
2720         for both gtk2 and gtk3.
2721
2722         * platform/gtk/CursorGtk.cpp:
2723         (WebCore::createNamedCursor):
2724         * platform/gtk/GtkVersioning.c:
2725         (gdk_cairo_format_for_content):
2726         (gdk_cairo_surface_coerce_to_image):
2727         (convert_alpha):
2728         (convert_no_alpha):
2729         (gdk_pixbuf_get_from_surface):
2730         * platform/gtk/GtkVersioning.h:
2731
2732 2010-10-06  Pavel Podivilov  <podivilov@chromium.org>
2733
2734         Reviewed by Yury Semikhatsky.
2735
2736         Web Inspector: add event listener breakpoints sidebar pane
2737         https://bugs.webkit.org/show_bug.cgi?id=46738
2738
2739         * inspector/front-end/BreakpointManager.js:
2740         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
2741         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo):
2742         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
2743         (WebInspector.NativeBreakpoint):
2744         (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet):
2745         (WebInspector.NativeBreakpoint.prototype._setOnBackend):
2746         * inspector/front-end/BreakpointsSidebarPane.js:
2747         (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
2748         (WebInspector.BreakpointItem):
2749         (WebInspector.EventListenerBreakpointsSidebarPane):
2750         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
2751         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox):
2752         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
2753         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked):
2754         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged):
2755         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
2756         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
2757         * inspector/front-end/EventListenersSidebarPane.js:
2758         ():
2759         * inspector/front-end/PropertiesSection.js:
2760         (WebInspector.PropertiesSection):
2761         * inspector/front-end/ScriptsPanel.js:
2762         (WebInspector.ScriptsPanel):
2763         (WebInspector.ScriptsPanel.prototype.reset):
2764         * inspector/front-end/inspector.css:
2765         (.section .properties, .event-bar .event-properties):
2766         (.section.expanded .properties, .event-bar.expanded .event-properties):
2767         (ol.properties-tree):
2768         (ol.properties-tree li):
2769         (ol.properties-tree li.parent):
2770         (ol.properties-tree li.parent::before):
2771         (ol.properties-tree li.parent.expanded::before):
2772         (ol.properties-tree li .info):
2773         (ol.properties-tree ol, .stack-trace ol, ol.stack-trace):
2774         (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
2775         (ol.stack-trace):
2776         (.event-listener-breakpoints .event-category):
2777         (ol.event-listener-breakpoints.properties-tree .children li):
2778         (.event-listener-breakpoints .checkbox-elem):
2779         * inspector/front-end/inspector.js:
2780         (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
2781         (WebInspector.createXHRBreakpointsSidebarPane):
2782
2783 2010-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2784
2785         Reviewed by Xan Lopez.
2786
2787         [GTK] Port to gtk+3 (2.91.0)
2788         https://bugs.webkit.org/show_bug.cgi?id=47249
2789
2790         Do not use GdkDrawable deprecated API
2791
2792         Some methods of GdkDrawable are deprecated in gtk2 and have been
2793         remmoved in gtk3. Equivalent API has been added to GdkWindow.
2794
2795         * platform/gtk/GtkVersioning.c:
2796         (getDefaultGDKPointerDevice):
2797         * platform/gtk/GtkVersioning.h:
2798         * platform/gtk/PlatformScreenGtk.cpp:
2799         (WebCore::getVisual):
2800         (WebCore::screenAvailableRect):
2801
2802 2010-10-06  Ryuan Choi  <ryuan.choi@samsung.com>
2803
2804         Reviewed by Antonio Gomes.
2805
2806         [EFL] Support Progress Tag
2807         https://bugs.webkit.org/show_bug.cgi?id=45951
2808
2809         Implement to render progress tag.
2810
2811         No new tests. Existing tests in fast/dom/HTMLProgressElement.
2812
2813         * platform/efl/RenderThemeEfl.cpp:
2814         (WebCore::RenderThemeEfl::paintThemePart):
2815         (WebCore::RenderThemeEfl::edjeGroupFromFormType):
2816         (WebCore::RenderThemeEfl::adjustProgressBarStyle):
2817         (WebCore::RenderThemeEfl::paintProgressBar):
2818         * platform/efl/RenderThemeEfl.h:
2819
2820 2010-10-06  Patrick Gansterer  <paroga@webkit.org>
2821
2822         Reviewed by Darin Adler.
2823
2824         Add KURL::protocolIsData()
2825         https://bugs.webkit.org/show_bug.cgi?id=47219
2826
2827         * page/Page.cpp:
2828         (WebCore::Page::userStyleSheetLocationChanged):
2829         * page/SecurityOrigin.cpp:
2830         (WebCore::SecurityOrigin::taintsCanvas):
2831         * page/XSSAuditor.cpp:
2832         (WebCore::XSSAuditor::findInRequest):
2833         * platform/KURL.h:
2834         (WebCore::KURL::protocolIsData):
2835         * platform/network/curl/ResourceHandleManager.cpp:
2836         (WebCore::ResourceHandleManager::dispatchSynchronousJob):
2837         (WebCore::ResourceHandleManager::startJob):
2838         * platform/network/win/ResourceHandleWin.cpp:
2839         (WebCore::ResourceHandle::start):
2840         (WebCore::ResourceHandle::fileLoadTimer):
2841
2842 2010-10-06  Alexander Pavlov  <apavlov@chromium.org>
2843
2844         Reviewed by Pavel Feldman.
2845
2846         CSSParser: Enable rule selector source range extraction.
2847         API modification followed by clients.
2848         https://bugs.webkit.org/show_bug.cgi?id=46367
2849
2850         Some code removal suggested by Darin Adler.
2851
2852         * css/CSSGrammar.y:
2853         * css/CSSParser.cpp:
2854         (WebCore::CSSParser::CSSParser):
2855         (WebCore::CSSParser::parseSheet):
2856         (WebCore::CSSParser::parseDeclaration):
2857         (WebCore::CSSParser::createStyleRule):
2858         (WebCore::CSSParser::markSelectorListStart):
2859         (WebCore::CSSParser::markSelectorListEnd):
2860         (WebCore::CSSParser::markRuleBodyStart):
2861         (WebCore::CSSParser::markRuleBodyEnd):
2862         (WebCore::CSSParser::markPropertyStart):
2863         (WebCore::CSSParser::markPropertyEnd):
2864         * css/CSSParser.h:
2865         (WebCore::CSSParser::resetSelectorListMarks):
2866         (WebCore::CSSParser::resetRuleBodyMarks):
2867         (WebCore::CSSParser::resetPropertyMarks):
2868         * css/CSSPropertySourceData.cpp:
2869         * css/CSSPropertySourceData.h:
2870         (WebCore::CSSRuleSourceData::create):
2871         * inspector/InspectorCSSStore.cpp:
2872         (WebCore::InspectorCSSStore::getRuleSourceData):
2873         (WebCore::InspectorCSSStore::extractRanges):
2874         (WebCore::InspectorCSSStore::getStyleAttributeRanges):
2875         * inspector/InspectorCSSStore.h:
2876         * inspector/InspectorDOMAgent.cpp:
2877         (WebCore::InspectorDOMAgent::getStyleSourceData):
2878
2879 2010-10-06  Dirk Schulze  <krit@webkit.org>
2880
2881         Added reviewer to commit r69187.
2882
2883 2010-10-06  Dirk Schulze  <krit@webkit.org>
2884
2885         Reviewed by Nikolas Zimmermann.
2886
2887         SVG feMorphology - big radii cause huge ImageBuffer sizes
2888         https://bugs.webkit.org/show_bug.cgi?id=47263
2889
2890         The current code in FEMorphology::determineAbsolutePaintRect calculates the smallest paint rect by inflate the paint rect
2891         of a previous effect with the radius. This was meant as an optimization, but I forgot to clip the calculated image size
2892         by the maximal effect size. This caused huge image sizes for big radii.
2893
2894         This is covered by svg/filters/feMorphology-invalid-radius.svg and fixes the crashes on Windows and Snow Leopard bots.
2895
2896         * platform/graphics/filters/FEMorphology.cpp:
2897         (WebCore::FEMorphology::determineAbsolutePaintRect):
2898
2899 2010-10-06  Alejandro G. Castro  <alex@igalia.com>
2900
2901         Reviewed by Dirk Schulze.
2902
2903         Fixed crash in gtk bots (filter-empty-g.svg) after r69181.
2904
2905         * rendering/RenderSVGResourceFilter.cpp:
2906         (WebCore::RenderSVGResourceFilter::postApplyResource):
2907
2908 2010-10-06  Antonio Gomes  <agomes@rim.org>
2909
2910         Reviewed by Kenneth Rohde Christiansen.
2911
2912         Rename HitTestResult::rectFromPoint to rectForPoint
2913         https://bugs.webkit.org/show_bug.cgi?id=47261
2914
2915         As per Kenneth Christiansen request inhttps://bugs.webkit.org/show_bug.cgi?id=46336#c20.
2916
2917         * WebCore.exp.in:
2918         * dom/Document.cpp:
2919         (WebCore::Document::nodesFromRect):
2920         * rendering/EllipsisBox.cpp:
2921         (WebCore::EllipsisBox::nodeAtPoint):
2922         * rendering/HitTestResult.cpp:
2923         (WebCore::HitTestResult::addNodeToRectBasedTestResult):
2924         (WebCore::HitTestResult::rectForPoint):
2925         * rendering/HitTestResult.h:
2926         (WebCore::HitTestResult::rectForPoint):
2927         * rendering/InlineFlowBox.cpp:
2928         (WebCore::InlineFlowBox::nodeAtPoint):
2929         * rendering/InlineTextBox.cpp:
2930         (WebCore::InlineTextBox::nodeAtPoint):
2931         * rendering/RenderBlock.cpp:
2932         (WebCore::RenderBlock::nodeAtPoint):
2933         (WebCore::RenderBlock::hitTestColumns):
2934         * rendering/RenderBox.cpp:
2935         (WebCore::RenderBox::nodeAtPoint):
2936         * rendering/RenderLayer.cpp:
2937         (WebCore::RenderLayer::hitTestLayer):
2938         (WebCore::RenderLayer::hitTestChildLayerColumns):
2939         * rendering/RenderTable.cpp:
2940         (WebCore::RenderTable::nodeAtPoint):
2941         * rendering/RenderTableSection.cpp:
2942         (WebCore::RenderTableSection::nodeAtPoint):
2943
2944 2010-10-06  Dirk Schulze  <krit@webkit.org>
2945
2946         Reviewed by Martin Robinson.
2947
2948         SVGs with filters look grainy when scaled
2949         https://bugs.webkit.org/show_bug.cgi?id=5526
2950
2951         Fixed issues on Cairos shadow implementation after the changes to FilterEffects.
2952         Cairo calculates the inflation of the effect rect itself. Respect this for FEGaussianBlur.
2953         This is just a temporary solution, since Cairo and Qt will use ContextShadow soon.
2954
2955         * platform/graphics/GraphicsContext.h:
2956         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2957         (WebCore::drawBorderlessRectShadow):
2958         (WebCore::GraphicsContext::applyPlatformShadow):
2959         (WebCore::GraphicsContext::createShadowMask):
2960         (WebCore::GraphicsContext::drawTiledShadow):
2961         (WebCore::GraphicsContext::fillRoundedRect):
2962         * platform/graphics/filters/ImageBufferFilter.cpp:
2963         (WebCore::ImageBufferFilter::ImageBufferFilter):
2964         (WebCore::ImageBufferFilter::create):
2965         * platform/graphics/filters/ImageBufferFilter.h:
2966         (WebCore::ImageBufferFilter::filterRegion):
2967         (WebCore::ImageBufferFilter::sourceImageRect):
2968
2969 2010-10-06  Nikolas Zimmermann  <nzimmermann@rim.com>
2970
2971         Reviewed by Dirk Schulze.
2972
2973         Only execute first SVG text layout phase if needed
2974         https://bugs.webkit.org/show_bug.cgi?id=47254
2975
2976         The first SVG text layout phase which computes the per-character metrics and extracts
2977         the x/y/dx/dy/rotate values from the SVG DOM is currently executed upon every RenderSVGText::layout() call.
2978
2979         Optimize this, by only calling it:
2980         - if x/y/dx/dy/rotate value lists change
2981         - the style of a RenderSVGInlineText changes (eg. font-size changes influence metrics)
2982         - the text content of any of the children in the <text> subtree change
2983
2984         No change in layout tests, a pure performance change - covered by existing tests.
2985
2986         * rendering/RenderSVGResourceGradient.cpp:
2987         (WebCore::createMaskAndSwapContextForTextGradient): Adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
2988         (WebCore::clipToTextMask): Ditto.
2989         * rendering/SVGRenderSupport.cpp:
2990         * rendering/SVGRenderSupport.h: Move findTreeRootObject to RenderSVGText::locateRenderSVGTextAncestor().
2991         * rendering/svg/RenderSVGInline.cpp:
2992         (WebCore::RenderSVGInline::objectBoundingBox): adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
2993         (WebCore::RenderSVGInline::strokeBoundingBox): Ditto.
2994         (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto.
2995         (WebCore::RenderSVGInline::absoluteQuads): Ditto.
2996         * rendering/svg/RenderSVGInlineText.cpp:
2997         (WebCore::RenderSVGInlineText::styleDidChange): Call setNeedsPositioningValuesUpdate() on the RenderSVGText root object, if diff == StyleDifferenceLayout.
2998         * rendering/svg/RenderSVGText.cpp:
2999         (WebCore::RenderSVGText::RenderSVGText): Initialize m_needsPositioningValuesUpdate.
3000         (WebCore::RenderSVGText::locateRenderSVGTextAncestor): New helper function, moved from SVGRenderSupport, to a more sensible place.
3001         (WebCore::RenderSVGText::layout): Only execute the first SVG text layout phase, if m_needsPositioningValuesUpdate=true.
3002         * rendering/svg/RenderSVGText.h:
3003         (WebCore::RenderSVGText::setNeedsPositioningValuesUpdate):
3004         (WebCore::toRenderSVGText): Add new helper casting methods, like most other renderers have.
3005         * svg/SVGTextPositioningElement.cpp:
3006         (WebCore::updatePositioningValuesInRenderer):
3007         (WebCore::SVGTextPositioningElement::svgAttributeChanged): If x/y/dx/dy/rotate changes, call setNeedsPositioningValuesUpdate on the RenderSVGText root object.
3008         (WebCore::SVGTextPositioningElement::childrenChanged): If any children changes (addition, removal), do the same.
3009         * svg/SVGTextPositioningElement.h:
3010
3011 2010-10-05  Andrey Kosyakov  <caseq@chromium.org>
3012
3013         Reviewed by Yury Semikhatsky.
3014
3015         Web Inspector: [Extensions API] Expose access to resource bodies
3016         Added support for encoding resource in WebInspector.getResourceContent()
3017         https://bugs.webkit.org/show_bug.cgi?id=45953
3018
3019         * inspector/Inspector.idl: Added encoding parameter to getResourceContent()
3020         * inspector/InspectorController.cpp:
3021         (WebCore::InspectorController::getResourceContent):
3022         * inspector/InspectorController.h:
3023         * inspector/InspectorResource.cpp: Added sourceBytes() to return encoded representation of resource's binary body.
3024         (WebCore::InspectorResource::sourceBytes):
3025         * inspector/InspectorResource.h:
3026         * inspector/front-end/ExtensionAPI.js:
3027         (WebInspector.injectedExtensionAPI.Resources.prototype.getContent):
3028         * inspector/front-end/ExtensionServer.js:
3029         (WebInspector.ExtensionServer):
3030         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
3031         (WebInspector.ExtensionServer.prototype._onGetResourceContent.onContentAvailable):
3032         (WebInspector.getEncodedResourceContent):
3033         * inspector/front-end/NetworkPanel.js:
3034         (WebInspector.getResourceContent):
3035         * inspector/front-end/ResourcesPanel.js:
3036         (WebInspector.getResourceContent):
3037
3038 2010-10-06  David Hyatt  <hyatt@apple.com>
3039
3040         Reviewed by Dan Bernstein.
3041
3042         https://bugs.webkit.org/show_bug.cgi?id=47235
3043         
3044         Make "lr" block-flow fieldsets work.
3045         
3046         (1) Patched html.css rules for legends and fieldsets to use logical margins and padding.
3047         (2) Converted just enough of computePreferredLogicalWidths to make basic examples work.
3048         (3) Removed the extra border drawing code from fieldsets so that the "clip out the legend" approach
3049         is now just always used.  It's silly to keep the old border drawing code in (which has already gotten out
3050         of sync with the base class) just to avoid a save/restore and some clipping.
3051         (4) Modified the layout/painting routines to place the legend properly and to be able to draw it in
3052         both the top and the left borders.
3053
3054         Added fast/blockflow/fieldsets.html
3055
3056         * css/html.css:
3057         (legend):
3058         (fieldset):
3059         * rendering/RenderBlock.cpp:
3060         (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
3061         (WebCore::RenderBlock::setLogicalLeftForChild):
3062         (WebCore::RenderBlock::setLogicalTopForChild):
3063         (WebCore::RenderBlock::layoutBlockChild):
3064         (WebCore::RenderBlock::computePreferredLogicalWidths):
3065         * rendering/RenderBlock.h:
3066         * rendering/RenderFieldset.cpp:
3067         (WebCore::RenderFieldset::layoutLegend):
3068         (WebCore::RenderFieldset::paintBoxDecorations):
3069         (WebCore::RenderFieldset::paintMask):
3070         * rendering/RenderFieldset.h:
3071
3072 2010-10-06  Patrick Gansterer  <paroga@webkit.org>
3073
3074         Reviewed by Darin Adler.
3075
3076         Move parseDataUrl() from CURL into own file
3077         https://bugs.webkit.org/show_bug.cgi?id=41462
3078
3079         Move the data URL parsing algorithm into a new file to use it in ResourceHandleWin too.
3080
3081         * CMakeLists.txt:
3082         * WebCore.gypi:
3083         * WebCore.vcproj/WebCore.vcproj:
3084         * platform/network/DataURL.cpp: Added.
3085         (WebCore::handleDataURL):
3086         * platform/network/DataURL.h: Added.
3087         * platform/network/curl/ResourceHandleManager.cpp:
3088         (WebCore::ResourceHandleManager::dispatchSynchronousJob):
3089         (WebCore::ResourceHandleManager::startJob):
3090         * platform/network/win/ResourceHandleWin.cpp:
3091         (WebCore::ResourceHandle::start):
3092         (WebCore::ResourceHandle::fileLoadTimer):
3093
3094 2010-10-06  Dirk Schulze  <krit@webkit.org>
3095
3096         Reviewed by Nikolas Zimmermann.
3097
3098         SVGs with filters look grainy when scaled
3099         https://bugs.webkit.org/show_bug.cgi?id=5526
3100
3101         SVG filter effects need smarter size calculation
3102         https://bugs.webkit.org/show_bug.cgi?id=31370
3103
3104         SVG elements use Filters before own transformations
3105         https://bugs.webkit.org/show_bug.cgi?id=32486
3106
3107         Calculate all filter results in device space instead of the filtered objects user space. This change is similar to
3108         the patches for SVG Pattern and SVG Masker before. It avoids pixelation and guarantees smooth filter results for
3109         every scale level and is independent of any transformation to the target element or any ancester of the target.
3110         The second part of this patch reduces the size of every effect to the smallest affected region instead of the complete
3111         filter primitive subregion (http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion). We just use the subregion
3112         as clipping region, like mentioned in the SVG specification, to make the affected region even smaller now.
3113
3114         This is a huge speed up. The ECMA cloud (http://ejohn.org/files/ecma-cloud.svg) is more than 100 times faster on Gtk and
3115         renders in less than a second.
3116         Some examples on svg-wow.org can be viewed the first time now, since the subregions were much bigger than the affected
3117         region.
3118         There's still more potential to speed up filters, by further reducing the ImageBuffer sizes.
3119         Renamed repaintRectInLocalCoordinates to absolutePaintRect, since all coordinates are in device space instead of the
3120         user space now.
3121         The absolute paint rect is calculated by determineAbsolutePaintRect() and gets called by FilterEffect::effectContext() on
3122         applying the effect.
3123         Partly rewrote filter resolution (http://www.w3.org/TR/SVG/filters.html#FilterElementFilterResAttribute) to work with the
3124         new concept. This also corrects the old behavior to match the SVG specification.
3125
3126         Tests: svg/filters/filterRes1.svg
3127                svg/filters/filterRes2.svg
3128                svg/filters/filterRes3.svg
3129
3130         * platform/graphics/cairo/GraphicsContextCairo.cpp: Call setAbsolutePaintRect instead of setRepaintRectInLocalCoordinates.
3131         (WebCore::GraphicsContext::createShadowMask):
3132         * platform/graphics/filters/FEBlend.cpp: Renamed repaintRectInLocalCoordinates to absolutePaintRect.
3133         (WebCore::FEBlend::apply):
3134         * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
3135         (WebCore::FEColorMatrix::apply):
3136         * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
3137         (WebCore::FEComponentTransfer::apply):
3138         * platform/graphics/filters/FEComposite.cpp: Ditto.
3139         (WebCore::FEComposite::determineAbsolutePaintRect):
3140         (WebCore::FEComposite::apply):
3141         * platform/graphics/filters/FEComposite.h:
3142         * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
3143         (WebCore::FEConvolveMatrix::apply):
3144         * platform/graphics/filters/FEConvolveMatrix.h:
3145         (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
3146         * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
3147         (WebCore::FEDisplacementMap::apply):
3148         * platform/graphics/filters/FEDisplacementMap.h:
3149         (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
3150         * platform/graphics/filters/FEFlood.cpp: Ditto.
3151         (WebCore::FEFlood::apply):
3152         * platform/graphics/filters/FEFlood.h:
3153         (WebCore::FEFlood::determineAbsolutePaintRect):
3154         * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
3155         (WebCore::calculateKernelSize):
3156         (WebCore::FEGaussianBlur::determineAbsolutePaintRect):
3157         (WebCore::FEGaussianBlur::apply):
3158         * platform/graphics/filters/FEGaussianBlur.h:
3159         * platform/graphics/filters/FELighting.cpp: Ditto.
3160         (WebCore::FELighting::apply):
3161         * platform/graphics/filters/FEMerge.cpp: Ditto.
3162         (WebCore::FEMerge::apply):
3163         * platform/graphics/filters/FEMorphology.cpp: Ditto.
3164         (WebCore::FEMorphology::determineAbsolutePaintRect):
3165         (WebCore::FEMorphology::apply):
3166         * platform/graphics/filters/FEMorphology.h:
3167         * platform/graphics/filters/FEOffset.cpp: Ditto.
3168         (WebCore::FEOffset::determineAbsolutePaintRect):
3169         (WebCore::FEOffset::apply):
3170         * platform/graphics/filters/FEOffset.h:
3171         * platform/graphics/filters/FETile.cpp: Ditto.
3172         (WebCore::FETile::determineFilterPrimitiveSubregion):
3173         (WebCore::FETile::apply):
3174         * platform/graphics/filters/FETile.h:
3175         (WebCore::FETile::determineAbsolutePaintRect):
3176         * platform/graphics/filters/FETurbulence.cpp: Ditto.
3177         (WebCore::FETurbulence::apply):
3178         * platform/graphics/filters/FETurbulence.h:
3179         (WebCore::FETurbulence::determineAbsolutePaintRect):
3180         * platform/graphics/filters/Filter.h:
3181         (WebCore::Filter::applyHorizontalScale): Map horizontal effect values to absolute coordinates.
3182         (WebCore::Filter::applyVerticalScale): Map vertical effect values to absolute coordinates.
3183         (WebCore::Filter::mapAbsolutePointToLocalPoint):
3184         (WebCore::Filter::filterRegionInUserSpace):
3185         * platform/graphics/filters/FilterEffect.cpp: Ditto.
3186         (WebCore::FilterEffect::determineFilterPrimitiveSubregion):
3187         (WebCore::FilterEffect::determineAbsolutePaintRect):
3188         (WebCore::FilterEffect::requestedRegionOfInputImageData):
3189         (WebCore::FilterEffect::drawingRegionOfInputImage):
3190         (WebCore::FilterEffect::effectContext):
3191         * platform/graphics/filters/FilterEffect.h:
3192         (WebCore::FilterEffect::absolutePaintRect):
3193         (WebCore::FilterEffect::setAbsolutePaintRect):
3194         (WebCore::FilterEffect::maxEffectRect): The subregion in absolute coordinates for SVG.
3195         (WebCore::FilterEffect::setMaxEffectRect):
3196         * platform/graphics/filters/SourceAlpha.cpp: Ditto.
3197         (WebCore::SourceAlpha::determineAbsolutePaintRect):
3198         (WebCore::SourceAlpha::apply):
3199         * platform/graphics/filters/SourceAlpha.h:
3200         * platform/graphics/filters/SourceGraphic.cpp: Ditto.
3201         (WebCore::SourceGraphic::determineAbsolutePaintRect):
3202         (WebCore::SourceGraphic::apply):
3203         * platform/graphics/filters/SourceGraphic.h:
3204         * rendering/RenderSVGResourceFilter.cpp:
3205         (WebCore::RenderSVGResourceFilter::applyResource):
3206         (WebCore::RenderSVGResourceFilter::postApplyResource):
3207         * rendering/RenderSVGResourceFilter.h:
3208         (WebCore::FilterData::FilterData):
3209         * svg/graphics/filters/SVGFEImage.cpp: Ditto.
3210         (WebCore::FEImage::apply):
3211         * svg/graphics/filters/SVGFEImage.h:
3212         (WebCore::FEImage::determineAbsolutePaintRect):
3213         * svg/graphics/filters/SVGFilter.cpp:
3214         (WebCore::SVGFilter::SVGFilter):
3215         (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
3216         (WebCore::SVGFilter::applyHorizontalScale):
3217         (WebCore::SVGFilter::applyVerticalScale):
3218         (WebCore::SVGFilter::create):
3219         * svg/graphics/filters/SVGFilter.h:
3220         (WebCore::SVGFilter::effectBoundingBoxMode):
3221         (WebCore::SVGFilter::filterRegionInUserSpace):
3222         (WebCore::SVGFilter::filterRegion):
3223         (WebCore::SVGFilter::mapAbsolutePointToLocalPoint): Map absolute point to local point in userspace.
3224         (WebCore::SVGFilter::sourceImageRect):
3225         (WebCore::SVGFilter::maxImageSize):
3226
3227 2010-10-06  Pavel Podivilov  <podivilov@chromium.org>
3228
3229         Reviewed by Yury Semikhatsky.
3230
3231         Web Inspector: add "Set Breakpoint" item to XHR resource context menu.
3232         https://bugs.webkit.org/show_bug.cgi?id=47085
3233
3234         * English.lproj/localizedStrings.js:
3235         * inspector/front-end/ResourcesPanel.js:
3236         (WebInspector.ResourcesPanel.prototype._contextMenu):
3237
3238 2010-10-05  Kinuko Yasuda  <kinuko@chromium.org>
3239
3240         Reviewed by David Levin.
3241
3242         Add idl and mock classes for FileSystemSync for FileSystem API
3243         https://bugs.webkit.org/show_bug.cgi?id=46405
3244
3245         Added bunch of *Sync classes, plus refactored some classes:
3246         Added DOMFileSystemBase as a common base class for DOMFileSystem and
3247         DOMFileSystemSync.
3248         Added EntryBase as a common base class for Entry and EntrySync.
3249         Added DirectoryReaderBase as a common base class for DirectoryReader and
3250         DirectoryReaderSync.
3251
3252         Test: fast/filesystem/workers/
3253
3254         * CMakeLists.txt: Added new files.
3255         * DerivedSources.cpp: Added new files.
3256         * DerivedSources.make: Added new files.
3257         * GNUmakefile.am: Added new files.
3258         * WebCore.gypi: Added new files.
3259         * WebCore.pri: Added new files.
3260         * WebCore.pro: Added new files.
3261         * WebCore.vcproj/WebCore.vcproj: Added new files. Also removed the duplicated fileapi\FileEntry.cpp entry.
3262         * WebCore.xcodeproj/project.pbxproj: Added new files.
3263         * bindings/js/JSDirectoryEntrySyncCustom.cpp: Added.
3264         * bindings/js/JSEntrySyncCustom.cpp: Added.
3265         * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp: Added.
3266         * bindings/v8/custom/V8EntrySyncCustom.cpp: Added.
3267         * fileapi/DOMFileSystemBase.cpp: Added.
3268         * fileapi/DOMFileSystemBase.h: Added.
3269         * fileapi/DOMFileSystemSync.cpp: Added.
3270         * fileapi/DOMFileSystemSync.h: Added.
3271         * fileapi/DOMFileSystemSync.idl: Added.
3272         * fileapi/DirectoryEntrySync.cpp: Added.
3273         * fileapi/DirectoryEntrySync.h: Added.
3274         * fileapi/DirectoryEntrySync.idl: Added.
3275         * fileapi/DirectoryReaderBase.h: Added.
3276         * fileapi/DirectoryReaderSync.cpp: Added.
3277         * fileapi/DirectoryReaderSync.h: Added.
3278         * fileapi/DirectoryReaderSync.idl: Added.
3279         * fileapi/EntryArraySync.cpp: Added.
3280         * fileapi/EntryArraySync.h: Added.
3281         * fileapi/EntryArraySync.idl: Added.
3282         * fileapi/EntryBase.h: Added.
3283         * fileapi/EntrySync.cpp: Added.
3284         * fileapi/EntrySync.h: Added.
3285         * fileapi/EntrySync.idl: Added.
3286         * fileapi/FileEntrySync.cpp: Added.
3287         * fileapi/FileEntrySync.h: Added.
3288         * fileapi/FileEntrySync.idl: Added.
3289
3290 2010-10-05  Kent Tamura  <tkent@chromium.org>
3291
3292         Reviewed by Dimitri Glazkov.
3293
3294         REGRESSION (r67166): "Placeholder" text remains in input box after 2nd focus()
3295         https://bugs.webkit.org/show_bug.cgi?id=45940
3296
3297         Test: fast/forms/input-placeholder-focus-twice.html
3298
3299         * html/HTMLFormControlElement.h: Make supportsPlaceholder() public.
3300         * rendering/RenderTextControlSingleLine.cpp:
3301         (WebCore::RenderTextControlSingleLine::updateFromElement):
3302          We always need to update the renderer value with the DOM value if
3303          the element supports the placeholder feature.
3304          Note: the placeholder feature and "unacceptable renderer value"
3305          are exclusive.
3306
3307 2010-10-05  Kyusun Kim  <maniagoon@company100.net>
3308
3309         Reviewed by Kent Tamura.
3310
3311         [BREWMP] Translate key code in PlatformKeyboardEvent with IKeysMapping
3312         https://bugs.webkit.org/show_bug.cgi?id=47234
3313
3314         Brew MP devices have a variey of key configurations and use modifiers to
3315         input capital letters, symbols and special characters. Use IKeysMapping to translate key code.
3316
3317         * platform/brew/PlatformKeyboardEventBrew.cpp:
3318         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3319
3320 2010-10-05  W. James MacLean  <wjmaclean@chromium.org>
3321
3322         Reviewed by James Robinson.
3323
3324         [chromium] Add mipmap support for ImageLayerChromium
3325         https://bugs.webkit.org/show_bug.cgi?id=46493
3326
3327         Mipmap behaviour can be tested with existing tests.
3328         Tests in LayoutTests/compositing/images/ will detect if
3329         mipmaps fail.
3330
3331         * platform/graphics/chromium/ContentLayerChromium.cpp:
3332         (WebCore::ContentLayerChromium::SharedValues::SharedValues):
3333         (WebCore::isPowerOfTwo):
3334         (WebCore::ContentLayerChromium::updateTextureRect):
3335         * platform/graphics/chromium/ContentLayerChromium.h:
3336         (WebCore::ContentLayerChromium::SharedValues::npotSupported):
3337         * platform/graphics/chromium/ImageLayerChromium.cpp:
3338         (WebCore::ImageLayerChromium::updateContents):
3339
3340 2010-10-05  Adam Barth  <abarth@webkit.org>
3341
3342         Reviewed by Darin Adler.
3343
3344         Issue in treebuilder parsing related to table tags
3345         https://bugs.webkit.org/show_bug.cgi?id=47190
3346
3347         Update ASSERT to match the spec and our behavior.
3348
3349         * html/parser/HTMLTreeBuilder.cpp:
3350         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
3351
3352 2010-10-05  Victoria Kirst  <vrk@google.com>
3353
3354         Reviewed by James Robinson.
3355
3356         VideoLayerChromium releases old resources if the LayerRenderer changes.
3357         https://bugs.webkit.org/show_bug.cgi?id=47030
3358
3359         Refactored LayerChromium to have a virtual cleanupResources() method
3360         that will release textures/other context-dependent resources when a
3361         LayerRenderer changes. ContentLayerChromium and VideoLayerChromium now
3362         override this method to perform cleanup.
3363
3364         * platform/graphics/chromium/ContentLayerChromium.cpp:
3365         * platform/graphics/chromium/ContentLayerChromium.h:
3366         * platform/graphics/chromium/LayerChromium.cpp:
3367         (WebCore::LayerChromium::setLayerRenderer):
3368         * platform/graphics/chromium/LayerChromium.h:
3369         (WebCore::LayerChromium::cleanupResources):
3370         * platform/graphics/chromium/VideoLayerChromium.cpp:
3371         (WebCore::VideoLayerChromium::~VideoLayerChromium):
3372         (WebCore::VideoLayerChromium::cleanupResources):
3373         * platform/graphics/chromium/VideoLayerChromium.h:
3374
3375 2010-10-05  Kinuko Yasuda  <kinuko@chromium.org>
3376
3377         Reviewed by Jian Li.
3378
3379         FileEntry::file needs to be implemented
3380         https://bugs.webkit.org/show_bug.cgi?id=47192
3381
3382         Test: fast/filesystem/file-from-file-entry.html
3383
3384         * fileapi/FileEntry.cpp:
3385         (WebCore::FileEntry::file): Implemented.
3386
3387 2010-09-29  Alpha Lam  <hclam@chromium.org>
3388
3389         Reviewed by James Robinson.
3390
3391         Render textures in video frame directly.
3392         https://bugs.webkit.org/show_bug.cgi?id=46765
3393
3394         Render textures in VideoLayerChromium directly if the video frame type
3395         is GL texture. In the future VideoLayerChromium will not allocate
3396         textures and perform textures upload as those operations will be done
3397         in Chromium to minimize memory copy. This patch will help moving toward
3398         this direction and facilitate hardware video decoding.
3399
3400         * platform/graphics/chromium/VideoFrameChromium.h:
3401         * platform/graphics/chromium/VideoFrameProvider.h:
3402         (WebCore::VideoFrameProvider::~VideoFrameProvider):
3403         * platform/graphics/chromium/VideoLayerChromium.cpp:
3404         (WebCore::VideoLayerChromium::VideoLayerChromium):
3405         (WebCore::VideoLayerChromium::~VideoLayerChromium):
3406         (WebCore::VideoLayerChromium::updateContents):
3407         (WebCore::VideoLayerChromium::draw):
3408         (WebCore::VideoLayerChromium::releaseCurrentFrame):
3409         (WebCore::VideoLayerChromium::resetFrameParameters):
3410         (WebCore::VideoLayerChromium::saveCurrentFrame):
3411         * platform/graphics/chromium/VideoLayerChromium.h:
3412         (WebCore::VideoLayerChromium::SharedValues::initialized):
3413
3414 2010-10-05  Fady Samuel  <fsamuel@chromium.org>
3415
3416         Reviewed by Darin Adler.
3417
3418         REGRESSION (r65539): One pixel white gaps when scrolling Trac changeset pages
3419         https://bugs.webkit.org/show_bug.cgi?id=45131
3420
3421         When border-collapse: separate property is set on the table, paintObject
3422         may skip repainting cells, if the dirty region only touches one row/col of pixels.
3423
3424         Test: fast/table/simple_paint_separate_borders.html
3425
3426         * rendering/RenderTableSection.cpp:
3427         (WebCore::RenderTableSection::paintObject):  
3428             Don't subtract one from the right and bottom of the dirty paint rect.
3429
3430 2010-10-05  Sanjeev Radhakrishnan  <sanjeevr@chromium.org>
3431
3432         Reviewed by Darin Fisher.
3433
3434         PluginDocument now holds on to the created plugin node so that the pluginNode() and pluginWidget() methods can return the correct node.
3435         https://bugs.webkit.org/show_bug.cgi?id=47129
3436
3437         * html/PluginDocument.cpp:
3438         (WebCore::PluginDocumentParser::createDocumentStructure):
3439         (WebCore::PluginDocument::pluginWidget):
3440         (WebCore::PluginDocument::pluginNode):
3441         * html/PluginDocument.h:
3442         (WebCore::PluginDocument::setPluginNode):
3443
3444 2010-10-05  Andreas Kling  <kling@webkit.org>
3445
3446         Reviewed by Tor Arne Vestbø.
3447
3448         [Qt] Re-enable single-NPP_SetWindow quirk for 64-bit
3449         https://bugs.webkit.org/show_bug.cgi?id=45363
3450
3451         This is still causing trouble for people, so let's put the
3452         quirk back until we can figure this out properly.
3453
3454         * plugins/PluginPackage.cpp:
3455         (WebCore::PluginPackage::determineQuirks):
3456
3457 2010-10-05  Jian Li  <jianli@chromium.org>
3458
3459         Reviewed by Nate Chapin.
3460
3461         [V8] Add FileReader to active DOM map
3462         https://bugs.webkit.org/show_bug.cgi?id=47205
3463
3464         We need to have a custom FileReader V8 constructor in order to add object
3465         into active DOM map to prevent it from GC-ed when it is still in-use.
3466
3467         * Android.v8bindings.mk:
3468         * WebCore.gypi:
3469         * bindings/scripts/CodeGeneratorV8.pm:
3470         * bindings/v8/custom/V8FileReaderCustom.cpp: Added.
3471         (WebCore::V8FileReader::constructorCallback):
3472         * fileapi/FileReader.idl:
3473
3474 2010-10-05  Vincent Scheib  <scheib@chromium.org>
3475
3476         Reviewed by Kenneth Russell.
3477
3478         [chromium] 51304 GPU compositor resorts to "slow" text rendering for base page layer
3479         https://bugs.webkit.org/show_bug.cgi?id=47193
3480
3481         Test: Accelerated compositor test infrastructure still coming online. Tested manually.
3482
3483         * platform/graphics/chromium/LayerRendererChromium.cpp:
3484         (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
3485         (WebCore::LayerRendererChromium::prepareToDrawLayers):
3486         (WebCore::LayerRendererChromium::drawLayers):
3487
3488 2010-10-05  Nico Weber  <thakis@chromium.org>
3489
3490         Reviewed by Andreas Kling.
3491
3492         Fix clang build
3493         https://bugs.webkit.org/show_bug.cgi?id=47198
3494
3495         * page/Chrome.h:
3496         Declare ViewportArguments as struct, not as class.
3497
3498 2010-10-05  David Hyatt  <hyatt@apple.com>
3499
3500         Reviewed by Sam Weinig.
3501
3502         https://bugs.webkit.org/show_bug.cgi?id=47204
3503         
3504         Make isSelfCollapsingBlock use logical height instead of height in all its checks.
3505
3506         Added fast/blockflow/self-collapsing-block.html
3507
3508         * rendering/RenderBlock.cpp:
3509         (WebCore::RenderBlock::isSelfCollapsingBlock):
3510
3511 2010-10-05  Eric Uhrhane  <ericu@chromium.org>
3512
3513         Reviewed by David Levin.
3514
3515         Relax restrictions on FileWriter::didWrite calls
3516         https://bugs.webkit.org/show_bug.cgi?id=47139
3517
3518         No new tests; they're still waiting on the first implementation.
3519
3520         * fileapi/FileWriter.cpp:
3521         (WebCore::FileWriter::FileWriter):
3522         (WebCore::FileWriter::write):
3523         (WebCore::FileWriter::didWrite):
3524         * fileapi/FileWriter.h:
3525
3526 2010-10-05  Daniel Cheng  <dcheng@chromium.org>
3527
3528         Reviewed by Tony Chang.
3529
3530         [chromium] getData('text/uri-list') should return the same thing that was passed to setData('text/uri-list')
3531         https://bugs.webkit.org/show_bug.cgi?id=46943
3532
3533         We no longer parse the input of setData('text/uri-list') and only store
3534         the valid URLs that were parsed out.
3535
3536         Test: editing/pasteboard/dataTransfer-setData-getData.html
3537
3538         * platform/chromium/ChromiumDataObject.cpp:
3539         (WebCore::ChromiumDataObject::clearData):
3540         (WebCore::ChromiumDataObject::clearAllExceptFiles):
3541         (WebCore::ChromiumDataObject::types):
3542         (WebCore::ChromiumDataObject::getData):
3543         (WebCore::ChromiumDataObject::setData):
3544         * platform/chromium/ChromiumDataObject.h:
3545
3546 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
3547
3548         Reviewed by Xan Lopez.
3549
3550         [GTK] Support FontPlatformData::isFixedPitch for custom fonts
3551         https://bugs.webkit.org/show_bug.cgi?id=47124
3552
3553         Instead of determining whether or not a font is a fixed-width font
3554         lazily, do it up front. For fonts not backed by Fontconfig patterns,
3555         fetch information about whether or not the font is fixed-width from
3556         the FreeType face.
3557
3558         No new tests as this should not change functionality.
3559
3560         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
3561         (WebCore::FontPlatformData::FontPlatformData): Initialize the m_fixedWidth member
3562         from the Fontconfig pattern or the FreeType face.
3563         (WebCore::FontPlatformData::operator=): Copy over the m_fixedWidth member.
3564         (WebCore::FontPlatformData::isFixedPitch): Just return the value of the m_fixedWidth member.
3565         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added an m_fixedWidth member.
3566
3567 2010-10-05  David Hyatt  <hyatt@apple.com>
3568
3569         Reviewed by Anders Carlsson.
3570
3571         https://bugs.webkit.org/show_bug.cgi?i