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