2010-09-20 Daniel Bates <dbates@rim.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-09-20  Daniel Bates  <dbates@rim.com>
2
3         Reviewed by Dan Bernstein.
4
5         Cleanup: Extract common border radii expansion code in
6         RenderBoxModelObject::paintBoxShadow() into function
7         https://bugs.webkit.org/show_bug.cgi?id=45934
8
9         Extracted code for expanding and clamping the border radii
10         into common function to remove duplicate code.
11
12         No functionality was changed. So, no new tests.
13
14         * rendering/RenderBoxModelObject.cpp:
15         (WebCore::uniformlyExpandBorderRadii): Added.
16         (WebCore::RenderBoxModelObject::paintBoxShadow): Moved common code to uniformlyExpandBorderRadii().
17
18 2010-09-20  Kwang Yul Seo  <skyul@company100.net>
19
20         Reviewed by James Robinson.
21
22         Make sure skia is not Chromium specific
23         https://bugs.webkit.org/show_bug.cgi?id=39672
24
25         GGlyphPageTreeNodeLinux does not depend on Linux or Chromium.
26         Move GGlyphPageTreeNodeLinux to platform/graphics/skia and rename it to
27         GlyphPageTreeNodeSkia.cpp so that other ports can use it.
28
29         * WebCore.gyp/WebCore.gyp:
30         * WebCore.gypi:
31         * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed.
32         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added.
33
34 2010-09-20  Kinuko Yasuda  <kinuko@chromium.org>
35
36         Reviewed by David Levin.
37
38         Add NoStaticTables attributes to IDLs of FileSystem API for Worker support
39         https://bugs.webkit.org/show_bug.cgi?id=46021
40
41         Added NoStaticTables attributes to IDLs except for ones for Callbacks.
42         (As NoStaticTables only affects non-callback interfaces.)
43
44         * fileapi/DOMFileSystem.idl:
45         * fileapi/DirectoryEntry.idl:
46         * fileapi/DirectoryReader.idl:
47         * fileapi/Entry.idl:
48         * fileapi/EntryArray.idl:
49         * fileapi/FileEntry.idl:
50         * fileapi/Flags.idl:
51         * fileapi/Metadata.idl:
52
53 2010-09-20  Nico Weber  <thakis@chromium.org>
54
55         Reviewed by Adam Barth.
56
57         Fix "operands of ? are integers of different signs" clang warnings
58         https://bugs.webkit.org/show_bug.cgi?id=46157
59
60         * platform/graphics/mac/ComplexTextController.cpp:
61         (WebCore::ComplexTextController::advance):
62         * rendering/RenderBox.cpp:
63         (WebCore::RenderBox::calcHeight):
64
65 2010-09-20  Vangelis Kokkevis  <vangelis@chromium.org>
66
67         Unreviewed, rolling out r67906.
68         http://trac.webkit.org/changeset/67906
69         https://bugs.webkit.org/show_bug.cgi?id=46139
70
71         Change causes chromium to crash when switching pages
72
73         * platform/graphics/chromium/ContentLayerChromium.h:
74         * platform/graphics/chromium/LayerChromium.h:
75
76 2010-09-19  Antonio Gomes  <agomes@rim.com>
77
78         Reviewed by Ojan Vafai.
79
80         SelectionController::modify should ask EditingBehavior for platform specific behavior
81         https://bugs.webkit.org/show_bug.cgi?id=41975
82
83         As a follow up of the refactoring work in bug 39854, patch makes SelectionController::modify()
84         stop accessing EditingBehaviorType values directly, and replaces its use by the EditingBehavior
85         class.
86
87         Since the "Settings*" parameter of the private SelectionController::modify() method becomes unneeded
88         with this change (it was used to query the editingBehaviorType), patch merges two modify() methods.
89
90         No behavior change, so no new tests.
91
92         * editing/EditingBehavior.h:
93         (WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary):
94         * editing/SelectionController.cpp:
95         (WebCore::SelectionController::modify):
96         * editing/SelectionController.h:
97
98 2010-09-20  Vangelis Kokkevis  <vangelis@chromium.org>
99
100         Reviewed by James Robinson.
101
102         [chromium] Making destructors of LayerChromium and ContentLayerChromium virtual
103         so that the derived class' destructor code gets called.
104         https://bugs.webkit.org/show_bug.cgi?id=46139
105
106         * platform/graphics/chromium/ContentLayerChromium.h:
107         * platform/graphics/chromium/LayerChromium.h:
108
109 2010-09-20  Darin Adler  <darin@apple.com>
110
111         Reviewed by James Robinson.
112
113         Deprecate the inputType function on HTMLInputElement
114         https://bugs.webkit.org/show_bug.cgi?id=46023
115
116         * html/HTMLInputElement.cpp:
117         (WebCore::HTMLInputElement::HTMLInputElement): Use m_deprecatedTypeNumber.
118         (WebCore::HTMLInputElement::isValidValue): Use deprecatedInputType.
119         (WebCore::HTMLInputElement::typeMismatch): Ditto.
120         (WebCore::HTMLInputElement::valueMissing): Ditto.
121         (WebCore::HTMLInputElement::rangeUnderflow): Ditto.
122         (WebCore::HTMLInputElement::rangeOverflow): Ditto.
123         (WebCore::HTMLInputElement::minimum): Ditto.
124         (WebCore::HTMLInputElement::maximum): Ditto.
125         (WebCore::HTMLInputElement::stepBase): Ditto.
126         (WebCore::HTMLInputElement::stepMismatch): Ditto.
127         (WebCore::HTMLInputElement::getStepParameters): Ditto.
128         (WebCore::HTMLInputElement::getAllowedValueStep): Ditto.
129         (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
130         (WebCore::HTMLInputElement::shouldUseInputMethod): Ditto.
131         (WebCore::HTMLInputElement::handleBlurEvent): Ditto.
132         (WebCore::HTMLInputElement::setType): Added a comment.
133         (WebCore::HTMLInputElement::updateType): Replaced the setInputType function
134         with this. The type is always the type attribute value, so there is no value
135         in passing the type string in, and this is an internal implementation detail,
136         not a public function.
137         (WebCore::createFormControlTypes): Use deprecatedNumberOfTypes.
138         (WebCore::HTMLInputElement::formControlType): Use deprecatedInputType.
139         (WebCore::HTMLInputElement::saveFormControlState): Ditto.
140         (WebCore::HTMLInputElement::restoreFormControlState): Ditto.
141         (WebCore::HTMLInputElement::accessKeyAction): Ditto.
142         (WebCore::HTMLInputElement::mapToEntry): Ditto.
143         (WebCore::HTMLInputElement::parseMappedAttribute): Ditto.
144         (WebCore::HTMLInputElement::rendererIsNeeded): Ditto.
145         (WebCore::HTMLInputElement::createRenderer): Ditto.
146         (WebCore::HTMLInputElement::attach): Ditto.
147         (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Ditto.
148         (WebCore::HTMLInputElement::appendFormData): Ditto.
149         (WebCore::HTMLInputElement::isTextField): Ditto.
150         (WebCore::HTMLInputElement::isTextType): Ditto.
151         (WebCore::HTMLInputElement::setChecked): Ditto.
152         (WebCore::HTMLInputElement::value): Ditto.
153         (WebCore::HTMLInputElement::valueWithDefault): Ditto.
154         (WebCore::HTMLInputElement::setSuggestedValue): Ditto.
155         (WebCore::HTMLInputElement::setValue): Ditto.
156         (WebCore::HTMLInputElement::parseToDouble): Ditto.
157         (WebCore::HTMLInputElement::valueAsDate): Ditto.
158         (WebCore::HTMLInputElement::setValueAsDate): Ditto.
159         (WebCore::HTMLInputElement::valueAsNumber): Ditto.
160         (WebCore::HTMLInputElement::setValueAsNumber): Ditto.
161         (WebCore::HTMLInputElement::serializeForDateTimeTypes): Ditto.
162         (WebCore::HTMLInputElement::serialize): Ditto.
163         (WebCore::HTMLInputElement::setValueFromRenderer): Ditto.
164         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Ditto.
165         (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto.
166         (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto.
167         (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
168         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): Ditto.
169         (WebCore::HTMLInputElement::files): Ditto.
170         (WebCore::HTMLInputElement::isAcceptableValue): Ditto.
171         (WebCore::HTMLInputElement::sanitizeValue): Ditto.
172         (WebCore::HTMLInputElement::hasUnacceptableValue): Ditto.
173         (WebCore::HTMLInputElement::needsActivationCallback): Ditto.
174         (WebCore::HTMLInputElement::isRequiredFormControl): Ditto.
175         (WebCore::HTMLInputElement::recalcWillValidate): Ditto.
176         (WebCore::HTMLInputElement::parseToDateComponents): Ditto.
177         (WebCore::HTMLInputElement::dataList): Ditto.
178         (WebCore::HTMLInputElement::isSpeechEnabled): Ditto.
179
180         * html/HTMLInputElement.h: Renamed InputType to DeprecatedInputType since it
181         should not be used outside this class. Renamed numberOfTypes to
182         dprecatedNumberOfTypes for the same reason. Changed all code to use
183         deprecatedInputType function instead of m_type. Renamed inputType function
184         to deprecatedInputType. Replaced public setInputType function with private
185         updateType function. Renamed m_type data member to m_deprecatedTypeNumber.
186
187         * rendering/MediaControlElements.cpp:
188         (WebCore::MediaControlInputElement::MediaControlInputElement):
189         * rendering/RenderFileUploadControl.cpp:
190         (WebCore::RenderFileUploadControl::updateFromElement):
191         Use setType instead of setInputType.
192
193 2010-09-20  Mihai Parparita  <mihaip@chromium.org>
194
195         Unreviewed; an attempt to fix Windows build.
196
197         * WebCore.vcproj/WebCore.vcproj:
198
199 2010-09-20  Simon Fraser  <simon.fraser@apple.com>
200
201         Reviewed by Dan Bernstein.
202
203         When PDF image is directly composited, it does not display
204         https://bugs.webkit.org/show_bug.cgi?id=46144
205         
206         In the "direct image compositing" code path, we set the image directly
207         as the contents of the GraphicsLayer. However, this only works with
208         bitmap images, so we have to check that the image is a bitmap image.
209
210         Test: compositing/images/direct-pdf-image.html
211
212         * rendering/RenderLayerBacking.cpp:
213         (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
214
215 2010-09-20  Simon Fraser  <simon.fraser@apple.com>
216
217         Reviewed by Darin Adler.
218
219         Crash when div with content set to image gets composited (Vimeo).
220         https://bugs.webkit.org/show_bug.cgi?id=46140
221         
222         When CSS specifies that the content of an element is an image, we make
223         a RenderImage, and setStyle() before setting the image resource. In this
224         case the compositing code can attempt to access the cached image, which
225         would crash with a null deref.
226         
227         Fix by null-checking m_imageResource.
228
229         Test: compositing/images/content-image.html
230
231         * rendering/RenderImage.h:
232         (WebCore::RenderImage::cachedImage):
233
234 2010-09-20  Mihai Parparita  <mihaip@chromium.org>
235
236         Reviewed by Dimitri Glazkov.
237
238         Hashchange event is no longer a simple event, needs to be its own interface
239         https://bugs.webkit.org/show_bug.cgi?id=36335
240         
241         Add HashChangeEvent.idl and supporting files/changes.
242
243         Test: fast/loader/hashchange-event-properties.html
244
245         The original version of this patch was written by
246         Steven Lai <s3lance@hotmail.com>.
247
248         * CMakeLists.txt:
249         * DerivedSources.cpp:
250         * DerivedSources.make:
251         * GNUmakefile.am:
252         * WebCore.gypi:
253         * WebCore.pri:
254         * WebCore.vcproj/WebCore.vcproj:
255         * WebCore.xcodeproj/project.pbxproj:
256         * bindings/js/JSEventCustom.cpp:
257         (WebCore::toJS):
258         * bindings/v8/custom/V8EventCustom.cpp:
259         (WebCore::toV8):
260         * dom/Document.cpp:
261         (WebCore::Document::enqueueHashchangeEvent):
262         * dom/Event.cpp:
263         (WebCore::Event::isHashChangeEvent):
264         * dom/Event.h:
265         * dom/HashChangeEvent.h: Added.
266         (WebCore::HashChangeEvent::isHashChangeEvent):
267         (WebCore::HashChangeEvent::create):
268         (WebCore::HashChangeEvent::initHashChangeEvent):
269         (WebCore::HashChangeEvent::oldURL):
270         (WebCore::HashChangeEvent::newURL):
271         (WebCore::HashChangeEvent::HashChangeEvent):
272         * dom/HashChangeEvent.idl: Added.
273         * page/DOMWindow.idl:
274
275 2010-09-20  Andy Estes  <aestes@apple.com>
276
277         Reviewed by Adam Barth.
278
279         REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes
280         https://bugs.webkit.org/show_bug.cgi?id=40961
281
282         Add an optional quirk to the HTML5 tokenizer that reverts it to WebKit's
283         legacy behavior when the start of a new token is encountered before the
284         current token is finished parsing. The legacy behavior is to emit the
285         current token as if it were properly closed and being parsing the new
286         token.
287
288         Test: fast/parser/pre-html5-parser-quirks.html
289
290         * html/parser/HTMLDocumentParser.cpp:
291         (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate
292         m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
293         (WebCore::usePreHTMLParserQuirks): Add a helper function to return the
294         value of Settings::usePreHTML5ParserQuirks() if Settings is non-NULL.
295         * html/parser/HTMLPreloadScanner.cpp:
296         (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): Instantiate
297         m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
298         * html/parser/HTMLTokenizer.cpp:
299         (WebCore::HTMLTokenizer::HTMLTokenizer):
300         (WebCore::HTMLTokenizer::nextToken): If the quirk is enabled and an
301         unexpected '<' is encountered in certain states, emit the current token
302         and reprocess the '<' as the start of a new token.
303         * html/parser/HTMLTokenizer.h:
304         (WebCore::HTMLTokenizer::create):
305         * html/parser/HTMLViewSourceParser.cpp:
306         (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): Instantiate
307         m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
308         * page/Settings.cpp:
309         (WebCore::Settings::Settings):
310         * page/Settings.h:
311         (WebCore::Settings::setUsePreHTML5ParserQuirks):
312         (WebCore::Settings::usePreHTML5ParserQuirks):
313
314 2010-09-20  David Hyatt  <hyatt@apple.com>
315
316         Reviewed by Dan Bernstein.
317
318         https://bugs.webkit.org/show_bug.cgi?id=46132, add an isVerticalBlockFlow() method to RenderStyle and
319         patch callers so that they don't have to check both top-to-bottom and bottom-to-top block flow.
320
321         * rendering/RenderBox.cpp:
322         (WebCore::RenderBox::availableLogicalWidth):
323         * rendering/style/RenderStyle.cpp:
324         (WebCore::RenderStyle::logicalWidth):
325         (WebCore::RenderStyle::logicalHeight):
326         (WebCore::RenderStyle::logicalMinWidth):
327         (WebCore::RenderStyle::logicalMaxWidth):
328         (WebCore::RenderStyle::logicalMinHeight):
329         (WebCore::RenderStyle::logicalMaxHeight):
330         (WebCore::RenderStyle::borderStartWidth):
331         (WebCore::RenderStyle::borderEndWidth):
332         (WebCore::RenderStyle::marginStart):
333         (WebCore::RenderStyle::marginEnd):
334         (WebCore::RenderStyle::paddingStart):
335         (WebCore::RenderStyle::paddingEnd):
336         * rendering/style/RenderStyle.h:
337         (WebCore::InheritedFlags::isVerticalBlockFlow):
338
339 2010-09-20  David Hyatt  <hyatt@apple.com>
340
341         Reviewed by Dan Bernstein.
342
343         https://bugs.webkit.org/show_bug.cgi?id=46124, add support for logical padding accessors to
344         RenderBoxModelObject.
345
346         Added fast/blockflow/percentage-padding.html even though it fails, so that when more of layout is patched
347         we can see it start passing.
348
349         * rendering/RenderBoxModelObject.cpp:
350         (WebCore::RenderBoxModelObject::paddingTop):
351         (WebCore::RenderBoxModelObject::paddingBottom):
352         (WebCore::RenderBoxModelObject::paddingLeft):
353         (WebCore::RenderBoxModelObject::paddingRight):
354         (WebCore::RenderBoxModelObject::paddingBefore):
355         (WebCore::RenderBoxModelObject::paddingAfter):
356         (WebCore::RenderBoxModelObject::paddingStart):
357         (WebCore::RenderBoxModelObject::paddingEnd):
358         * rendering/RenderBoxModelObject.h:
359
360 2010-09-20  David Hyatt  <hyatt@apple.com>
361
362         Reviewed by Dan Bernstein.
363
364         https://bugs.webkit.org/show_bug.cgi?id=46126, add availableLogicalWidth() to RenderBox.
365         
366         * rendering/RenderBlock.cpp:
367         (WebCore::RenderBlock::availableWidth):
368         (WebCore::RenderBlock::availableLogicalWidth):
369         * rendering/RenderBlock.h:
370         * rendering/RenderBox.cpp:
371         (WebCore::RenderBox::availableLogicalWidth):
372         * rendering/RenderBox.h:
373         (WebCore::RenderBox::availableWidth):
374
375 2010-09-20  Kenneth Russell  <kbr@google.com>
376
377         Reviewed by James Robinson.
378
379         [chromium] Change compositor to use GraphicsContext3D rather than GLES2Context
380         https://bugs.webkit.org/show_bug.cgi?id=45912
381
382         Switched Chromium's compositor to use GraphicsContext3D to issue
383         its OpenGL rendering calls rather than the Chromium-specific
384         GLES2Context and command buffer OpenGL implementation.
385
386         The in-process software rendering path for GraphicsContext3D does
387         not yet work with the compositor, at least not on Mac OS X. This
388         will be worked on in subsequent bugs.
389
390         Tested manually with 3D CSS, WebGL and video content on Mac OS X
391         and Linux. No new tests.
392
393         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
394         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
395         (WebCore::Canvas2DLayerChromium::updateContents):
396         * platform/graphics/chromium/CanvasLayerChromium.cpp:
397         (WebCore::CanvasLayerChromium::SharedValues::SharedValues):
398         (WebCore::CanvasLayerChromium::SharedValues::~SharedValues):
399         (WebCore::CanvasLayerChromium::draw):
400         * platform/graphics/chromium/CanvasLayerChromium.h:
401         * platform/graphics/chromium/ContentLayerChromium.cpp:
402         (WebCore::ContentLayerChromium::SharedValues::SharedValues):
403         (WebCore::ContentLayerChromium::SharedValues::~SharedValues):
404         (WebCore::ContentLayerChromium::~ContentLayerChromium):
405         (WebCore::ContentLayerChromium::updateTextureRect):
406         (WebCore::ContentLayerChromium::draw):
407         * platform/graphics/chromium/ContentLayerChromium.h:
408         * platform/graphics/chromium/DrawingBufferChromium.cpp:
409         (WebCore::DrawingBuffer::publishToPlatformLayer):
410         * platform/graphics/chromium/LayerChromium.cpp:
411         (WebCore::loadShader):
412         (WebCore::LayerChromium::SharedValues::SharedValues):
413         (WebCore::LayerChromium::SharedValues::~SharedValues):
414         (WebCore::LayerChromium::createShaderProgram):
415         (WebCore::LayerChromium::layerRendererContext):
416         (WebCore::LayerChromium::drawTexturedQuad):
417         (WebCore::LayerChromium::drawDebugBorder):
418         (WebCore::LayerChromium::drawAsMask):
419         (WebCore::LayerChromium::prepareForDraw):
420         * platform/graphics/chromium/LayerChromium.h:
421         (WebCore::LayerChromium::SharedValues::context):
422         * platform/graphics/chromium/LayerRendererChromium.cpp:
423         (WebCore::LayerRendererChromium::create):
424         (WebCore::LayerRendererChromium::LayerRendererChromium):
425         (WebCore::LayerRendererChromium::context):
426         (WebCore::LayerRendererChromium::debugGLCall):
427         (WebCore::LayerRendererChromium::useShader):
428         (WebCore::LayerRendererChromium::prepareToDrawLayers):
429         (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
430         (WebCore::LayerRendererChromium::drawLayers):
431         (WebCore::LayerRendererChromium::finish):
432         (WebCore::LayerRendererChromium::present):
433         (WebCore::LayerRendererChromium::getFramebufferPixels):
434         (WebCore::LayerRendererChromium::createLayerTexture):
435         (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer):
436         (WebCore::LayerRendererChromium::drawLayersRecursive):
437         (WebCore::LayerRendererChromium::drawLayer):
438         (WebCore::LayerRendererChromium::scissorToRect):
439         (WebCore::LayerRendererChromium::makeContextCurrent):
440         (WebCore::LayerRendererChromium::resizeOnscreenContent):
441         (WebCore::LayerRendererChromium::initializeSharedObjects):
442         (WebCore::LayerRendererChromium::cleanupSharedObjects):
443         * platform/graphics/chromium/LayerRendererChromium.h:
444         * platform/graphics/chromium/VideoLayerChromium.cpp:
445         (WebCore::VideoLayerChromium::createTextureRect):
446         (WebCore::VideoLayerChromium::updateTextureRect):
447         * platform/graphics/chromium/WebGLLayerChromium.cpp:
448         (WebCore::WebGLLayerChromium::updateContents):
449         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
450         (WebCore::SharedGraphicsContext3D::flush):
451         (WebCore::SharedGraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
452         (WebCore::SharedGraphicsContext3D::copyTextureToParentTextureCHROMIUM):
453         * platform/graphics/gpu/SharedGraphicsContext3D.h:
454
455 2010-09-20  David Hyatt  <hyatt@apple.com>
456
457         Reviewed by Dan Bernstein.
458
459         https://bugs.webkit.org/show_bug.cgi?id=46119, add logical accessors to RenderStyle.  Not used by any RenderObjects yet, so no tests
460         until then.
461
462         * rendering/style/RenderStyle.cpp:
463         (WebCore::RenderStyle::logicalWidth):
464         (WebCore::RenderStyle::logicalHeight):
465         (WebCore::RenderStyle::logicalMinWidth):
466         (WebCore::RenderStyle::logicalMaxWidth):
467         (WebCore::RenderStyle::logicalMinHeight):
468         (WebCore::RenderStyle::logicalMaxHeight):
469         (WebCore::RenderStyle::borderBeforeWidth):
470         (WebCore::RenderStyle::borderAfterWidth):
471         (WebCore::RenderStyle::borderStartWidth):
472         (WebCore::RenderStyle::borderEndWidth):
473         (WebCore::RenderStyle::marginBefore):
474         (WebCore::RenderStyle::marginAfter):
475         (WebCore::RenderStyle::marginStart):
476         (WebCore::RenderStyle::marginEnd):
477         (WebCore::RenderStyle::paddingBefore):
478         (WebCore::RenderStyle::paddingAfter):
479         (WebCore::RenderStyle::paddingStart):
480         (WebCore::RenderStyle::paddingEnd):
481         * rendering/style/RenderStyle.h:
482
483 2010-09-20  David Hyatt  <hyatt@apple.com>
484
485         Reviewed by Dan Bernstein.
486
487         https://bugs.webkit.org/show_bug.cgi?id=46116, implement block-flow-aware logical properties.
488         
489         This patch adds all the logical properties from the CSS3 Writing Mode draft for margins, padding, border,
490         width and height.
491
492         Added fast/css/logical-property-resolution.html
493
494         * css/CSSComputedStyleDeclaration.cpp:
495         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
496         * css/CSSParser.cpp:
497         (WebCore::CSSParser::parseValue):
498         * css/CSSProperty.cpp:
499         (WebCore::resolveToPhysicalProperty):
500         (WebCore::CSSProperty::resolveDirectionAwareProperty):
501         * css/CSSProperty.h:
502         * css/CSSPropertyNames.in:
503         * css/CSSStyleSelector.cpp:
504         (WebCore::CSSStyleSelector::applyDeclarations):
505         (WebCore::CSSStyleSelector::applyProperty):
506
507 2010-09-20  David Hyatt  <hyatt@apple.com>
508
509         Reviewed by Beth Dakin.
510
511         https://bugs.webkit.org/show_bug.cgi?id=46114, two tables repaint tests failing on bots.
512
513         Patch layoutRows to apply the layout delta when setting a new cell location prior to laying out the cell.
514         
515         The layout delta is then removed after layout has happened when the repaint check is done.  This change
516         makes cell layout match block child layout, and now the cells have the correct new location up front
517         when laying out (a necessity for pagination).
518
519         * rendering/RenderTableSection.cpp:
520         (WebCore::RenderTableSection::layoutRows):
521
522 2010-09-20  Jacob Dinu  <dinu.jacob@nokia.com>
523
524         Reviewed by Adam Barth.
525
526         When loading a cached page, dispatchDidCommitLoad is called after FrameLoader::open so
527         that all initialzations are done before calling client dispatchDidCommitLoad to avoid
528         client from accessing incorrect data.
529         https://bugs.webkit.org/show_bug.cgi?id=41155
530
531         * loader/FrameLoader.cpp:
532         (WebCore::FrameLoader::commitProvisionalLoad):
533         (WebCore::FrameLoader::transitionToCommitted):
534
535 2010-09-20  Simon Fraser  <simon.fraser@apple.com>
536
537         Reviewed by Adam Roben.
538
539         REGRESSION: alternating animation direction doesn't work on Windows
540         https://bugs.webkit.org/show_bug.cgi?id=46017
541         
542         Animation-direction on Windows was broken because bitfields on
543         Windows are signed.
544         
545         Fixed by making m_direction an unsigned in the bitfield, and
546         casting in the accessor.
547
548         Test: animations/animation-direction.html
549
550         * platform/animation/Animation.h:
551         (WebCore::Animation::direction):
552
553 2010-09-20  Enrica Casucci  <enrica@apple.com>
554
555         Reviewed by Sam Weinig.
556
557         Pasteboard doesn't work in WebKit2.
558         https://bugs.webkit.org/show_bug.cgi?id=42317
559         <rdar://problem/7660537>
560
561         * loader/EmptyClients.h:
562         (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Changed parameter to
563         be a Vector of RefPtr.
564         * page/EditorClient.h:
565         * platform/mac/PasteboardMac.mm:
566         (WebCore::Pasteboard::documentFragmentWithRtf): Stylistic changes.
567
568 2010-09-20  Yong Li  <yoli@rim.com>
569
570         Reviewed by Alexey Proskuryakov.
571
572         https://bugs.webkit.org/show_bug.cgi?id=39966
573         Make compareBorders() a consistent compare function which can beused by qsort().
574
575         New test case added: LayoutTests/tables/sort-collapsed-border-styles.html
576
577         * rendering/RenderTableCell.cpp:
578         (WebCore::compareBorders):
579         (WebCore::chooseBorder):
580         (WebCore::RenderTableCell::collapsedLeftBorder):
581         (WebCore::RenderTableCell::collapsedRightBorder):
582         (WebCore::RenderTableCell::collapsedTopBorder):
583         (WebCore::RenderTableCell::collapsedBottomBorder):
584         (WebCore::compareBorderStylesForQSort):
585
586 2010-09-20  Patrick Gansterer  <paroga@paroga.com>
587
588         Reviewed by Adam Roben.
589
590         [WINCE] Buildfix for PluginViewWin.cpp
591         https://bugs.webkit.org/show_bug.cgi?id=46033
592
593         * plugins/win/PluginViewWin.cpp:
594         (WebCore::PluginView::paintIntoTransformedContext):
595         (WebCore::PluginView::snapshot):
596
597 2010-09-18  David Hyatt  <hyatt@apple.com>
598
599         Reviewed by Sam Weinig.
600
601         https://bugs.webkit.org/show_bug.cgi?id=46030, aintitcool.com doesn't paginate correctly when printed.
602         
603         This happens because the site always has a document width that will exceed the page width.
604         We incorrectly apply a double scale instead of clipping after the first scale still doesn't fit.
605         The fix for the issue is to cap the right layout overflow to the page width and to just clip out
606         any additional excess.  This is the code in FrameView.cpp.
607         
608         This patch also cleans up table cell invalidation to reduce the # of relayouts.  This change is not
609         a correctness fix.  It's just performance.
610         
611         I'm not sure how to write a test for this, since the double scale is an artifact of how WebKit mac calls
612         back in when really printing.
613
614         * page/FrameView.cpp:
615         (WebCore::FrameView::forceLayoutForPagination):
616         * rendering/RenderBlock.cpp:
617         (WebCore::RenderBlock::layoutBlockChild):
618         (WebCore::RenderBlock::layoutPositionedObjects):
619         (WebCore::RenderBlock::positionNewFloats):
620         * rendering/RenderBlock.h:
621         (WebCore::RenderBlock::markForPaginationRelayout):
622         * rendering/RenderFlexibleBox.cpp:
623         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
624         (WebCore::RenderFlexibleBox::layoutVerticalBox):
625         * rendering/RenderTableSection.cpp:
626         (WebCore::RenderTableSection::layoutRows):
627
628 2010-09-20  Ilya Tikhonovsky  <loislo@chromium.org>
629
630         Reviewed by Pavel Feldman.
631
632         Web Inspector: merge Inspector client runtime events into the serialized inspector state object.
633
634         Drive-by rename getBackendSettings -> getInspectorState to better reflect the nature of the data.
635
636         https://bugs.webkit.org/show_bug.cgi?id=45974
637
638         * inspector/Inspector.idl:
639         * inspector/InspectorClient.h:
640         (WebCore::InspectorClient::updateInspectorStateCookie):
641         * inspector/InspectorController.cpp:
642         (WebCore::InspectorController::saveApplicationSettings):
643         (WebCore::InspectorController::getInspectorState):
644         (WebCore::InspectorController::updateInspectorStateCookie):
645         (WebCore::InspectorController::restoreInspectorStateFromCookie):
646         (WebCore::InspectorController::getSettings):
647         (WebCore::InspectorController::setMonitoringXHREnabled):
648         (WebCore::InspectorController::restoreDebugger):
649         (WebCore::InspectorController::restoreProfiler):
650         (WebCore::InspectorController::setResourceTrackingEnabled):
651         (WebCore::InspectorController::ensureSettingsLoaded):
652         (WebCore::InspectorController::startTimelineProfiler):
653         (WebCore::InspectorController::stopTimelineProfiler):
654         (WebCore::InspectorController::enableProfiler):
655         (WebCore::InspectorController::disableProfiler):
656         (WebCore::InspectorController::enableDebuggerFromFrontend):
657         (WebCore::InspectorController::disableDebugger):
658         * inspector/InspectorController.h:
659         * inspector/front-end/ConsoleView.js:
660         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
661         * inspector/front-end/ResourcesPanel.js:
662         (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
663         * inspector/front-end/Settings.js:
664         (WebInspector.Settings.initialize):
665         * inspector/front-end/inspector.js:
666         (WebInspector.doLoadedDone.populateInspectorState):
667         (WebInspector.doLoadedDone):
668
669 2010-09-20  Dirk Schulze  <krit@webkit.org>
670
671         Reviewed by Nikolas Zimmermann.
672
673         SVG Filter cleanup
674         https://bugs.webkit.org/show_bug.cgi?id=45612
675         
676         All effect inputs are stored in a Vector in FilterEffect instead of passing them via constructors to every effect type.
677         This simplifies the primitive subregion logic and centralizes it in determineFilterPrimitiveSubregion.
678         Just SourceGraphic, SourceAlpha and FETile still calculate filter primitive subregions on
679         their own. Working on it in a followup patch.
680         The subregions code is SVG specific and moving this calculation to FilterEffect is an
681         intermediate step before moving it to RenderSVGResourceFilterPrimitive in a following patch.
682         The new FilterEffectVector will also make it possible to add code to determine the
683         smallest used region of an effect and will help save memory and resources in the future.
684         subRegion got renamed to filterPrimitiveSubregion to match the name scheme. scaledSubRegion got
685         renamed to repaintRectInLocalCoordinates since this is its proper meaning.
686         Removed unnecessary member variables and functions from FilterEffect.
687
688         No new tests added since the functionality didn't change.
689
690         * platform/graphics/cairo/GraphicsContextCairo.cpp: scaledSubRegion was renamed to repaintRectInLocalCoordinates.
691         (WebCore::GraphicsContext::createShadowMask):
692         * platform/graphics/filters/FEBlend.cpp: Removed Filter effect inputs from constructor.
693         (WebCore::FEBlend::FEBlend):
694         (WebCore::FEBlend::create):
695         (WebCore::FEBlend::apply): Call inputFilterEffects to get input filter primitives.
696         (WebCore::FEBlend::externalRepresentation): Call inputFilterEffects to get input filter primitives.
697         * platform/graphics/filters/FEBlend.h:
698         * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
699         (WebCore::FEColorMatrix::FEColorMatrix):
700         (WebCore::FEColorMatrix::create):
701         (WebCore::FEColorMatrix::apply):
702         (WebCore::FEColorMatrix::externalRepresentation):
703         * platform/graphics/filters/FEColorMatrix.h:
704         * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
705         (WebCore::FEComponentTransfer::FEComponentTransfer):
706         (WebCore::FEComponentTransfer::create):
707         (WebCore::FEComponentTransfer::apply):
708         (WebCore::FEComponentTransfer::externalRepresentation):
709         * platform/graphics/filters/FEComponentTransfer.h:
710         * platform/graphics/filters/FEComposite.cpp: Ditto.
711         (WebCore::FEComposite::FEComposite):
712         (WebCore::FEComposite::create):
713         (WebCore::FEComposite::apply):
714         (WebCore::FEComposite::externalRepresentation):
715         * platform/graphics/filters/FEComposite.h:
716         * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
717         (WebCore::FEGaussianBlur::FEGaussianBlur):
718         (WebCore::FEGaussianBlur::create):
719         (WebCore::FEGaussianBlur::apply):
720         (WebCore::FEGaussianBlur::externalRepresentation):
721         * platform/graphics/filters/FEGaussianBlur.h:
722         * platform/graphics/filters/Filter.h:
723         (WebCore::Filter::determineFilterPrimitiveSubregion): Renamed from calculateEffectSubRegion to match name scheme.
724         * platform/graphics/filters/FilterEffect.cpp:
725         (WebCore::FilterEffect::FilterEffect):
726         (WebCore::FilterEffect::determineFilterPrimitiveSubregion): The main place for subregion calculation.
727         (WebCore::FilterEffect::calculateDrawingIntRect): Takes repaintRectInLocalCoordinates now.
728         (WebCore::FilterEffect::calculateDrawingRect): ditto.
729         (WebCore::FilterEffect::getEffectContext): Check if ImageBuffer was created.
730         * platform/graphics/filters/FilterEffect.h: Changed names to match name scheme. Removed unnecessary member variables and functions.
731             Seperate SVG specific member variables and functions. Will get removed in followup patches.
732         (WebCore::FilterEffect::resultImage):
733         (WebCore::FilterEffect::setEffectBuffer):
734         (WebCore::FilterEffect::inputEffect):
735         (WebCore::FilterEffect::inputEffects):
736         (WebCore::FilterEffect::numberOfinputEffects):
737         (WebCore::FilterEffect::isAlphaImage):
738         (WebCore::FilterEffect::setIsAlphaImage):
739         (WebCore::FilterEffect::repaintRectInLocalCoordinates):
740         (WebCore::FilterEffect::setRepaintRectInLocalCoordinates):
741         (WebCore::FilterEffect::isSourceInput):
742         (WebCore::FilterEffect::hasX):
743         (WebCore::FilterEffect::setHasX):
744         (WebCore::FilterEffect::hasY):
745         (WebCore::FilterEffect::setHasY):
746         (WebCore::FilterEffect::hasWidth):
747         (WebCore::FilterEffect::setHasWidth):
748         (WebCore::FilterEffect::hasHeight):
749         (WebCore::FilterEffect::setHasHeight):
750         (WebCore::FilterEffect::filterPrimitiveSubregion):
751         (WebCore::FilterEffect::setFilterPrimitiveSubregion):
752         (WebCore::FilterEffect::effectBoundaries):
753         (WebCore::FilterEffect::setEffectBoundaries):
754         * platform/graphics/filters/SourceAlpha.cpp:
755         (WebCore::SourceAlpha::determineFilterPrimitiveSubregion): Renamed to match name scheme.
756         * platform/graphics/filters/SourceAlpha.h:
757         (WebCore::SourceAlpha::isSourceInput):
758         * platform/graphics/filters/SourceGraphic.cpp:
759         (WebCore::SourceGraphic::determineFilterPrimitiveSubregion): Ditto.
760         * platform/graphics/filters/SourceGraphic.h:
761         (WebCore::SourceGraphic::isSourceInput):
762         * rendering/RenderSVGResourceFilter.cpp: Adapt to renames in FilterEffect.
763         (WebCore::RenderSVGResourceFilter::applyResource):
764         (WebCore::RenderSVGResourceFilter::postApplyResource):
765         * svg/SVGFEBlendElement.cpp: Constructor of FEBlend doesn't take input effects. Adding them afterwards.
766         (WebCore::SVGFEBlendElement::build):
767         * svg/SVGFEColorMatrixElement.cpp: Ditto.
768         (WebCore::SVGFEColorMatrixElement::build):
769         * svg/SVGFEComponentTransferElement.cpp: Ditto.
770         (WebCore::SVGFEComponentTransferElement::build):
771         * svg/SVGFECompositeElement.cpp: Ditto.
772         (WebCore::SVGFECompositeElement::build):
773         * svg/SVGFEConvolveMatrixElement.cpp: Ditto.
774         (WebCore::SVGFEConvolveMatrixElement::build):
775         * svg/SVGFEDiffuseLightingElement.cpp: Ditto.
776         (WebCore::SVGFEDiffuseLightingElement::build):
777         * svg/SVGFEDisplacementMapElement.cpp: Ditto.
778         (WebCore::SVGFEDisplacementMapElement::build):
779         * svg/SVGFEGaussianBlurElement.cpp: Ditto.
780         (WebCore::SVGFEGaussianBlurElement::build):
781         * svg/SVGFEMergeElement.cpp: Ditto.
782         (WebCore::SVGFEMergeElement::build):
783         * svg/SVGFEMorphologyElement.cpp: Ditto.
784         (WebCore::SVGFEMorphologyElement::build):
785         * svg/SVGFEOffsetElement.cpp: Ditto.
786         (WebCore::SVGFEOffsetElement::build):
787         * svg/SVGFESpecularLightingElement.cpp: Ditto.
788         (WebCore::SVGFESpecularLightingElement::build):
789         * svg/SVGFETileElement.cpp: Ditto.
790         (WebCore::SVGFETileElement::build):
791         * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Ditto.
792         (WebCore::FEConvolveMatrix::FEConvolveMatrix):
793         (WebCore::FEConvolveMatrix::create):
794         (WebCore::FEConvolveMatrix::apply):
795         (WebCore::FEConvolveMatrix::externalRepresentation):
796         * svg/graphics/filters/SVGFEConvolveMatrix.h:
797         * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
798         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
799         (WebCore::FEDiffuseLighting::create):
800         (WebCore::FEDiffuseLighting::externalRepresentation):
801         * svg/graphics/filters/SVGFEDiffuseLighting.h:
802         * svg/graphics/filters/SVGFEDisplacementMap.cpp: Ditto.
803         (WebCore::FEDisplacementMap::FEDisplacementMap):
804         (WebCore::FEDisplacementMap::create):
805         (WebCore::FEDisplacementMap::apply):
806         (WebCore::FEDisplacementMap::externalRepresentation):
807         * svg/graphics/filters/SVGFEDisplacementMap.h:
808         * svg/graphics/filters/SVGFEFlood.cpp: Ditto.
809         (WebCore::FEFlood::apply):
810         * svg/graphics/filters/SVGFEImage.cpp: Ditto.
811         (WebCore::FEImage::apply):
812         * svg/graphics/filters/SVGFELighting.cpp: Ditto.
813         (WebCore::FELighting::FELighting):
814         (WebCore::FELighting::apply):
815         * svg/graphics/filters/SVGFELighting.h:
816         * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
817         (WebCore::FEMerge::FEMerge):
818         (WebCore::FEMerge::create):
819         (WebCore::FEMerge::apply):
820         (WebCore::FEMerge::externalRepresentation):
821         * svg/graphics/filters/SVGFEMerge.h:
822         * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
823         (WebCore::FEMorphology::FEMorphology):
824         (WebCore::FEMorphology::create):
825         (WebCore::FEMorphology::apply):
826         (WebCore::FEMorphology::externalRepresentation):
827         * svg/graphics/filters/SVGFEMorphology.h:
828         * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
829         (WebCore::FEOffset::FEOffset):
830         (WebCore::FEOffset::create):
831         (WebCore::FEOffset::apply):
832         (WebCore::FEOffset::externalRepresentation):
833         * svg/graphics/filters/SVGFEOffset.h:
834         * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
835         (WebCore::FESpecularLighting::FESpecularLighting):
836         (WebCore::FESpecularLighting::create):
837         (WebCore::FESpecularLighting::externalRepresentation):
838         * svg/graphics/filters/SVGFESpecularLighting.h:
839         * svg/graphics/filters/SVGFETile.cpp: Ditto.
840         (WebCore::FETile::FETile):
841         (WebCore::FETile::create):
842         (WebCore::FETile::determineFilterPrimitiveSubregion): Renamed to match name scheme.
843         (WebCore::FETile::apply):
844         (WebCore::FETile::externalRepresentation):
845         * svg/graphics/filters/SVGFETile.h:
846         * svg/graphics/filters/SVGFilter.cpp: Renamed itemBox to targetBoundingBox to match name scheme.
847         (WebCore::SVGFilter::SVGFilter):
848         (WebCore::SVGFilter::determineFilterPrimitiveSubregion): Renamed to match name scheme.
849         (WebCore::SVGFilter::create):
850         * svg/graphics/filters/SVGFilter.h:
851         (WebCore::SVGFilter::sourceImageRect):
852
853 2010-09-20  Pavel Podivilov  <podivilov@chromium.org>
854
855         Reviewed by Pavel Feldman.
856
857         Web Inspector: highlight DOM node when hover on link element or DOM breakpoint
858         https://bugs.webkit.org/show_bug.cgi?id=45897
859
860         * inspector/front-end/BreakpointsSidebarPane.js:
861         (WebInspector.BreakpointItem):
862         (WebInspector.JSBreakpointItem):
863         (WebInspector.DOMBreakpointItem):
864         (WebInspector.DOMBreakpointItem.prototype.compareTo):
865         (WebInspector.DOMBreakpointItem.prototype._breakpointClicked):
866         * inspector/front-end/ElementsPanel.js:
867         (WebInspector.ElementsPanel.prototype.hide):
868         (WebInspector.ElementsPanel.prototype.reset):
869         (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
870         (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs):
871         (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
872         (WebInspector.ElementsPanel.prototype.linkifyNodeReference):
873         * inspector/front-end/ElementsTreeOutline.js:
874         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
875         (WebInspector.ElementsTreeOutline.prototype._onmousemove):
876         (WebInspector.ElementsTreeOutline.prototype._onmouseout):
877         * inspector/front-end/inspector.js:
878         (WebInspector.highlightDOMNode):
879         (WebInspector.highlightDOMNodeForTwoSeconds):
880         (WebInspector.wireElementWithDOMNode):
881         (WebInspector._updateFocusedNode):
882         (WebInspector.reset):
883         (WebInspector.updateFocusedNode):
884
885 2010-09-19  Sheriff Bot  <webkit.review.bot@gmail.com>
886
887         Unreviewed, rolling out r67749.
888         http://trac.webkit.org/changeset/67749
889         https://bugs.webkit.org/show_bug.cgi?id=46068
890
891         breaking ToT chromium canary build (Requested by shans on
892         #webkit).
893
894         * bindings/v8/V8DOMWindowShell.cpp:
895         (WebCore::V8DOMWindowShell::createNewContext):
896         * bindings/v8/V8Proxy.cpp:
897         (WebCore::V8Proxy::registeredExtensionWithV8):
898         (WebCore::V8Proxy::registerExtension):
899         * bindings/v8/V8Proxy.h:
900         * loader/EmptyClients.h:
901         * loader/FrameLoaderClient.h:
902
903 2010-09-19  Gavin Barraclough  <barraclough@apple.com>
904
905         Reviewed by Oliver Hunt.
906
907         Bug 46065 - Unify implementation of ToInt32 and ToUInt32, don't use fmod.
908
909         These methods implement the same conversion (see discussion in the notes
910         of sections of 9.5 and 9.6 of the spec), only differing in how the result
911         is interpretted.
912
913         Removing JSValue::toInt32 (since this has weird, non-spec function).
914         A couple of places in the binding are using this method, so adding
915         finiteInt32Value to the bindings to maintain current behaviour.
916
917         Test: fast/js/toInt32UInt32.html
918
919         * bindings/js/JSDOMBinding.h:
920         (WebCore::finiteInt32Value):
921         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
922         (WebCore::JSHTMLOptionsCollection::add):
923         * bindings/js/JSSQLResultSetRowListCustom.cpp:
924         (WebCore::JSSQLResultSetRowList::item):
925         * bindings/js/JSSVGPODListCustom.h:
926         (WebCore::JSSVGPODListCustom::getItem):
927         (WebCore::JSSVGPODListCustom::insertItemBefore):
928         (WebCore::JSSVGPODListCustom::replaceItem):
929         (WebCore::JSSVGPODListCustom::removeItem):
930         * bindings/js/JSSVGPathSegListCustom.cpp:
931         (WebCore::JSSVGPathSegList::getItem):
932         (WebCore::JSSVGPathSegList::insertItemBefore):
933         (WebCore::JSSVGPathSegList::replaceItem):
934         (WebCore::JSSVGPathSegList::removeItem):
935
936 2010-09-19  Andreas Kling  <andreas.kling@nokia.com>
937
938         Reviewed by Kenneth Rohde Christiansen.
939
940         [Qt] clipBoundingRect() should return rect relevant to current layer
941         https://bugs.webkit.org/show_bug.cgi?id=46059
942
943         r65791 inadvertently changed clipBoundingRect() to always use the GC painter
944         without checking the TransparencyLayer stack first.
945
946         * platform/graphics/qt/GraphicsContextQt.cpp:
947         (WebCore::GraphicsContextPlatformPrivate::p):
948         (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect):
949
950 2010-09-19  Sam Weinig  <sam@webkit.org>
951
952         Reviewed by Anders Carlsson.
953
954         Replace WKBundleRangeRef with WKBundleRangeHandleRef.
955         https://bugs.webkit.org/show_bug.cgi?id=46054
956
957         * WebCore.exp.in:
958         * WebCore.xcodeproj/project.pbxproj:
959
960 2010-09-19  Patrick Gansterer  <paroga@paroga.com>
961
962         Unreviewed.
963
964         [WINCE] Buildfix for Gradient after r67801.
965
966         * platform/graphics/Gradient.h:
967         * platform/graphics/wince/GradientWinCE.cpp:
968         (WebCore::Gradient::getStops):
969
970 2010-09-19  Kent Tamura  <tkent@chromium.org>
971
972         Reviewed by Dimitri Glazkov.
973
974         [Chromium] Add is<input type>() functions to WebInputElement
975         https://bugs.webkit.org/show_bug.cgi?id=46035
976
977         * html/HTMLInputElement.h:
978         (WebCore::HTMLInputElement::isText): Added. It is used by WebKit/chromium.
979
980 2010-09-18  Andreas Kling  <andreas.kling@nokia.com>
981
982         Reviewed by Antonio Gomes.
983
984         [Qt] Path: Remove unused member variable
985         https://bugs.webkit.org/show_bug.cgi?id=46048
986
987         Path::m_lastMoveToIndex is not used for anything, so remove it.
988
989         * platform/graphics/Path.h:
990         * platform/graphics/qt/PathQt.cpp:
991         (WebCore::Path::Path):
992         (WebCore::Path::operator=):
993         (WebCore::Path::moveTo):
994
995 2010-09-18  Patrick Gansterer  <paroga@paroga.com>
996
997         Reviewed by Darin Adler.
998
999         Use AtomicString insted of String in XMLDocumentParser
1000         https://bugs.webkit.org/show_bug.cgi?id=45990
1001
1002         Create AtomicString as early as possible.
1003         This can avoid unnecessary memcpy of String content.
1004
1005         * dom/XMLDocumentParser.h:
1006         * dom/XMLDocumentParserLibxml2.cpp:
1007         (WebCore::toAtomicString):
1008         (WebCore::handleElementNamespaces):
1009         (WebCore::handleElementAttributes):
1010         (WebCore::XMLDocumentParser::startElementNs):
1011
1012 2010-09-18  Erik Arvidsson  <arv@chromium.org>
1013
1014         Reviewed by Nate Chapin.
1015
1016         [Chromium] fast/dom/dataset-gc.html is failing
1017         https://bugs.webkit.org/show_bug.cgi?id=45426
1018
1019         * bindings/scripts/CodeGeneratorV8.pm:
1020         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
1021         (WebCore::toV8):
1022         * dom/DOMStringMap.h:
1023         * dom/DatasetDOMStringMap.h:
1024         (WebCore::DatasetDOMStringMap::element):
1025
1026 2010-09-18  Andreas Kling  <andreas.kling@nokia.com>
1027
1028         Reviewed by Oliver Hunt.
1029
1030         Gradient: Fast-path for the ideal case in sortStopsIfNecessary()
1031         https://bugs.webkit.org/show_bug.cgi?id=46045
1032
1033         Avoid calling std::stable_sort for 2-stop gradients that are already in order.
1034
1035         * platform/graphics/Gradient.cpp:
1036         (WebCore::Gradient::sortStopsIfNecessary):
1037
1038 2010-09-18  Kwang Yul Seo  <skyul@company100.net>
1039
1040         Reviewed by Andreas Kling.
1041
1042         [BREWMP] Fix a typo in key code name
1043         https://bugs.webkit.org/show_bug.cgi?id=46003
1044
1045         AVK_CLR is the right Brew MP key code name for VK_BACK.
1046
1047         * platform/brew/PlatformKeyboardEventBrew.cpp:
1048         (WebCore::windowsKeyCodeForKeyEvent):
1049
1050 2010-09-18  Andreas Kling  <andreas.kling@nokia.com>
1051
1052         Reviewed by Oliver Hunt.
1053
1054         Gradient: Pre-reserve space for 2 color stops
1055         https://bugs.webkit.org/show_bug.cgi?id=46044
1056
1057         Most gradients have only 2 color stops, pre-reserve space for these in m_stops
1058         to avoid growing the vector dynamically in the common case.
1059
1060         * platform/graphics/Gradient.h:
1061
1062 2010-09-18  Dimitri Glazkov  <dglazkov@chromium.org>
1063
1064         Unreviewed, rolling out r67792.
1065         http://trac.webkit.org/changeset/67792
1066         https://bugs.webkit.org/show_bug.cgi?id=45976
1067
1068         Broke over a hundred SVG tests.
1069
1070         * platform/graphics/GraphicsContext.cpp:
1071         (WebCore::GraphicsContext::drawImage):
1072         (WebCore::GraphicsContext::drawImageBuffer):
1073         * platform/graphics/GraphicsContext.h:
1074
1075 2010-09-18  Mihai Parparita  <mihaip@chromium.org>
1076
1077         Reviewed by Simon Fraser.
1078
1079         webkitAnimationEnd event doesn't fire when skipping over final iteration
1080         https://bugs.webkit.org/show_bug.cgi?id=46010
1081         
1082         It's possible for AnimationBase::fireAnimationEventsIfNeeded to decide
1083         that the animation is ended while we're in the looping state, if the
1084         animation timer never fires during an iteration. That then fails the
1085         assert in AnimationBase::updateStateMachine (we don't expect
1086         AnimationStateInputEndTimerFired while in the looping state). Jump the
1087         state to AnimationStateEnding, which is more accurate.
1088
1089         Test: animations/animation-end-event-short-iterations.html
1090
1091         * page/animation/AnimationBase.cpp:
1092         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
1093
1094 2010-09-18  Kwang Yul Seo  <skyul@company100.net>
1095
1096         Reviewed by Andreas Kling.
1097
1098         [BREWMP] Wrong key code type in keyIdentifierForBrewKeyCode
1099         https://bugs.webkit.org/show_bug.cgi?id=46005
1100
1101         The type of key code in Brew MP is uint16. Take uint16 instead of int16 in keyIdentifierForBrewKeyCode.
1102
1103         * platform/brew/PlatformKeyboardEventBrew.cpp:
1104         (WebCore::keyIdentifierForBrewKeyCode):
1105
1106 2010-09-18  Matthew Delaney  <mdelaney@apple.com>
1107
1108         Reviewed by Oliver Hunt.
1109
1110         Canvas drawImage with source or destination widths/heights of -1 renders incorrectly.
1111         https://bugs.webkit.org/show_bug.cgi?id=45976
1112
1113         Specifying a -1 width or height for either the source or destination rectangle in drawImage
1114         get improperly drawn with -1 replaced as the corresponding image width or height. This was because
1115         the value -1 was being passed around to signal non-specified widths and heights and thus was
1116         interpreted lower down in the drawImage implementation which disallowed any calls that actually
1117         wanted to use -1 as the widths or heights. Fixed this by moving the default logic up and not using
1118         -1 in-band signaling to denote default behavior.
1119
1120         Tests: canvas/philip/tests/2d.drawImage.negativeOneDest.html
1121                canvas/philip/tests/2d.drawImage.negativeOneSource.html
1122
1123         * platform/graphics/GraphicsContext.cpp: Removed -1 in-band signals and replaced cascased calls to have
1124         the desired replaces for unspecified widths and heights earlier on.
1125         * platform/graphics/GraphicsContext.h: Removed faulty default value.
1126
1127 2010-09-18  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1128
1129         Reviewed by Kenneth Rohde Christiansen.
1130
1131         Enable Platform Strategies on Qt
1132
1133         [Qt] Turn on PLATFORM_STRATEGIES
1134         https://bugs.webkit.org/show_bug.cgi?id=45831
1135
1136         * WebCore.pro: Adding/removing implementation files
1137         * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was
1138         moved from platform/qt/Localizations.cpp
1139         (WebCore::defaultLanguage): Moved from Localizations.cpp
1140         * platform/qt/Localizations.cpp: Removed (code is now inside
1141         WebCoreSupport/WebPlatformStrategies.cpp)
1142         * plugins/qt/PluginDataQt.cpp: Removed (idem)
1143
1144 2010-09-18  Patrick Gansterer  <paroga@paroga.com>
1145
1146         Reviewed by Darin Adler.
1147
1148         Rename Wince files to WinCE
1149         https://bugs.webkit.org/show_bug.cgi?id=37287
1150
1151         * loader/icon/wince/IconDatabaseWinCE.cpp: Copied from WebCore/loader/icon/wince/IconDatabaseWince.cpp.
1152         * loader/icon/wince/IconDatabaseWince.cpp: Removed.
1153         * page/wince/FrameWinCE.cpp: Copied from WebCore/page/wince/FrameWince.cpp.
1154         * page/wince/FrameWince.cpp: Removed.
1155         * platform/graphics/MediaPlayer.cpp:
1156         * platform/graphics/wince/ColorWinCE.cpp: Copied from WebCore/platform/graphics/wince/ColorWince.cpp.
1157         * platform/graphics/wince/ColorWince.cpp: Removed.
1158         * platform/graphics/wince/FontCacheWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontCacheWince.cpp.
1159         * platform/graphics/wince/FontCacheWince.cpp: Removed.
1160         * platform/graphics/wince/FontWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontWince.cpp.
1161         * platform/graphics/wince/FontWince.cpp: Removed.
1162         * platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Copied from WebCore/platform/graphics/wince/GlyphPageTreeNodeWince.cpp.
1163         * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Removed.
1164         * platform/graphics/wince/GradientWinCE.cpp: Copied from WebCore/platform/graphics/wince/GradientWince.cpp.
1165         * platform/graphics/wince/GradientWince.cpp: Removed.
1166         * platform/graphics/wince/GraphicsContextWinCE.cpp: Copied from WebCore/platform/graphics/wince/GraphicsContextWince.cpp.
1167         * platform/graphics/wince/GraphicsContextWince.cpp: Removed.
1168         * platform/graphics/wince/ImageBufferWinCE.cpp: Copied from WebCore/platform/graphics/wince/ImageBufferWince.cpp.
1169         * platform/graphics/wince/ImageBufferWince.cpp: Removed.
1170         * platform/graphics/wince/MediaPlayerPrivateWinCE.h: Copied from WebCore/platform/graphics/wince/MediaPlayerPrivateWince.h.
1171         * platform/graphics/wince/MediaPlayerPrivateWince.h: Removed.
1172         * platform/graphics/wince/PathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PathWince.cpp.
1173         * platform/graphics/wince/PathWince.cpp: Removed.
1174         * platform/graphics/wince/PlatformPathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PlatformPathWince.cpp.
1175         * platform/graphics/wince/PlatformPathWinCE.h: Copied from WebCore/platform/graphics/wince/PlatformPathWince.h.
1176         * platform/graphics/wince/PlatformPathWince.cpp: Removed.
1177         * platform/graphics/wince/PlatformPathWince.h: Removed.
1178         * platform/graphics/wince/SimpleFontDataWinCE.cpp: Copied from WebCore/platform/graphics/wince/SimpleFontDataWince.cpp.
1179         * platform/graphics/wince/SimpleFontDataWince.cpp: Removed.
1180         * platform/graphics/wince/WinCEGraphicsExtras.h: Copied from WebCore/platform/graphics/wince/WinceGraphicsExtras.h.
1181         * platform/graphics/wince/WinceGraphicsExtras.h: Removed.
1182         * platform/text/wince/TextBoundariesWinCE.cpp: Copied from WebCore/platform/text/wince/TextBoundariesWince.cpp.
1183         * platform/text/wince/TextBoundariesWince.cpp: Removed.
1184         * platform/text/wince/TextBreakIteratorWinCE.cpp: Copied from WebCore/platform/text/wince/TextBreakIteratorWince.cpp.
1185         * platform/text/wince/TextBreakIteratorWince.cpp: Removed.
1186         * platform/wince/CursorWinCE.cpp: Copied from WebCore/platform/wince/CursorWince.cpp.
1187         * platform/wince/CursorWince.cpp: Removed.
1188         * platform/wince/DragDataWinCE.cpp: Copied from WebCore/platform/wince/DragDataWince.cpp.
1189         * platform/wince/DragDataWince.cpp: Removed.
1190         * platform/wince/DragImageWinCE.cpp: Copied from WebCore/platform/wince/DragImageWince.cpp.
1191         * platform/wince/DragImageWince.cpp: Removed.
1192         * platform/wince/EditorWinCE.cpp: Copied from WebCore/platform/wince/EditorWince.cpp.
1193         (WebCore::Editor::newGeneralClipboard):
1194         * platform/wince/EditorWince.cpp: Removed.
1195         * platform/wince/FileChooserWinCE.cpp: Copied from WebCore/platform/wince/FileChooserWince.cpp.
1196         * platform/wince/FileChooserWince.cpp: Removed.
1197         * platform/wince/FileSystemWinCE.cpp: Copied from WebCore/platform/wince/FileSystemWince.cpp.
1198         * platform/wince/FileSystemWince.cpp: Removed.
1199         * platform/wince/KURLWinCE.cpp: Copied from WebCore/platform/wince/KURLWince.cpp.
1200         * platform/wince/KURLWince.cpp: Removed.
1201         * platform/wince/KeygenWinCE.cpp: Copied from WebCore/platform/wince/KeygenWince.cpp.
1202         * platform/wince/KeygenWince.cpp: Removed.
1203         * platform/wince/MIMETypeRegistryWinCE.cpp: Copied from WebCore/platform/wince/MIMETypeRegistryWince.cpp.
1204         * platform/wince/MIMETypeRegistryWince.cpp: Removed.
1205         * platform/wince/PasteboardWinCE.cpp: Copied from WebCore/platform/wince/PasteboardWince.cpp.
1206         * platform/wince/PasteboardWince.cpp: Removed.
1207         * platform/wince/SearchPopupMenuWinCE.cpp: Copied from WebCore/platform/wince/SearchPopupMenuWince.cpp.
1208         * platform/wince/SearchPopupMenuWince.cpp: Removed.
1209         * platform/wince/SharedTimerWinCE.cpp: Copied from WebCore/platform/wince/SharedTimerWince.cpp.
1210         * platform/wince/SharedTimerWince.cpp: Removed.
1211         * rendering/RenderThemeWinCE.cpp: Copied from WebCore/rendering/RenderThemeWince.cpp.
1212         (WebCore::RenderThemeWinCE::create):
1213         (WebCore::RenderTheme::themeForPage):
1214         (WebCore::RenderThemeWinCE::RenderThemeWinCE):
1215         (WebCore::RenderThemeWinCE::~RenderThemeWinCE):
1216         (WebCore::RenderThemeWinCE::platformActiveSelectionBackgroundColor):
1217         (WebCore::RenderThemeWinCE::platformInactiveSelectionBackgroundColor):
1218         (WebCore::RenderThemeWinCE::platformActiveSelectionForegroundColor):
1219         (WebCore::RenderThemeWinCE::platformInactiveSelectionForegroundColor):
1220         (WebCore::RenderThemeWinCE::supportsFocus):
1221         (WebCore::RenderThemeWinCE::supportsFocusRing):
1222         (WebCore::RenderThemeWinCE::determineClassicState):
1223         (WebCore::RenderThemeWinCE::getThemeData):
1224         (WebCore::RenderThemeWinCE::paintButton):
1225         (WebCore::RenderThemeWinCE::setCheckboxSize):
1226         (WebCore::RenderThemeWinCE::paintTextField):
1227         (WebCore::RenderThemeWinCE::adjustMenuListStyle):
1228         (WebCore::RenderThemeWinCE::paintMenuList):
1229         (WebCore::RenderThemeWinCE::paintMenuListButton):
1230         (WebCore::RenderThemeWinCE::systemFont):
1231         (WebCore::RenderThemeWinCE::themeChanged):
1232         (WebCore::RenderThemeWinCE::extraDefaultStyleSheet):
1233         (WebCore::RenderThemeWinCE::extraQuirksStyleSheet):
1234         (WebCore::RenderThemeWinCE::supportsHover):
1235         (WebCore::RenderThemeWinCE::systemColor):
1236         (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
1237         (WebCore::RenderThemeWinCE::adjustButtonInnerStyle):
1238         (WebCore::RenderThemeWinCE::adjustSearchFieldStyle):
1239         (WebCore::RenderThemeWinCE::paintSearchField):
1240         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
1241         (WebCore::RenderThemeWinCE::adjustSearchFieldCancelButtonStyle):
1242         (WebCore::RenderThemeWinCE::adjustSearchFieldDecorationStyle):
1243         (WebCore::RenderThemeWinCE::adjustSearchFieldResultsDecorationStyle):
1244         (WebCore::RenderThemeWinCE::paintSearchFieldResultsDecoration):
1245         (WebCore::RenderThemeWinCE::adjustSearchFieldResultsButtonStyle):
1246         (WebCore::RenderThemeWinCE::paintSearchFieldResultsButton):
1247         (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle):
1248         (WebCore::RenderThemeWinCE::paintSliderTrack):
1249         (WebCore::RenderThemeWinCE::paintSliderThumb):
1250         (WebCore::RenderThemeWinCE::paintMediaFullscreenButton):
1251         (WebCore::RenderThemeWinCE::paintMediaMuteButton):
1252         (WebCore::RenderThemeWinCE::paintMediaPlayButton):
1253         (WebCore::RenderThemeWinCE::paintMediaSeekBackButton):
1254         (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton):
1255         (WebCore::RenderThemeWinCE::paintMediaSliderTrack):
1256         (WebCore::RenderThemeWinCE::paintMediaSliderThumb):
1257         * rendering/RenderThemeWinCE.h: Copied from WebCore/rendering/RenderThemeWince.h.
1258         * rendering/RenderThemeWince.cpp: Removed.
1259         * rendering/RenderThemeWince.h: Removed.
1260         * storage/wince/DatabaseThreadWinCE.cpp: Copied from WebCore/storage/wince/DatabaseThreadWince.cpp.
1261         * storage/wince/DatabaseThreadWinCE.h: Copied from WebCore/storage/wince/DatabaseThreadWince.h.
1262         * storage/wince/DatabaseThreadWince.cpp: Removed.
1263         * storage/wince/DatabaseThreadWince.h: Removed.
1264         * storage/wince/LocalStorageThreadWinCE.cpp: Copied from WebCore/storage/wince/LocalStorageThreadWince.cpp.
1265         * storage/wince/LocalStorageThreadWinCE.h: Copied from WebCore/storage/wince/LocalStorageThreadWince.h.
1266         * storage/wince/LocalStorageThreadWince.cpp: Removed.
1267         * storage/wince/LocalStorageThreadWince.h: Removed.
1268
1269 2010-09-18  Patrick Gansterer  <paroga@paroga.com>
1270
1271         Reviewed by Eric Seidel.
1272
1273         Move Plugin*None.cpp from CMakeLists.txt into CMakeListsEfl.txt
1274         https://bugs.webkit.org/show_bug.cgi?id=45900
1275
1276         PluginDataNone.cpp and PluginViewNone.cpp are not used by all port.
1277         Move them into plaform sepcific build system.
1278
1279         * CMakeLists.txt:
1280         * CMakeListsEfl.txt:
1281
1282 2010-09-18  Andreas Kling  <andreas.kling@nokia.com>
1283
1284         Reviewed by Simon Hausmann.
1285
1286         [Qt] Don't copy clip path to TransparencyLayer
1287         https://bugs.webkit.org/show_bug.cgi?id=45965
1288
1289         We don't need to copy the GC's clip path to the TransparencyLayer since it will
1290         clip anyway when ending the layer.
1291
1292         * platform/graphics/qt/TransparencyLayer.h:
1293         (WebCore::TransparencyLayer::TransparencyLayer):
1294
1295 2010-09-18  Patrick Gansterer  <paroga@paroga.com>
1296
1297         Unreviewed.
1298
1299         [WINCE] Buildfix for FrameWince.cpp after r51353, r67762 and r67771.
1300
1301         * page/wince/FrameWince.cpp:
1302         (WebCore::computePageRectsForFrame):
1303         (WebCore::imageFromSelection):
1304
1305 2010-09-18  Kent Tamura  <tkent@chromium.org>
1306
1307         Unreviewed, a trivial change.
1308
1309         Run sort-Xcode-project-file.
1310
1311         * WebCore.xcodeproj/project.pbxproj:
1312
1313 2010-09-18  Dan Bernstein  <mitz@apple.com>
1314
1315         Reviewed by Eric Seidel.
1316
1317         REGRESSION (r67762): Over 160 layout tests failing due to incorrect zoom factors in subframes
1318         https://bugs.webkit.org/show_bug.cgi?id=46031
1319
1320         * page/Frame.cpp:
1321         (WebCore::parentPageZoomFactor): Return the zoom factor of the parent frame.
1322         (WebCore::parentTextZoomFactor): Ditto.
1323
1324 2010-09-17  Sam Weinig  <sam@webkit.org>
1325
1326         Reviewed by Jon Honeycutt.
1327
1328         Need a way to load data (as plain text) in a WKPage
1329         <rdar://problem/8424239>
1330
1331         * WebCore.exp.in:
1332
1333 2010-09-17  David Hyatt  <hyatt@apple.com>
1334
1335         Reviewed by Sam Weinig.
1336
1337         https://bugs.webkit.org/show_bug.cgi?id=46027, image on gamespot.com paginates without bringing its enclosing border along.
1338         
1339         Make sure that unsplittable objects like replaced elements propagate their pagination strut outward to the parent block
1340         when appropriate.  An image on a line did this, but a block-level image did not.
1341
1342         Added fast/multicol/image-inside-nested-blocks-with-border.html
1343
1344         * rendering/RenderBlock.cpp:
1345         (WebCore::RenderBlock::layoutBlockChild):
1346
1347 2010-09-17  Dimitri Glazkov  <dglazkov@chromium.org>
1348
1349         Unreviewed, build fix.
1350
1351         Move calls from frameView->pageZoomFactor() to frame->pageZoomFactor().
1352
1353         * page/EventHandler.cpp:
1354         (WebCore::EventHandler::handleTouchEvent): Removed a helper function,
1355             added direct calls to frame->pageZoomFactor().
1356
1357 2010-09-17  David Hyatt  <hyatt@apple.com>
1358
1359         Reviewed by Simon Fraser.
1360
1361         https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model.
1362
1363         Make printing store the page height in the RenderView and push that into the layout state to
1364         use the new pagination model.  The old pagination model is retained because it is still used
1365         for embedded WebViews.
1366
1367         * page/FrameView.cpp:
1368         (WebCore::FrameView::reset):
1369         (WebCore::FrameView::layout):
1370         (WebCore::FrameView::forceLayout):
1371         (WebCore::FrameView::forceLayoutForPagination):
1372         (WebCore::FrameView::adjustPageHeight):
1373         * page/FrameView.h:
1374         * page/PrintContext.cpp:
1375         (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
1376         * rendering/RenderBlock.cpp:
1377         (WebCore::RenderBlock::paintChildren):
1378         * rendering/RenderBox.cpp:
1379         (WebCore::RenderBox::calcHeight):
1380         * rendering/RenderImage.cpp:
1381         (WebCore::RenderImage::paintReplaced):
1382         * rendering/RenderLineBoxList.cpp:
1383         (WebCore::RenderLineBoxList::paint):
1384         * rendering/RenderVideo.cpp:
1385         (WebCore::RenderVideo::paintReplaced):
1386         * rendering/RenderView.cpp:
1387         (WebCore::RenderView::RenderView):
1388         (WebCore::RenderView::layout):
1389         (WebCore::RenderView::paint):
1390         (WebCore::RenderView::setBestTruncatedAt):
1391         * rendering/RenderView.h:
1392         (WebCore::RenderView::popLayoutState):
1393         (WebCore::RenderView::pageHeight):
1394         (WebCore::RenderView::setPageHeight):
1395         (WebCore::RenderView::bestTruncatedAt):
1396         (WebCore::RenderView::truncatedAt):
1397         (WebCore::RenderView::setTruncatedAt):
1398         (WebCore::RenderView::printRect):
1399         (WebCore::RenderView::setPrintRect):
1400         (WebCore::RenderView::pushLayoutState):
1401         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
1402         (WebCore::LayoutStateMaintainer::push):
1403         (WebCore::LayoutStateMaintainer::pop):
1404
1405 2010-09-17  Dan Bernstein  <mitz@apple.com>
1406
1407         Reviewed by Simon Fraser.
1408
1409         Canvas sizing ignores intrinsic size
1410         https://bugs.webkit.org/show_bug.cgi?id=46024
1411
1412         Updated fast/replaced/table-percent-height.html
1413
1414         * rendering/RenderEmbeddedObject.cpp:
1415         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): If this is used as a proxy
1416         for <video>, behave like it has an intrinsic size (e.g. preserve aspect ratio when
1417         width is auto and height is specified).
1418         * rendering/RenderImage.cpp:
1419         (WebCore::RenderImage::calcAspectRatioWidth): Changed to explicitly invoke
1420         RenderBox::calcReplacedHeight(), now that RenderReplaced has its own implementation
1421         which we don’t want.
1422         (WebCore::RenderImage::calcAspectRatioHeight): Similarly with calcReplacedWidth().
1423         * rendering/RenderImage.h:
1424         * rendering/RenderReplaced.cpp:
1425         (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasIntrinsicSize.
1426         (WebCore::lengthIsSpecified): Added this helper function, based on RenderImage’s
1427         is{Width,Height}Specified().
1428         (WebCore::RenderReplaced::calcReplacedWidth): Moved from RenderVideo all the way
1429         up here so other replaced objects could use this logic.
1430         (WebCore::RenderReplaced::calcReplacedHeight): Ditto.
1431         (WebCore::RenderReplaced::calcAspectRatioWidth): Ditto.
1432         (WebCore::RenderReplaced::calcAspectRatioHeight): Ditto.
1433         (WebCore::RenderReplaced::calcPrefWidths): Replaced with the RenderImage version
1434         of the logic.
1435         (WebCore::RenderReplaced::setIntrinsicSize): Added an assertion.
1436         * rendering/RenderReplaced.h:
1437         (WebCore::RenderReplaced::minimumReplacedHeight): Promoted from private to protected
1438         to allow RenderVideo to call through.
1439         (WebCore::RenderReplaced::setHasIntrinsicSize): Added this setter.
1440         * rendering/RenderVideo.cpp:
1441         (WebCore::RenderVideo::updateIntrinsicSize): Factor zoom into the intrinsic size,
1442         the way other RenderReplaced objects do.
1443         (WebCore::RenderVideo::calcReplacedWidth): Invoke the RenderReplaced implementation,
1444         which matches what used to be here, skipping over the RenderImage implementation.
1445         (WebCore::RenderVideo::calcReplacedHeight): Ditto.
1446         (WebCore::RenderVideo::minimumReplacedHeight): Ditto.
1447         * rendering/RenderVideo.h:
1448
1449 2010-09-17  Darin Adler  <darin@apple.com>
1450
1451         Build fix for platforms that compile Touch.
1452
1453         * dom/Touch.cpp:
1454         (WebCore::contentsX):
1455         (WebCore::contentsY):
1456         Get zoom factor from Frame rather than FrameView.
1457
1458 2010-09-17  Darin Adler  <darin@apple.com>
1459
1460         Reviewed by Sam Weinig.
1461
1462         REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
1463         https://bugs.webkit.org/show_bug.cgi?id=42863
1464
1465         Moved zoom level back from FrameView to Frame.
1466         I had forgotten that FrameView's lifetime is much shorter than
1467         Frame's, and until that is fixed it's best to leave this on Frame.
1468
1469         * WebCore.exp.in: Updated.
1470
1471         * css/CSSStyleSelector.cpp:
1472         (WebCore::CSSStyleSelector::styleForDocument):
1473         (WebCore::CSSStyleSelector::applyProperty):
1474         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
1475         * dom/Document.cpp:
1476         (WebCore::Document::nodesFromRect):
1477         (WebCore::Document::elementFromPoint):
1478         (WebCore::Document::caretRangeFromPoint):
1479         * dom/MouseRelatedEvent.cpp:
1480         (WebCore::contentsX):
1481         (WebCore::contentsY):
1482         (WebCore::pageZoomFactor):
1483         * dom/Node.cpp:
1484         (WebCore::Node::dispatchMouseEvent):
1485         (WebCore::Node::dispatchWheelEvent):
1486         * html/HTMLBodyElement.cpp:
1487         (WebCore::adjustForZoom):
1488         (WebCore::HTMLBodyElement::scrollLeft):
1489         (WebCore::HTMLBodyElement::setScrollLeft):
1490         (WebCore::HTMLBodyElement::scrollTop):
1491         (WebCore::HTMLBodyElement::setScrollTop):
1492         (WebCore::HTMLBodyElement::scrollHeight):
1493         (WebCore::HTMLBodyElement::scrollWidth):
1494         * html/ImageDocument.cpp:
1495         (WebCore::pageZoomFactor):
1496         (WebCore::ImageDocument::scale):
1497         (WebCore::ImageDocument::imageFitsInWindow):
1498         * page/DOMWindow.cpp:
1499         (WebCore::DOMWindow::innerHeight):
1500         (WebCore::DOMWindow::innerWidth):
1501         (WebCore::DOMWindow::scrollX):
1502         (WebCore::DOMWindow::scrollY):
1503         (WebCore::DOMWindow::scrollTo):
1504         * page/DragController.cpp:
1505         (WebCore::elementUnderMouse):
1506         * rendering/RenderView.cpp:
1507         (WebCore::RenderView::zoomFactor):
1508         * svg/SVGSVGElement.cpp:
1509         (WebCore::SVGSVGElement::currentScale):
1510         (WebCore::SVGSVGElement::setCurrentScale):
1511         Get zoom factor from Frame rather than FrameView.
1512
1513         * page/Frame.cpp:
1514         (WebCore::parentPageZoomFactor): Moved back here from FrameView.
1515         (WebCore::parentTextZoomFactor): Ditto.
1516         (WebCore::Frame::Frame): Ditto.
1517         (WebCore::Frame::setPageZoomFactor): Ditto.
1518         (WebCore::Frame::setTextZoomFactor): Ditto.
1519         (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
1520
1521         * page/Frame.h: Moved functions and data for zooming back here
1522         from FrameView.
1523
1524         * page/FrameView.cpp:
1525         (WebCore::FrameView::FrameView):
1526         * page/FrameView.h:
1527         Removed code from here.
1528
1529 2010-09-17  Matthew Delaney  <mdelaney@apple.com>
1530
1531         Reviewed by Simon Fraser.
1532
1533         Reduce minimum DOMTimer interval
1534         https://bugs.webkit.org/show_bug.cgi?id=45362
1535
1536         Reduced the minimum allowed DOMTimer interval to 4ms. This has us matching Chrome,
1537         which hasn't had any problem with 4ms in the past 2 years, as well as increasing our
1538         performance on perf tests that have tight frequent loops such as canvas "animation"
1539         performance tests.
1540
1541         No new tests added. Can't reliably instrument a test in javascript to verify that
1542         the minimum clamped interval time is in fact 4ms. 
1543
1544         * WebCore.exp.in:
1545         * page/DOMTimer.cpp: Removed old comments.
1546         * page/DOMTimer.h: Removed old comments.
1547         * page/Settings.cpp: Exposted new method to set minimum DOMTimer interval.
1548         * page/Settings.h:
1549
1550 2010-09-17  Marc-Antoine Ruel  <maruel@chromium.org>
1551
1552         Reviewed by Dimitri Glazkov.
1553
1554         [Chromium] Split webcore_platform off webcore_remaining
1555
1556         Further reduce webcore_remaining size by moving platform/ code in its
1557         own static libary.
1558         https://bugs.webkit.org/show_bug.cgi?id=45915
1559
1560         * WebCore.gyp/WebCore.gyp:
1561
1562 2010-09-13  Matt Perry  <mpcomplete@chromium.org>
1563
1564         Reviewed by Darin Fisher.
1565
1566         Have V8DOMWindowShell ask the embedder whether to run a V8 extension
1567         in a particular script context.
1568         https://bugs.webkit.org/show_bug.cgi?id=45721
1569
1570         * bindings/v8/V8DOMWindowShell.cpp:
1571         (WebCore::V8DOMWindowShell::createNewContext):
1572         * bindings/v8/V8Proxy.cpp:
1573         (WebCore::V8Proxy::registeredExtensionWithV8):
1574         (WebCore::V8Proxy::registerExtension):
1575         * bindings/v8/V8Proxy.h:
1576         * loader/EmptyClients.h:
1577         (WebCore::EmptyFrameLoaderClient::allowScriptExtension):
1578         * loader/FrameLoaderClient.h:
1579
1580 2010-09-17  Anders Carlsson  <andersca@apple.com>
1581
1582         Reviewed by Sam Weinig.
1583
1584         REGRESSION (r66711): Plug-in replacement text is never shown
1585         https://bugs.webkit.org/show_bug.cgi?id=45997
1586         <rdar://problem/8446766>
1587
1588         Don't return when the plug-in has replacement text.
1589
1590         * rendering/RenderEmbeddedObject.cpp:
1591         (WebCore::RenderEmbeddedObject::paintReplaced):
1592
1593 2010-09-17  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
1594
1595         Unreviewed, build fix. Add files missed in r67704.
1596
1597         * CMakeLists.txt:
1598
1599 2010-09-17  Simon Fraser  <simon.fraser@apple.com>
1600
1601         Reviewed by Chris Marrin.
1602
1603         Remove scroll and clip layers for WKCACFLayerRenderer
1604         https://bugs.webkit.org/show_bug.cgi?id=45922
1605
1606         WKCACFLayerRenderer no longer needs its own layers for managing scrolling
1607         and clipping, because RenderLayerCompositor provides this functionality.
1608
1609         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1610         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Remove call to setScrollFrame().
1611         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): Ditto.
1612
1613         * platform/graphics/win/WKCACFLayerRenderer.cpp: Remove references to scroll and clip layers
1614         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
1615         (WebCore::WKCACFLayerRenderer::setRootChildLayer):
1616         (WebCore::WKCACFLayerRenderer::destroyRenderer):
1617         (WebCore::WKCACFLayerRenderer::resize):
1618         * platform/graphics/win/WKCACFLayerRenderer.h:
1619
1620         * rendering/RenderLayerCompositor.cpp:
1621         (WebCore::RenderLayerCompositor::layerTreeAsText): Dump the layers from the root platform layer.
1622         (WebCore::RenderLayerCompositor::requiresScrollLayer): On Windows,
1623         always say yes.
1624
1625 2010-09-17  Jian Li  <jianli@chromium.org>
1626
1627         Reviewed by Dmitry Titov.
1628
1629         createBlobURL with no argument causes crash.
1630         https://bugs.webkit.org/show_bug.cgi?id=45880
1631
1632         The fix is to check if the passing blob argument is NULL or not.
1633
1634         Test: fast/files/create-blob-url-crash.html
1635
1636         * dom/ScriptExecutionContext.cpp:
1637         (WebCore::ScriptExecutionContext::createPublicBlobURL):
1638         * page/DOMWindow.idl: Add attribute to convert null string to undefined.
1639
1640 2010-09-17  Chris Marrin  <cmarrin@apple.com>
1641
1642         Reviewed by Simon Fraser.
1643
1644         Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac
1645         https://bugs.webkit.org/show_bug.cgi?id=45911
1646
1647         * WebCore.exp.in:
1648
1649 2010-09-17  Tony Gentilcore  <tonyg@chromium.org>
1650
1651         Reviewed by Adam Barth.
1652
1653         ASSERTION FAILED: m_loadEventDelayCount
1654         https://bugs.webkit.org/show_bug.cgi?id=45790
1655
1656         * dom/AsyncScriptRunner.cpp: 
1657         (WebCore::AsyncScriptRunner::timerFired): Protect document before we go running scripts.
1658
1659 2010-09-17  Stephen White  <senorblanco@chromium.org>
1660
1661         Reviewed by Kenneth Russell.
1662
1663         [CHROMIUM] GPU-accelerated canvas should work in test_shell.
1664         https://bugs.webkit.org/show_bug.cgi?id=45968
1665
1666         In order for the shaders in GPU-accelerated canvas to work in both the
1667         GraphicsContext3D / GLES2 path as well as chromium's test_shell (which
1668         passes them to the Mesa backend unmodified), the precision specifiers
1669         in the fragment shader have to be wrapped in #if GL_ES.
1670
1671         Soon to be covered by many layout tests.
1672
1673         * platform/graphics/gpu/SolidFillShader.cpp:
1674         (WebCore::SolidFillShader::create):
1675         * platform/graphics/gpu/TexShader.cpp:
1676         (WebCore::TexShader::create):
1677
1678 2010-09-17  Martin Robinson  <mrobinson@igalia.com>
1679
1680         Reviewed by Xan Lopez.
1681
1682         [GTK] [REGRESSION] Listbox rendering is incorrect
1683         https://bugs.webkit.org/show_bug.cgi?id=45941
1684
1685         Only apply the shadow tiling optimization to a layer if the GraphicsContext
1686         has a shadow.
1687
1688         This is covered by manual-tests/select-element-type-select.html.
1689
1690         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1691         (WebCore::drawBorderlessRectShadow): Before applying the tiled shadow optimization
1692         first check to see if the context has a shadow at all.
1693
1694 2010-09-17  Martin Robinson  <mrobinson@igalia.com>
1695
1696         Reviewed by Oliver Hunt.
1697
1698         [GTK] FontPlatformDataFreeType should use smart pointers to hold its members
1699         https://bugs.webkit.org/show_bug.cgi?id=45917
1700
1701         Have FontPlatformDataFreeType use smart pointers to hold its reference-counted
1702         members. Also move the FcPattern specialization from OwnPtrCairo to PlatformRefPtrCairo
1703         as this type is reference-counted.
1704
1705         No new tests as this should not introduce any functionality changes.
1706
1707         * platform/graphics/cairo/FontCacheFreeType.cpp:
1708         (WebCore::FontCache::getFontDataForCharacters): Updated to reflect smart pointer changes.
1709         (WebCore::FontCache::createFontPlatformData): Ditto.
1710         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
1711         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1712         (WebCore::FontPlatformData::operator=): Ditto.
1713         (WebCore::FontPlatformData::~FontPlatformData): Ditto.
1714         (WebCore::FontPlatformData::isFixedPitch): Ditto.
1715         (WebCore::FontPlatformData::operator==): Ditto.
1716         * platform/graphics/cairo/FontPlatformDataFreeType.h:
1717         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1718         (WebCore::FontPlatformData::scaledFont): Ditto.
1719         (WebCore::FontPlatformData::hash): Ditto.
1720         (WebCore::FontPlatformData::isHashTableDeletedValue): Ditto.
1721         * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp:
1722         (WebCore::GlyphPage::fill): Ditto.
1723         * platform/graphics/cairo/OwnPtrCairo.cpp: Removed FcPattern specialization.
1724         * platform/graphics/cairo/OwnPtrCairo.h: Ditto.
1725         * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added FcPattern and cairo_scaled_font_t specializations.
1726         (WTF::refPlatformPtr): Ditto.
1727         (WTF::derefPlatformPtr): Ditto.
1728         * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto.
1729         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
1730         (WebCore::SimpleFontData::platformInit): Updated to reflect smart pointer changes.
1731         (WebCore::SimpleFontData::containsCharacters): Ditto.
1732         (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
1733         * platform/graphics/gtk/FontGtk.cpp:
1734         (WebCore::setPangoAttributes): Ditto.
1735
1736 2010-09-14  Pavel Podivilov  <podivilov@chromium.org>
1737
1738         Reviewed by Pavel Feldman.
1739
1740         Web Inspector: show status message below call stack when debugger is paused on DOM breakpoint
1741         https://bugs.webkit.org/show_bug.cgi?id=45114
1742
1743         * English.lproj/localizedStrings.js:
1744         * inspector/InspectorDOMAgent.cpp:
1745         (WebCore::InspectorDOMAgent::performSearch):
1746         (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
1747         (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
1748         (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
1749         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
1750         * inspector/InspectorDOMAgent.h:
1751         * inspector/InspectorDebuggerAgent.cpp:
1752         (WebCore::InspectorDebuggerAgent::didPause):
1753         * inspector/front-end/CallStackSidebarPane.js:
1754         (WebInspector.CallStackSidebarPane):
1755         (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
1756         (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
1757         (WebInspector.CallStackSidebarPane.prototype.updateStatus):
1758         * inspector/front-end/ElementsPanel.js:
1759         (WebInspector.ElementsPanel.prototype.linkifyNodeById):
1760         * inspector/front-end/ScriptsPanel.js:
1761         (WebInspector.ScriptsPanel.prototype.debuggerPaused):
1762         * inspector/front-end/inspector.css:
1763         (.pane > .body .placard + .info):
1764         * inspector/front-end/inspector.js:
1765         (WebInspector.pausedScript):
1766         (WebInspector.formatLocalized):
1767
1768 2010-09-17  Johnny Ding  <jnd@chromium.org>
1769
1770         Reviewed by Adam Barth.
1771
1772         Stop history reload navigation to bypass WebKit's popup blocker.
1773         Now history reload can only navigate the page in self frame, no matter
1774         what target frame is defined in <base> and no new window can be created.
1775         https://bugs.webkit.org/show_bug.cgi?id=45369
1776
1777         Test: fast/events/popup-blocked-from-history-reload.html
1778
1779         * loader/RedirectScheduler.cpp:
1780         (WebCore::ScheduledNavigation::ScheduledNavigation):
1781         (WebCore::ScheduledNavigation::wasUserGesture):
1782         Move the m_wasUserGesture to base class ScheduledNavigation. Then all
1783         asynchronous navigation situations can restore the correct gesture state
1784         during the real navigation process.
1785         (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
1786         (WebCore::ScheduledURLNavigation::fire):
1787         (WebCore::ScheduledURLNavigation::referrer):
1788         (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
1789         (WebCore::ScheduledHistoryNavigation::fire):
1790         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
1791         (WebCore::ScheduledFormSubmission::fire):
1792         (WebCore::RedirectScheduler::scheduleHistoryNavigation):
1793
1794 2010-09-16  Vangelis Kokkevis  <vangelis@chromium.org>
1795
1796         Reviewed by James Robinson.
1797
1798         [chromium] Clip the update region of an ImageLayerChromium to actual size
1799         of the image bitmap to prevent uninitialized memory access when uploading
1800         the dirty region to the texture.
1801         https://bugs.webkit.org/show_bug.cgi?id=45937
1802
1803
1804         * platform/graphics/chromium/ImageLayerChromium.cpp:
1805         (WebCore::ImageLayerChromium::updateContents):
1806
1807 2010-09-17  Dimitri Glazkov  <dglazkov@chromium.org>
1808
1809         Reviewed by David Hyatt.
1810
1811         Remove extraneous RenderObject traversal.
1812         https://bugs.webkit.org/show_bug.cgi?id=45821
1813
1814         This code always exits in the first iteration of the loop,
1815         because in the context of this call, node->renderer()->node() != 0
1816         is always true.
1817
1818         No behavior change, covered by existing tests.
1819
1820         * page/EventHandler.cpp:
1821         (WebCore::EventHandler::canMouseDownStartSelect): Removed the loop.
1822         (WebCore::EventHandler::canMouseDragExtendSelect): Ditto.
1823
1824 2010-09-17  Pavel Feldman  <pfeldman@chromium.org>
1825
1826         Reviewed by Yury Semikhatsky.
1827
1828         Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
1829         resource as not cached to InspectorController.
1830         https://bugs.webkit.org/show_bug.cgi?id=45961
1831
1832         Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
1833         resource as not cached to InspectorController.
1834         There is one path in control flow that leads to resources being
1835         reported as not cached. Patch to follow.
1836
1837         * inspector/InspectorController.cpp:
1838         (WebCore::InspectorController::markResourceAsCached):
1839         * inspector/InspectorController.h:
1840         * inspector/InspectorResource.cpp:
1841         (WebCore::InspectorResource::markAsCached):
1842         (WebCore::InspectorResource::updateResponse):
1843         * inspector/InspectorResource.h:
1844         * loader/FrameLoader.cpp:
1845         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
1846
1847 2010-09-17  Alexander Pavlov  <apavlov@chromium.org>
1848
1849         Unreviewed, build fix. Add files missed in the previous commit.
1850
1851         * GNUmakefile.am:
1852         * css/CSSPropertySourceData.cpp: Added.
1853         (WebCore::SourceRange::SourceRange):
1854         (WebCore::SourceRange::operator=):
1855         (WebCore::CSSPropertySourceData::CSSPropertySourceData):
1856         (WebCore::CSSPropertySourceData::operator=):
1857         (WebCore::CSSPropertySourceData::toString):
1858         (WebCore::CSSPropertySourceData::hash):
1859         (WebCore::CSSPropertySourceData::init):
1860         * css/CSSPropertySourceData.h: Added.
1861         (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
1862         (WebCore::CSSStyleSourceData::create):
1863
1864 2010-09-15  Alexander Pavlov  <apavlov@chromium.org>
1865
1866         Reviewed by Pavel Feldman.
1867
1868         Provide source-based properties for style declarations to CSSParser clients
1869
1870         This change:
1871         - Enables InspectorCSSStore to extract CSS stylesheet text for all source-based stylesheets,
1872           even with the resource tracking turned off.
1873         - Adds to CSSParser a capability of source-related style declaration data extraction:
1874           * Start/end source offsets for a declaration, relative to the parent stylesheet start or the "style" attribute value.
1875           * Start/end source offsets for CSS properties, relative to the declaration start.
1876           * CSS property data: name, value, priority, WebCore parsability (i.e. if the property is understood by WebCore).
1877         - Provides the extracted data to the WebInspector frontend via InspectorDOMAgent::getStyleSourceData().
1878         https://bugs.webkit.org/show_bug.cgi?id=44949
1879
1880         * WebCore.gypi:
1881         * WebCore.pro:
1882         * WebCore.vcproj/WebCore.vcproj:
1883         * WebCore.xcodeproj/project.pbxproj:
1884         * css/CSSGrammar.y:
1885         * css/CSSMutableStyleDeclaration.h:
1886         (WebCore::CSSMutableStyleDeclaration::node):
1887         * css/CSSParser.cpp:
1888         (WebCore::CSSParser::CSSParser):
1889         (WebCore::CSSParser::parseSheet):
1890         (WebCore::CSSParser::parseDeclaration):
1891         (WebCore::CSSParser::createStyleRule):
1892         (WebCore::CSSParser::markRuleBodyStart):
1893         (WebCore::CSSParser::markPropertyStart):
1894         (WebCore::CSSParser::markPropertyEnd):
1895         * css/CSSParser.h:
1896         (WebCore::CSSParser::resetPropertyMarks):
1897         * css/CSSPropertySourceData.cpp: Added.
1898         (WebCore::SourceRange::SourceRange):
1899         (WebCore::SourceRange::operator=):
1900         (WebCore::CSSPropertySourceData::CSSPropertySourceData):
1901         (WebCore::CSSPropertySourceData::operator=):
1902         (WebCore::CSSPropertySourceData::toString):
1903         (WebCore::CSSPropertySourceData::hash):
1904         (WebCore::CSSPropertySourceData::init):
1905         * css/CSSPropertySourceData.h: Added.
1906         (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
1907         (WebCore::CSSStyleSourceData::create):
1908         * inspector/Inspector.idl:
1909         * inspector/InspectorCSSStore.cpp:
1910         (WebCore::InspectorCSSStore::reset):
1911         (WebCore::InspectorCSSStore::styleSheetText):
1912         (WebCore::InspectorCSSStore::resourceStyleSheetText):
1913         (WebCore::InspectorCSSStore::inlineStyleSheetText):
1914         (WebCore::InspectorCSSStore::getStyleSourceData):
1915         (WebCore::InspectorCSSStore::extractRanges):
1916         (WebCore::InspectorCSSStore::getStyleAttributeRanges):
1917         (WebCore::InspectorCSSStore::getParentStyleSheet):
1918         (WebCore::InspectorCSSStore::inlineStyleElement):
1919         * inspector/InspectorCSSStore.h:
1920         * inspector/InspectorController.cpp:
1921         (WebCore::InspectorController::resourceContentForURL):
1922         * inspector/InspectorController.h:
1923         * inspector/InspectorDOMAgent.cpp:
1924         (WebCore::InspectorDOMAgent::getStyleSourceData):
1925         (WebCore::InspectorDOMAgent::buildObjectForStyle):
1926         * inspector/InspectorDOMAgent.h:
1927
1928 2010-09-17  Alexander Pavlov  <apavlov@chromium.org>
1929
1930         Reviewed by Pavel Feldman.
1931
1932         Web Inspector: Show node description in inspector highlight
1933         https://bugs.webkit.org/show_bug.cgi?id=20930
1934
1935         * inspector/InspectorController.cpp:
1936         (WebCore::InspectorController::drawNodeHighlight):
1937         (WebCore::InspectorController::drawElementTitle):
1938         * inspector/InspectorController.h:
1939
1940 2010-09-16  takano takumi  <takano1@asia.apple.com>
1941
1942         Reviewed by Kent Tamura.
1943
1944         https://bugs.webkit.org/show_bug.cgi?id=45020
1945         Support "block-flow" and "writing-mode": interpret properties into RenderStyle
1946
1947         Fixed a regression in SVG test introduced by my previous change.
1948
1949         * css/CSSPrimitiveValueMappings.h:
1950         (WebCore::CSSPrimitiveValue::operator EWritingMode):
1951         * css/SVGCSSParser.cpp:
1952         (WebCore::CSSParser::parseSVGValue):
1953
1954 2010-09-16  Kenneth Russell  <kbr@google.com>
1955
1956         Reviewed by James Robinson.
1957
1958         Add entry points to GraphicsContext3D needed for Chromium compositor port
1959         https://bugs.webkit.org/show_bug.cgi?id=45939
1960
1961         Added entry points for two Chromium-specific extensions, and added
1962         a flag to the GraphicsContext3D constructor, currently unsupported
1963         by all ports (including Chromium), indicating whether the context
1964         should render directly to the passed HostWindow or off-screen per
1965         the current semantics. The switch to use GraphicsContext3D in
1966         Chromium's compositor will follow in a subsequent patch.
1967
1968         No new tests; functionality is unchanged. Built and tested
1969         Chromium and WebKit on Mac OS X.
1970
1971         * platform/graphics/GraphicsContext3D.cpp:
1972         (WebCore::GraphicsContext3D::supportsMapSubCHROMIUM):
1973         (WebCore::GraphicsContext3D::mapBufferSubDataCHROMIUM):
1974         (WebCore::GraphicsContext3D::unmapBufferSubDataCHROMIUM):
1975         (WebCore::GraphicsContext3D::mapTexSubImage2DCHROMIUM):
1976         (WebCore::GraphicsContext3D::unmapTexSubImage2DCHROMIUM):
1977         (WebCore::GraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
1978         (WebCore::GraphicsContext3D::copyTextureToParentTextureCHROMIUM):
1979         * platform/graphics/GraphicsContext3D.h:
1980         * platform/graphics/mac/GraphicsContext3DMac.mm:
1981         (WebCore::GraphicsContext3D::create):
1982         (WebCore::GraphicsContext3D::GraphicsContext3D):
1983         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1984         (WebCore::GraphicsContext3D::create):
1985         (WebCore::GraphicsContext3D::GraphicsContext3D):
1986
1987 2010-09-16  Simon Fraser  <simon.fraser@apple.com>
1988
1989         Reviewed by James Robinson.
1990
1991         In layerTreeAsText output, avoid printing properties which have their default values
1992         https://bugs.webkit.org/show_bug.cgi?id=45931
1993
1994         Don't dump properties that have their default values to simplify output.
1995
1996         * platform/graphics/GraphicsLayer.cpp:
1997         (WebCore::GraphicsLayer::dumpProperties):
1998
1999 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
2000
2001         Reviewed by Ariya Hidayat.
2002
2003         [Qt] GraphicsContext: Remove unused variable
2004
2005         GraphicsContextPlatformPrivate::redirect wasn't used for anything.
2006
2007         * platform/graphics/qt/GraphicsContextQt.cpp:
2008         (WebCore::GraphicsContextPlatformPrivate::p):
2009         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2010
2011 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
2012
2013         Reviewed by Ariya Hidayat.
2014
2015         [Qt] Remove unnecessary QPainter::clipPath() call in TransparencyLayer()
2016         https://bugs.webkit.org/show_bug.cgi?id=45923
2017
2018         QPainter::clipPath() can be very expensive, so use QPainter::hasClipping()
2019         instead of QPainter::clipPath().isEmpty().
2020
2021         * platform/graphics/qt/TransparencyLayer.h:
2022         (WebCore::TransparencyLayer::TransparencyLayer):
2023
2024 2010-09-16  David Hyatt  <hyatt@apple.com>
2025
2026         Reviewed by Eric Seidel.
2027
2028         Fix for regression from my previous check-in.  Make sure not to move the LayoutRepainter line
2029         below the setHeight(0) call.  This meant it snagged the wrong rectangle and we ended up repainting
2030         the world.
2031
2032         * rendering/RenderBlock.cpp:
2033         (WebCore::RenderBlock::layoutBlock):
2034
2035 2010-09-16  takano takumi  <takano1@asia.apple.com>
2036
2037         Reviewed by Dave Hyatt.
2038
2039         https://bugs.webkit.org/show_bug.cgi?id=45020
2040         Support "block-flow" and "writing-mode": interpret properties into RenderStyle
2041  
2042         Added code that interprets "block-flow" property and "writing-mode" property settings
2043         into a RenderStyle object.
2044
2045         Test: fast/text/international/block-flow-parser-test.html
2046
2047         * css/CSSComputedStyleDeclaration.cpp:
2048         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2049         * css/CSSParser.cpp:
2050         (WebCore::CSSParser::parseValue):
2051         * css/CSSPrimitiveValueMappings.h:
2052         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2053         (WebCore::CSSPrimitiveValue::operator EBlockFlowDirection):
2054         * css/CSSPropertyNames.in:
2055         * css/CSSStyleSelector.cpp:
2056         (WebCore::CSSStyleSelector::applyProperty):
2057         * css/CSSValueKeywords.in:
2058         * css/SVGCSSValueKeywords.in:
2059         * rendering/style/RenderStyle.cpp:
2060         (WebCore::RenderStyle::diff):
2061         * rendering/style/RenderStyle.h:
2062         (WebCore::InheritedFlags::setBitDefaults):
2063         (WebCore::InheritedFlags::blockFlow):
2064         (WebCore::InheritedFlags::setBlockFlow):
2065         (WebCore::InheritedFlags::initialBlockFlow):
2066         * rendering/style/RenderStyleConstants.h:
2067
2068 2010-09-16  Martin Robinson  <mrobinson@igalia.com>
2069
2070         Reviewed by Xan Lopez.
2071
2072         [GTK] Implement dissolveDragImageToFraction
2073         https://bugs.webkit.org/show_bug.cgi?id=45826
2074
2075         Convert the drag image from a GdkPixbuf to a Cairo surface. Not only
2076         might this allow code to be shared between Cairo ports it prevents a
2077         full data copy when the image is not resized and makes the implementation
2078         of dissolveDragImageToFraction more straight-forward.
2079
2080         This feature is covered by manual-tests/drag-image.html.
2081
2082         * page/gtk/DragControllerGtk.cpp:
2083         (WebCore::DragController::maxDragImageSize): Make the maximum size of the drag
2084         image a little smaller.
2085         * platform/DragImage.h: Changed the drag image type to be a cairo_surface_t*.
2086         * platform/gtk/DragImageGtk.cpp:
2087         (WebCore::dragImageSize): Reimplemented to reflect new drag image type.
2088         (WebCore::deleteDragImage): Ditto.
2089         (WebCore::scaleDragImage): Ditto.
2090         (WebCore::dissolveDragImageToFraction): Filled the stub of this function.
2091         (WebCore::createDragImageFromImage): Reimplemented to reflect new drag image type.
2092         * platform/gtk/GtkVersioning.h: Added definition for gtk_widget_get_realized for older GTK+s.
2093
2094 2010-09-15  David Hyatt  <hyatt@apple.com>
2095
2096         Reviewed by Darin Adler.
2097
2098         https://bugs.webkit.org/show_bug.cgi?id=38402, paginate columns at layout time rather than at paint time.
2099
2100         This patch adds support for column breaking at layout time rather than at paint time.  New variables have been
2101         added to LayoutState and to ColumnInfo to track column information while laying out.
2102         
2103         The basic idea behind this patch is to retain the columns' paint-time hackery of transforming one long vertical strip
2104         into multiple columns.  Now, however, layout is aware of the columns and will move objects up and down vertically in order
2105         to ensure they don't intersect a break.
2106         
2107         Many new tests added in fast/multicol and new results added for existing fast/multicol tests.
2108
2109         * rendering/ColumnInfo.h:
2110         (WebCore::ColumnInfo::ColumnInfo):
2111         (WebCore::ColumnInfo::columnCount):
2112         (WebCore::ColumnInfo::columnHeight):
2113         (WebCore::ColumnInfo::setColumnCountAndHeight):
2114         (WebCore::ColumnInfo::setColumnHeight):
2115         (WebCore::ColumnInfo::updateMinimumColumnHeight):
2116         (WebCore::ColumnInfo::minimumColumnHeight):
2117         (WebCore::ColumnInfo::forcedBreaks):
2118         (WebCore::ColumnInfo::forcedBreakOffset):
2119         (WebCore::ColumnInfo::maximumDistanceBetweenForcedBreaks):
2120         (WebCore::ColumnInfo::clearForcedBreaks):
2121         (WebCore::ColumnInfo::addForcedBreak):
2122         * rendering/LayoutState.cpp:
2123         (WebCore::LayoutState::LayoutState):
2124         (WebCore::LayoutState::clearPaginationInformation):
2125         (WebCore::LayoutState::pageY):
2126         (WebCore::LayoutState::addForcedColumnBreak):
2127         * rendering/LayoutState.h:
2128         (WebCore::LayoutState::LayoutState):
2129         (WebCore::LayoutState::paginatingColumns):
2130         (WebCore::LayoutState::paginated):
2131         * rendering/RenderBlock.cpp:
2132         (WebCore::RenderBlock::RenderBlock):
2133         (WebCore::RenderBlock::~RenderBlock):
2134         (WebCore::RenderBlock::layoutBlock):
2135         (WebCore::RenderBlock::collapseMargins):
2136         (WebCore::RenderBlock::estimateVerticalPosition):
2137         (WebCore::RenderBlock::layoutBlockChild):
2138         (WebCore::RenderBlock::layoutPositionedObjects):
2139         (WebCore::RenderBlock::paintColumnRules):
2140         (WebCore::RenderBlock::paintColumnContents):
2141         (WebCore::RenderBlock::paintChildren):
2142         (WebCore::RenderBlock::insertFloatingObject):
2143         (WebCore::RenderBlock::removeFloatingObjects):
2144         (WebCore::RenderBlock::positionNewFloats):
2145         (WebCore::RenderBlock::positionNewFloatOnLine):
2146         (WebCore::RenderBlock::lowestPosition):
2147         (WebCore::RenderBlock::rightmostPosition):
2148         (WebCore::RenderBlock::leftmostPosition):
2149         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
2150         (WebCore::RenderBlock::markDescendantBlocksAndLinesForLayout):
2151         (WebCore::RenderBlock::hitTestColumns):
2152         (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
2153         (WebCore::RenderBlock::columnCount):
2154         (WebCore::RenderBlock::columnRectAt):
2155         (WebCore::RenderBlock::layoutColumns):
2156         (WebCore::RenderBlock::adjustPointToColumnContents):
2157         (WebCore::RenderBlock::adjustRectForColumns):
2158         (WebCore::RenderBlock::adjustForColumns):
2159         (WebCore::RenderBlock::setMaxTopMargins):
2160         (WebCore::RenderBlock::setMaxBottomMargins):
2161         (WebCore::RenderBlock::setPaginationStrut):
2162         (WebCore::RenderBlock::setPageY):
2163         (WebCore::RenderBlock::nextPageTop):
2164         (WebCore::inNormalFlow):
2165         (WebCore::RenderBlock::applyBeforeBreak):
2166         (WebCore::RenderBlock::applyAfterBreak):
2167         (WebCore::RenderBlock::adjustForUnsplittableChild):
2168         (WebCore::RenderBlock::adjustLinePositionForPagination):
2169         * rendering/RenderBlock.h:
2170         (WebCore::RenderBlock::paginationStrut):
2171         (WebCore::RenderBlock::pageY):
2172         (WebCore::RenderBlock::maxTopPosMargin):
2173         (WebCore::RenderBlock::maxTopNegMargin):
2174         (WebCore::RenderBlock::maxBottomPosMargin):
2175         (WebCore::RenderBlock::maxBottomNegMargin):
2176         (WebCore::RenderBlock::initMaxMarginValues):
2177         (WebCore::RenderBlock::FloatingObject::FloatingObject):
2178         (WebCore::RenderBlock::FloatingObject::type):
2179         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
2180         * rendering/RenderBlockLineLayout.cpp:
2181         (WebCore::RenderBlock::layoutInlineChildren):
2182         (WebCore::RenderBlock::determineStartPosition):
2183         (WebCore::RenderBlock::skipLeadingWhitespace):
2184         (WebCore::RenderBlock::findNextLineBreak):
2185         * rendering/RenderBox.cpp:
2186         (WebCore::RenderBox::mapLocalToContainer):
2187         (WebCore::RenderBox::computeRectForRepaint):
2188         (WebCore::RenderBox::markDescendantBlocksAndLinesForLayout):
2189         * rendering/RenderBox.h:
2190         * rendering/RenderFlexibleBox.cpp:
2191         (WebCore::RenderFlexibleBox::layoutBlock):
2192         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2193         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2194         * rendering/RenderFlexibleBox.h:
2195         * rendering/RenderInline.cpp:
2196         (WebCore::RenderInline::computeRectForRepaint):
2197         (WebCore::RenderInline::mapLocalToContainer):
2198         * rendering/RenderLayer.cpp:
2199         (WebCore::RenderLayer::updatePagination):
2200         (WebCore::RenderLayer::paintChildLayerIntoColumns):
2201         (WebCore::RenderLayer::hitTestChildLayerColumns):
2202         * rendering/RenderLineBoxList.cpp:
2203         (WebCore::RenderLineBoxList::paint):
2204         * rendering/RenderTable.cpp:
2205         (WebCore::RenderTable::RenderTable):
2206         (WebCore::RenderTable::layout):
2207         * rendering/RenderTable.h:
2208         * rendering/RenderTableRow.cpp:
2209         (WebCore::RenderTableRow::layout):
2210         * rendering/RenderTableSection.cpp:
2211         (WebCore::RenderTableSection::layoutRows):
2212         * rendering/RenderView.cpp:
2213         (WebCore::RenderView::RenderView):
2214         (WebCore::RenderView::pushLayoutState):
2215         * rendering/RenderView.h:
2216         (WebCore::RenderView::setTruncatedAt):
2217         (WebCore::RenderView::pushLayoutState):
2218         (WebCore::RenderView::popLayoutState):
2219         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
2220         (WebCore::LayoutStateMaintainer::push):
2221         * rendering/RootInlineBox.h:
2222         (WebCore::RootInlineBox::RootInlineBox):
2223         (WebCore::RootInlineBox::paginationStrut):
2224         (WebCore::RootInlineBox::setPaginationStrut):
2225
2226 2010-09-16  Pavel Podivilov  <podivilov@chromium.org>
2227
2228         Reviewed by Dimitri Glazkov.
2229
2230         Fix debug crash in HTMLFrameOwnerElement caused by content frame being used after destruction.
2231         https://bugs.webkit.org/show_bug.cgi?id=45737
2232
2233         Test: fast/frames/frame-limit.html
2234
2235         * html/HTMLFrameOwnerElement.cpp:
2236         (WebCore::HTMLFrameOwnerElement::willRemove):
2237
2238 2010-09-16  Thomas Zander <t.zander@nokia.com>
2239
2240         Reviewed by Andreas Kling.
2241
2242         https://bugs.webkit.org/show_bug.cgi?id=45878
2243
2244         [Qt] Fixed incorrect Symbian scoping.
2245
2246         The missing install functionality is only true for mmp based systems.
2247
2248         * WebCore.pro: limit functionality to mmp systems.
2249
2250 2010-09-16  Anders Carlsson  <andersca@apple.com>
2251
2252         Fix clang build.
2253
2254         * page/animation/AnimationBase.h:
2255         Fix struct/class mismatch.
2256
2257 2010-09-16  Darin Adler  <darin@apple.com>
2258
2259         Reviewed by Andreas Kling.
2260
2261         Reduce use of HTMLInputElement::inputType so we can remove it later
2262         https://bugs.webkit.org/show_bug.cgi?id=45903
2263
2264         * accessibility/AccessibilityRenderObject.cpp:
2265         (WebCore::AccessibilityRenderObject::isFileUploadButton): Use isFileUpload.
2266         (WebCore::AccessibilityRenderObject::isInputImage): Use isImageButton.
2267         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Use
2268         isCheckbox and isRadioButton.
2269
2270         * css/CSSStyleSelector.cpp:
2271         (WebCore::CSSStyleSelector::adjustRenderStyle): Use isImageButton.
2272
2273         * editing/Editor.cpp:
2274         (WebCore::Editor::setBaseWritingDirection): Use isTextField.
2275
2276         * editing/ReplaceSelectionCommand.cpp:
2277         (WebCore::ReplaceSelectionCommand::doApply): Use isPasswordField.
2278
2279         * editing/SelectionController.cpp:
2280         (WebCore::SelectionController::isInPasswordField): Use isPasswordField.
2281
2282         * html/HTMLInputElement.h: Added isFileUpload, isImageButton, and isSubmitButton.
2283
2284         * page/Chrome.cpp:
2285         (WebCore::Chrome::setToolTip): Use isSubmitButton and isFileUpload.
2286
2287         * page/DragController.cpp:
2288         (WebCore::asFileInput): Use isFileUpload.
2289
2290         * page/EventHandler.cpp:
2291         (WebCore::isSubmitImage): Use isImageButton.
2292
2293         * rendering/RenderFileUploadControl.cpp:
2294         (WebCore::RenderFileUploadControl::updateFromElement): Use isFileUpload.
2295
2296 2010-09-16  Pavel Podivilov  <podivilov@chromium.org>
2297
2298         Reviewed by Pavel Feldman.
2299
2300         Web Inspector: quick fix for crash in InspectorController::loadBreakpoints caused by empty main resource
2301         https://bugs.webkit.org/show_bug.cgi?id=45901
2302
2303         * inspector/InspectorController.cpp:
2304         (WebCore::InspectorController::breakpointsSettingKey):
2305
2306 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
2307
2308         Reviewed by Yury Semikhatsky.
2309
2310         Web Inspector: Prevent responseReceivedTime from being > endTime in case mixture of WebCore and Network stack info is used.
2311         https://bugs.webkit.org/show_bug.cgi?id=45892
2312
2313         * inspector/InspectorResource.cpp:
2314         (WebCore::InspectorResource::endTiming):
2315
2316 2010-09-16  Ilya Tikhonovsky  <loislo@chromium.org>
2317
2318         Reviewed by Yury Semikhatsky.
2319
2320         Web Inspector: move resourceTracking flag under control of BackendSettings.
2321
2322         Four Inspector API methods about resourceTracking flag were removed.
2323         Actual state of the flag is transfered as the response of setResourceTracking request.
2324         Initial state of the flag on the frontend side is obtained from settings.backend.
2325
2326         https://bugs.webkit.org/show_bug.cgi?id=45887
2327
2328         * inspector/Inspector.idl:
2329         * inspector/InspectorController.cpp:
2330         (WebCore::InspectorController::getBackendSettings):
2331         (WebCore::InspectorController::populateScriptObjects):
2332         (WebCore::InspectorController::setResourceTracking):
2333         * inspector/InspectorController.h:
2334         * inspector/front-end/ResourcesPanel.js:
2335         (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
2336         * inspector/front-end/Settings.js:
2337         (WebInspector.Settings.initialize.populateBackendSettings):
2338         (WebInspector.Settings.initialize):
2339         * inspector/front-end/inspector.js:
2340
2341 2010-09-16  Jian Li  <jianli@chromium.org>
2342
2343         Reviewed by David Levin.
2344
2345         BlobData should be copied for it to be used cross-thread in ThreadableBlobRegistry.
2346         https://bugs.webkit.org/show_bug.cgi?id=45909
2347
2348         * fileapi/ThreadableBlobRegistry.cpp:
2349         (WebCore::BlobRegistryContext::BlobRegistryContext):
2350
2351 2010-09-16  Daniel Cheng  <dcheng@chromium.org>
2352
2353         Reviewed by Simon Fraser.
2354
2355         [chromium] Fix incorrect drag node/selection painting.
2356         https://bugs.webkit.org/show_bug.cgi?id=45573
2357
2358         Drag selections were being incorrectly clipped when dragging a selection
2359         near the bottom of a page that was taller than the viewport. To fix
2360         this, we use paintContents() instead of paint().
2361
2362         * page/chromium/FrameChromium.cpp:
2363         (WebCore::Frame::nodeImage):
2364         (WebCore::Frame::dragImageForSelection):
2365
2366 2010-09-16  Daniel Cheng  <dcheng@chromium.org>
2367
2368         Reviewed by Tony Chang.
2369
2370         Fix incorrect usage of dissolveDragImageToFraction().
2371         https://bugs.webkit.org/show_bug.cgi?id=45835
2372
2373         createDragImageForSelection() was ignoring the return value of
2374         dissolveDragImageToFraction(). This didn't happen to crash on most
2375         platforms, since most implementations simply modified the image that was
2376         passed in. However, Chromium Mac's implementation actually creates a new
2377         image and returns that instead. This caused us to crash when copying the
2378         image from the renderer to the browser process, since the memory had
2379         already been freed.
2380
2381         * manual-tests/selection-drag-crash.html: Added.
2382         * platform/DragImage.cpp:
2383         (WebCore::createDragImageForSelection):
2384
2385 2010-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2386
2387         Unreviewed, rolling out r67628.
2388         http://trac.webkit.org/changeset/67628
2389         https://bugs.webkit.org/show_bug.cgi?id=45904
2390
2391         broke the build (Requested by eric_carlson on #webkit).
2392
2393         * page/ContextMenuController.cpp:
2394         (WebCore::ContextMenuController::contextMenuItemSelected):
2395         * platform/ContextMenu.cpp:
2396         (WebCore::ContextMenu::populate):
2397         (WebCore::ContextMenu::checkOrEnableIfNeeded):
2398         * platform/ContextMenuItem.h:
2399         * platform/LocalizationStrategy.h:
2400         * platform/LocalizedStrings.cpp:
2401         * platform/LocalizedStrings.h:
2402         * platform/android/LocalizedStringsAndroid.cpp:
2403         * platform/brew/LocalizedStringsBrew.cpp:
2404         * platform/efl/LocalizedStringsEfl.cpp:
2405         * platform/gtk/ContextMenuItemGtk.cpp:
2406         (WebCore::gtkStockIDFromContextMenuAction):
2407         * platform/gtk/LocalizedStringsGtk.cpp:
2408         * platform/haiku/LocalizedStringsHaiku.cpp:
2409         * platform/wx/LocalizedStringsWx.cpp:
2410         * rendering/HitTestResult.cpp:
2411         (WebCore::HitTestResult::absoluteMediaURL):
2412         * rendering/HitTestResult.h:
2413
2414 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
2415
2416         Reviewed by Simon Fraser.
2417
2418         CSS: Fix crash in getTimingFunctionValue()
2419         https://bugs.webkit.org/show_bug.cgi?id=45896
2420
2421         Use a RefPtr to avoid deleting the TimingFunction prematurely.
2422
2423         This is covered by existing tests, e.g transitions/inherit-other-props.html
2424         but will only actually crash on picky platforms (or in valgrind.)
2425
2426         * css/CSSComputedStyleDeclaration.cpp:
2427         (WebCore::getTimingFunctionValue):
2428
2429 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
2430
2431         Reviewed by Yury Semikhatsky.
2432
2433         Web Inspector: prevent resource timing popover from having scrollers.
2434         https://bugs.webkit.org/show_bug.cgi?id=45883
2435
2436         * inspector/front-end/ResourcesPanel.js:
2437         (WebInspector.ResourcesPanel.prototype._showPopover):
2438
2439 2010-09-15  Philippe Normand  <pnormand@igalia.com>
2440
2441         Reviewed by Eric Carlson.
2442
2443         [GTK] enhanced context menu for media elements
2444         https://bugs.webkit.org/show_bug.cgi?id=45021
2445
2446         New items in the media Element context menu:
2447         - play/pause
2448         - mute/unmute
2449         - controls display control
2450         - switch to fullscreen (for video only)
2451         - loop playback control
2452         - copy media url to clipboard
2453         - open in new window
2454
2455         Test: media/context-menu-actions.html
2456
2457         * page/ContextMenuController.cpp:
2458         (WebCore::ContextMenuController::contextMenuItemSelected):
2459         * platform/ContextMenu.cpp:
2460         (WebCore::ContextMenu::populate):
2461         (WebCore::ContextMenu::checkOrEnableIfNeeded):
2462         * platform/ContextMenuItem.h:
2463         * platform/LocalizationStrategy.h:
2464         * platform/LocalizedStrings.cpp:
2465         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2466         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2467         (WebCore::contextMenuItemTagToggleMediaControls):
2468         (WebCore::contextMenuItemTagToggleMediaLoop):
2469         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2470         (WebCore::contextMenuItemTagMediaPlay):
2471         (WebCore::contextMenuItemTagMediaPause):
2472         (WebCore::contextMenuItemTagMediaMute):
2473         (WebCore::contextMenuItemTagMediaUnMute):
2474         * platform/LocalizedStrings.h:
2475         * platform/android/LocalizedStringsAndroid.cpp:
2476         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2477         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2478         (WebCore::contextMenuItemTagToggleMediaControls):
2479         (WebCore::contextMenuItemTagToggleMediaLoop):
2480         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2481         (WebCore::contextMenuItemTagMediaPlay):
2482         (WebCore::contextMenuItemTagMediaPause):
2483         (WebCore::contextMenuItemTagMediaMute):
2484         (WebCore::contextMenuItemTagMediaUnMute):
2485         * platform/brew/LocalizedStringsBrew.cpp:
2486         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2487         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2488         (WebCore::contextMenuItemTagToggleMediaControls):
2489         (WebCore::contextMenuItemTagToggleMediaLoop):
2490         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2491         (WebCore::contextMenuItemTagMediaPlay):
2492         (WebCore::contextMenuItemTagMediaPause):
2493         (WebCore::contextMenuItemTagMediaMute):
2494         (WebCore::contextMenuItemTagMediaUnMute):
2495         * platform/efl/LocalizedStringsEfl.cpp:
2496         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2497         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2498         (WebCore::contextMenuItemTagToggleMediaControls):
2499         (WebCore::contextMenuItemTagToggleMediaLoop):
2500         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2501         (WebCore::contextMenuItemTagMediaPlay):
2502         (WebCore::contextMenuItemTagMediaPause):
2503         (WebCore::contextMenuItemTagMediaMute):
2504         (WebCore::contextMenuItemTagMediaUnMute):
2505         * platform/gtk/ContextMenuItemGtk.cpp:
2506         (WebCore::gtkStockIDFromContextMenuAction):
2507         * platform/gtk/LocalizedStringsGtk.cpp:
2508         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2509         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2510         (WebCore::contextMenuItemTagToggleMediaControls):
2511         (WebCore::contextMenuItemTagToggleMediaLoop):
2512         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2513         (WebCore::contextMenuItemTagMediaPlay):
2514         (WebCore::contextMenuItemTagMediaPause):
2515         (WebCore::contextMenuItemTagMediaMute):
2516         (WebCore::contextMenuItemTagMediaUnMute):
2517         * platform/haiku/LocalizedStringsHaiku.cpp:
2518         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2519         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2520         (WebCore::contextMenuItemTagToggleMediaControls):
2521         (WebCore::contextMenuItemTagToggleMediaLoop):
2522         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2523         (WebCore::contextMenuItemTagMediaPlay):
2524         (WebCore::contextMenuItemTagMediaPause):
2525         (WebCore::contextMenuItemTagMediaMute):
2526         (WebCore::contextMenuItemTagMediaUnMute):
2527         * platform/wx/LocalizedStringsWx.cpp:
2528         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
2529         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
2530         (WebCore::contextMenuItemTagToggleMediaControls):
2531         (WebCore::contextMenuItemTagToggleMediaLoop):
2532         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2533         (WebCore::contextMenuItemTagMediaPlay):
2534         (WebCore::contextMenuItemTagMediaPause):
2535         (WebCore::contextMenuItemTagMediaMute):
2536         (WebCore::contextMenuItemTagMediaUnMute):
2537         * rendering/HitTestResult.cpp:
2538         (WebCore::HitTestResult::absoluteMediaURL):
2539         (WebCore::HitTestResult::mediaSupportsFullscreen):
2540         (WebCore::HitTestResult::mediaElement):
2541         (WebCore::HitTestResult::toggleMediaControlsDisplay):
2542         (WebCore::HitTestResult::toggleMediaLoopPlayback):
2543         (WebCore::HitTestResult::enterFullscreenForVideo):
2544         (WebCore::HitTestResult::mediaControlsEnabled):
2545         (WebCore::HitTestResult::mediaLoopEnabled):
2546         (WebCore::HitTestResult::mediaPlaying):
2547         (WebCore::HitTestResult::toggleMediaPlayState):
2548         (WebCore::HitTestResult::mediaHasAudio):
2549         (WebCore::HitTestResult::mediaMuted):
2550         (WebCore::HitTestResult::toggleMediaMuteState):
2551         * rendering/HitTestResult.h:
2552
2553 2010-09-16  Tony Gentilcore  <tonyg@chromium.org>
2554
2555         Reviewed by Adam Barth.
2556
2557         Crash in WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions
2558         https://bugs.webkit.org/show_bug.cgi?id=45833
2559
2560         Test: fast/parser/x-frame-options-detached-document-crash.html
2561
2562         * dom/Document.cpp:
2563         (WebCore::Document::processHttpEquiv): Other branches in this method already test for a null frame. So it seems to make sense to test that here as well.
2564
2565 2010-09-16  Vangelis Kokkevis  <vangelis@chromium.org>
2566
2567         Reviewed by Darin Fisher.
2568
2569         [chromium] ImageLayerChromium needs to keep a ref to the Image it uses
2570         so that it never tries to access an already destroyed Image.
2571         https://bugs.webkit.org/show_bug.cgi?id=45869
2572
2573         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2574         (WebCore::GraphicsLayerChromium::setContentsToImage):
2575         * platform/graphics/chromium/ImageLayerChromium.cpp:
2576         (WebCore::ImageLayerChromium::setContents):
2577         (WebCore::ImageLayerChromium::updateContents):
2578         * platform/graphics/chromium/ImageLayerChromium.h:
2579
2580 2010-09-16  Patrick Gansterer  <paroga@paroga.com>
2581
2582         Reviewed by Adam Roben.
2583
2584         [WINCE] Add platform-specific Image methods
2585         https://bugs.webkit.org/show_bug.cgi?id=28272
2586
2587         * platform/graphics/wince/ImageWinCE.cpp: Added.
2588         (WebCore::RGBA32Buffer::asNewNativeImage):
2589         (WebCore::FrameData::clear):
2590         (WebCore::BitmapImage::getHBITMAPOfSize):
2591         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2592         (WebCore::BitmapImage::draw):
2593         (WebCore::Image::drawPattern):
2594         (WebCore::BitmapImage::drawPattern):
2595         (WebCore::BitmapImage::checkForSolidColor):
2596
2597 2010-09-16  Yury Semikhatsky  <yurys@chromium.org>
2598
2599         Reviewed by Pavel Feldman.
2600
2601         Web Inspector: [REGRESSION] Scripts disappear from scripts panel after navigation
2602         https://bugs.webkit.org/show_bug.cgi?id=45890
2603
2604         * inspector/InspectorController.cpp:
2605         (WebCore::InspectorController::populateScriptObjects):
2606         (WebCore::InspectorController::restoreDebugger):
2607         (WebCore::InspectorController::restoreProfiler):
2608         * inspector/InspectorController.h:
2609
2610 2010-09-16  Satish Sampath  <satish@chromium.org>
2611
2612         Unreviewed, fixing a build break with VS 2008.
2613
2614         Fix build break, add the namespace in a friend declaration to get MSVC recognize it properly.
2615         https://bugs.webkit.org/show_bug.cgi?id=45893
2616
2617         * fileapi/FileWriter.h:
2618
2619 2010-09-15  Philippe Normand  <pnormand@igalia.com>
2620
2621         Reviewed by Martin Robinson.
2622
2623         [GStreamer] XOverlay API changes break the build
2624         https://bugs.webkit.org/show_bug.cgi?id=45810
2625
2626         Cope with the GStreamer XOverlay API change for the upcoming
2627         0.10.31 version.
2628         No new tests, build fix only.
2629
2630         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
2631         (WebCore::GStreamerGWorld::setWindowOverlay):
2632
2633 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
2634
2635         Reviewed by Tor Arne Vestbø.
2636
2637         [Qt] V8 port: Fix debug build
2638
2639         Add missing inclusion of <wtf/text/CString.h> where necessary for debug builds.
2640
2641         * history/PageCache.cpp:
2642         * html/HTMLElement.cpp:
2643         * html/HTMLMediaElement.cpp:
2644         * loader/DocumentLoader.cpp:
2645         * loader/icon/IconDatabase.cpp:
2646         * loader/icon/IconLoader.cpp:
2647         * storage/AbstractDatabase.cpp:
2648         * storage/Database.cpp:
2649         * storage/DatabaseSync.cpp:
2650         * storage/DatabaseTracker.cpp:
2651
2652 2010-09-16  Alexey Proskuryakov  <ap@apple.com>
2653
2654         Reviewed by Adam Barth.
2655
2656         https://bugs.webkit.org/show_bug.cgi?id=45852
2657         Range::selectNode and selectNodeContents misbehave when argument is in another document
2658
2659         Test: fast/dom/Range/select-node-different-document.html
2660
2661         There is nothing in DOM Traversal spec that says this shouldn't work, and it does work in
2662         Firefox.
2663
2664         * dom/Range.cpp:
2665         (WebCore::Range::setDocument):
2666         (WebCore::Range::selectNode):
2667         (WebCore::Range::selectNodeContents):
2668         * dom/Range.h:
2669
2670 2010-09-16  Andrey Kosyakov  <caseq@chromium.org>
2671
2672         Reviewed by Pavel Feldman.
2673
2674         Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
2675         Added support to export HAR to file from Resources panel (conditional on Preferences)
2676         Added support for HARLog (a higher-level aggregate than HAREntry)
2677         https://bugs.webkit.org/show_bug.cgi?id=45663
2678
2679         * English.lproj/localizedStrings.js:
2680         * inspector/front-end/HAREntry.js:
2681         (WebInspector.HAREntry.prototype.build):
2682         (WebInspector.HAREntry.prototype._buildTimings):
2683         (WebInspector.HAREntry._toMilliseconds):
2684         (WebInspector.HARLog):
2685         (WebInspector.HARLog.prototype.build):
2686         (WebInspector.HARLog.prototype._buildPages):
2687         (WebInspector.HARLog.prototype._buildMainResourceTimings):
2688         (WebInspector.HARLog.prototype._convertResource):
2689         * inspector/front-end/ResourcesPanel.js:
2690         (WebInspector.ResourcesPanel):
2691         (WebInspector.ResourcesPanel.prototype.hide):
2692         (WebInspector.ResourcesPanel.prototype._contextMenu):
2693         (WebInspector.ResourcesPanel.prototype._exportAll):
2694         (WebInspector.ResourcesPanel.prototype._exportResource):
2695         * inspector/front-end/Settings.js:
2696         * inspector/front-end/utilities.js:
2697         ():
2698
2699 2010-09-16  Eric Uhrhane  <ericu@chromium.org>
2700
2701         Reviewed by Jian Li.
2702
2703         Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
2704         https://bugs.webkit.org/show_bug.cgi?id=45798
2705
2706         * CMakeLists.txt:
2707         * Configurations/FeatureDefines.xcconfig:
2708         * GNUmakefile.am:
2709         * WebCore.pro:
2710         * dom/EventTarget.cpp:
2711         * dom/EventTarget.h:
2712         * dom/ExceptionCode.h:
2713         * dom/ScriptExecutionContext.cpp:
2714         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
2715         * dom/ScriptExecutionContext.h:
2716         * fileapi/AsyncFileWriter.h:
2717         * fileapi/FileEntry.cpp:
2718         * fileapi/FileEntry.h:
2719         * fileapi/FileEntry.idl:
2720         * fileapi/FileError.h:
2721         * fileapi/FileError.idl:
2722         * fileapi/FileException.h:
2723         * fileapi/FileException.idl:
2724         * fileapi/FileStreamProxy.cpp:
2725         * fileapi/FileStreamProxy.h:
2726         * fileapi/FileThread.cpp:
2727         * fileapi/FileThread.h:
2728         * fileapi/FileWriter.cpp:
2729         * fileapi/FileWriter.h:
2730         * fileapi/FileWriter.idl:
2731         * fileapi/FileWriterCallback.h:
2732         * fileapi/FileWriterCallback.idl:
2733         * fileapi/FileWriterClient.h:
2734         * page/DOMWindow.idl:
2735         * platform/AsyncFileStream.h:
2736         * platform/FileStream.cpp:
2737         * platform/FileStream.h:
2738         * platform/FileStreamClient.h:
2739
2740 2010-09-16  Marc-Antoine Ruel  <maruel@chromium.org>
2741
2742         Reviewed by Dimitri Glazkov.
2743
2744         Convert WebCore.gyp to use regexp to excludes files instead of listing them in sources!.
2745
2746         This is necessary because sources! is processed before sources/. This makes
2747         applying broader pattern in sources/ more difficult since it overrides the files
2748         listed in sources!. Having all them in sources/ permits controlling the ordering
2749         of the regexp, thus the final list of included files.
2750
2751         Fix Harfbuzz and VDMX source files includes in WebCore.gypi and WebCore.gyp
2752
2753         https://bugs.webkit.org/show_bug.cgi?id=45823
2754
2755         * WebCore.gyp/WebCore.gyp:
2756         * WebCore.gypi:
2757
2758 2010-09-16  Nat Duca  <nduca@chromium.org>
2759
2760         Reviewed by Darin Fisher.
2761
2762         [chromium] Make compositor obey finish flag
2763         https://bugs.webkit.org/show_bug.cgi?id=45552
2764
2765         The compositor should obey the finish flag on doComposite. This
2766         flag causes the compositor to finish rendering before returning,
2767         which is needed when resizing the window to avoid flashes of green.
2768
2769         * platform/graphics/chromium/LayerRendererChromium.cpp:
2770         (WebCore::LayerRendererChromium::finish):
2771         * platform/graphics/chromium/LayerRendererChromium.h:
2772
2773 2010-09-16  Alejandro G. Castro  <alex@igalia.com>
2774
2775         Reviewed by Xan Lopez.
2776
2777         GTK+ 3.x. updates, gtk_widget_size_request is deprecated and
2778         "activate-slider" style property for scrollbars is gone.
2779
2780         * platform/gtk/PopupMenuGtk.cpp:
2781         (WebCore::PopupMenuGtk::show):
2782         * platform/gtk/gtk2drawing.c:
2783         (moz_gtk_scrollbar_thumb_paint):
2784         (moz_gtk_combo_box_paint):
2785
2786 2010-09-16  Diego Gonzalez  <diegohcg@webkit.org>
2787
2788         Reviewed by Kenneth Rohde Christiansen.
2789
2790         [Qt] Remove FrameLoaderClientQt::webFrame() to use NetworkingContext to get the WebFrame to avoid layering violations
2791         https://bugs.webkit.org/show_bug.cgi?id=42293
2792
2793         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2794         (WebCore::MediaPlayerPrivate::commitLoad):
2795
2796 2010-09-16  Ryuan Choi  <ryuan.choi@samsung.com>
2797
2798         Unreviewed build fix for EFL
2799
2800         [EFL] REGRESSION(67567) FontCacheCairo was removed
2801         https://bugs.webkit.org/show_bug.cgi?id=45858
2802
2803         * CMakeListsEfl.txt:
2804
2805 2010-09-16  Yong Li  <yoli@rim.com>
2806
2807         Reviewed by George Staikos.
2808
2809         https://bugs.webkit.org/show_bug.cgi?id=37117
2810
2811         Add platform-independent JPEG/PNG image encoders that
2812         work with big endian RGBA source data.
2813
2814         There's no layout test because this patch does't make
2815         any port start using the encoders.
2816
2817         * platform/image-encoders/JPEGImageEncoder.cpp: Added.
2818         * platform/image-encoders/JPEGImageEncoder.h: Added.
2819         * platform/image-encoders/PNGImageEncoder.cpp: Added.
2820         * platform/image-encoders/PNGImageEncoder.h: Added.
2821
2822 2010-09-15  Jeremy Orlow  <jorlow@chromium.org>
2823
2824         Reviewed by Steve Block.
2825
2826         Allow the embedder to specify the base path for IndexedDB.
2827         https://bugs.webkit.org/show_bug.cgi?id=45815
2828
2829         Existing tests provide coverage. Use the indexedDBPath parameter that's
2830         already on the group settings object. Pass this parameter into the backend
2831         which will use it rather than a hard coded tmp directory location. If
2832         nothing is specified, assume it should be an in-memory temporary database.
2833         (This is useful for bringup and Chromium's incognito mode.)
2834
2835         * storage/IDBFactory.cpp:
2836         (WebCore::IDBFactory::open):
2837         * storage/IDBFactoryBackendImpl.cpp:
2838         (WebCore::openSQLiteDatabase):
2839         (WebCore::createTables):
2840         (WebCore::IDBFactoryBackendImpl::open):
2841         * storage/IDBFactoryBackendImpl.h:
2842         * storage/IDBFactoryBackendInterface.h:
2843
2844 2010-09-16  Yong Li  <yoli@rim.com>
2845
2846         Reviewed by George Staikos.
2847
2848         Fix the bug that GIF image down sampling can miss some lines.
2849         https://bugs.webkit.org/show_bug.cgi?id=45322
2850
2851         Test: fast/images/gif-large-checkerboard.html
2852
2853         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2854         (WebCore::GIFImageDecoder::haveDecodedRow):
2855
2856 2010-09-16  Philippe Normand  <pnormand@igalia.com>
2857
2858         Reviewed by Andreas Kling.
2859
2860         [GStreamer] un-needed header includes in MediaPlayerPrivate
2861         https://bugs.webkit.org/show_bug.cgi?id=45877
2862
2863         Include only the headers we need.
2864         No new tests, #includes cleanup only.
2865
2866         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2867
2868 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
2869
2870         Reviewed by Yury Semikhatsky.
2871
2872         Web Inspector: console.group(object) does not allow object to be expanded.
2873         https://bugs.webkit.org/show_bug.cgi?id=45806
2874
2875         * inspector/front-end/ConsoleView.js:
2876         (WebInspector.ConsoleGroup.prototype.addMessage):
2877         * inspector/front-end/treeoutline.js:
2878         (TreeElement.treeElementToggled):
2879
2880 2010-09-08  Jeremy Orlow  <jorlow@chromium.org>
2881
2882         Reviewed by Steve Block.
2883
2884         Complete index support for IndexedDB
2885         https://bugs.webkit.org/show_bug.cgi?id=45386
2886
2887         Add the rest of the index related API for IndexedDB.  This
2888         includes cursor suport.  A bunch of code was also refactored
2889         since it is shared between indexes and objectStores.
2890
2891         Tests: storage/indexeddb/index-basics.html
2892                storage/indexeddb/index-cursor.html
2893                + additions to others.
2894
2895         * storage/IDBAny.cpp:
2896         (WebCore::IDBAny::set):
2897         * storage/IDBCursor.cpp:
2898         (WebCore::IDBCursor::value):
2899         * storage/IDBCursorBackendImpl.cpp:
2900         (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
2901         (WebCore::IDBCursorBackendImpl::value):
2902         (WebCore::IDBCursorBackendImpl::update):
2903         (WebCore::IDBCursorBackendImpl::continueFunction):
2904         (WebCore::IDBCursorBackendImpl::remove):
2905         (WebCore::IDBCursorBackendImpl::loadCurrentRow):
2906         (WebCore::IDBCursorBackendImpl::database):
2907         * storage/IDBCursorBackendImpl.h:
2908         (WebCore::IDBCursorBackendImpl::create):
2909         * storage/IDBCursorBackendInterface.h:
2910         * storage/IDBFactoryBackendImpl.cpp:
2911         (WebCore::createTables):
2912         * storage/IDBIndex.cpp:
2913         (WebCore::IDBIndex::openObjectCursor):
2914         (WebCore::IDBIndex::openCursor):
2915         (WebCore::IDBIndex::getObject):
2916         (WebCore::IDBIndex::get):
2917         * storage/IDBIndex.h:
2918         (WebCore::IDBIndex::storeName):
2919         * storage/IDBIndex.idl:
2920         * storage/IDBIndexBackendImpl.cpp:
2921         (WebCore::IDBIndexBackendImpl::storeName):
2922         (WebCore::openCursorInternal):
2923         (WebCore::IDBIndexBackendImpl::openObjectCursor):
2924         (WebCore::IDBIndexBackendImpl::openCursor):
2925         (WebCore::getInternal):
2926         (WebCore::IDBIndexBackendImpl::getObject):
2927         (WebCore::IDBIndexBackendImpl::get):
2928         * storage/IDBIndexBackendImpl.h:
2929         (WebCore::IDBIndexBackendImpl::objectStore):
2930         * storage/IDBIndexBackendInterface.h:
2931         * storage/IDBKey.cpp:
2932         (WebCore::IDBKey::fromQuery):
2933         (WebCore::IDBKey::whereSyntax):
2934         (WebCore::IDBKey::leftCursorWhereFragment):
2935         (WebCore::IDBKey::rightCursorWhereFragment):
2936         * storage/IDBKey.h:
2937         * storage/IDBKeyRange.cpp:
2938         (WebCore::IDBKeyRange::leftWhereClauseComparisonOperator):
2939         (WebCore::IDBKeyRange::rightWhereClauseComparisonOperator):
2940         * storage/IDBKeyRange.h:
2941         * storage/IDBObjectStoreBackendImpl.cpp:
2942         (WebCore::IDBObjectStoreBackendImpl::openCursor):
2943         * storage/IDBRequest.cpp:
2944         (WebCore::IDBRequest::timerFired):
2945
2946 2010-09-15  Simon Fraser  <simon.fraser@apple.com>
2947
2948         Fix chromium build.
2949         
2950         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2951
2952 2010-09-15  Simon Fraser  <simon.fraser@apple.com>
2953
2954         Reviewed by Adam Roben.
2955
2956         https://bugs.webkit.org/show_bug.cgi?id=44715
2957         maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
2958
2959         Remove the concept of geometry flipping from GraphicsLayer; geometry flipping will
2960         be taken care of in platform code without the need to complicate the GraphicsLayer API.
2961         
2962         RenderLayerCompositor no longer sets the geometry orientation for the root
2963         platform layer; platform-specific code does this instead.
2964         
2965         This fixes flipped layers in WebKit2, since WebKit2 was already flipping
2966         geometry, and then RenderLayerCompositor was doing an additional flip.
2967
2968         * platform/graphics/GraphicsLayer.cpp:
2969         (WebCore::GraphicsLayer::GraphicsLayer):
2970         * platform/graphics/GraphicsLayer.h:
2971         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2972         * platform/graphics/chromium/GraphicsLayerChromium.h:
2973         * platform/graphics/mac/GraphicsLayerCA.h:
2974         * platform/graphics/mac/GraphicsLayerCA.mm:
2975         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
2976         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
2977         (WebCore::GraphicsLayerCA::defaultContentsOrientation):
2978         * platform/graphics/qt/GraphicsLayerQt.cpp:
2979         (WebCore::GraphicsLayerQtImpl::flushChanges):
2980         * platform/graphics/qt/GraphicsLayerQt.h:
2981         * platform/graphics/win/GraphicsLayerCACF.cpp:
2982         (WebCore::GraphicsLayerCACF::swapFromOrToTiledLayer):
2983         * platform/graphics/win/GraphicsLayerCACF.h:
2984         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2985         (WebCore::WKCACFLayerRenderer::setRootChildLayer):
2986         * rendering/RenderLayerCompositor.cpp:
2987         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
2988
2989 2010-09-15  Julien Chaffraix  <jchaffraix@codeaurora.org>
2990
2991         Unreviewed.
2992
2993         Reverting my changes as it is breaking several tests on Gtk and Qt.
2994
2995         * css/CSSParser.cpp:
2996         (WebCore::CSSParser::parseColor):
2997         * css/CSSParser.h:
2998         * html/canvas/CanvasRenderingContext2D.cpp:
2999         (WebCore::CanvasRenderingContext2D::setStrokeColor):
3000         (WebCore::CanvasRenderingContext2D::setFillColor):
3001         * html/canvas/CanvasStyle.cpp:
3002         (WebCore::CanvasStyle::createFromString):
3003         * html/canvas/CanvasStyle.h:
3004
3005 2010-09-15  Julien Chaffraix  <jchaffraix@codeaurora.org>
3006
3007         Reviewed by Andreas Kling.
3008
3009         Parse system colors in the HTML5 canvas context.
3010         https://bugs.webkit.org/show_bug.cgi?id=39168
3011
3012         Test: fast/css/test-setting-canvas-color.html
3013
3014         Based on previous work by Jan Erik Hanssen  <jhanssen@codeaurora.org>
3015
3016         * css/CSSParser.cpp:
3017         (WebCore::CSSParser::parseColor): Changed the function to better match our
3018         early return policy. Also we now return false when we don't parse the color.
3019         This is needed for createFromString to fallback to using parseSystemColor.
3020
3021         (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get
3022         the system colors.
3023
3024         * css/CSSParser.h: Added the new parseSystemColor method.
3025
3026         * html/canvas/CanvasRenderingContext2D.cpp:
3027         (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString.
3028         (WebCore::CanvasRenderingContext2D::setFillColor): Ditto.
3029         * html/canvas/CanvasStyle.cpp:
3030         (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor
3031         and fall back to parseSystemColor if it did not work.
3032
3033         * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString.
3034
3035 2010-09-14  Erik Arvidsson  <arv@chromium.org>
3036
3037         Reviewed by Darin Adler.
3038
3039         getComputedStyle() returns different values for different zoom levels
3040         https://bugs.webkit.org/show_bug.cgi?id=32230
3041
3042         Test: fast/css/getComputedStyle/computed-style-with-zoom.html
3043
3044         * css/CSSComputedStyleDeclaration.cpp:
3045         (WebCore::zoomAdjustedPixelValue):
3046         (WebCore::zoomAdjustedNumberValue):
3047         (WebCore::valueForReflection):
3048         (WebCore::getPositionOffsetValue):
3049         (WebCore::getBorderRadiusCornerValue):
3050         (WebCore::computedTransform):
3051         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
3052         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
3053         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3054         * css/CSSComputedStyleDeclaration.h:
3055         * css/SVGCSSComputedStyleDeclaration.cpp:
3056         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
3057         * rendering/RenderObject.h:
3058         (WebCore::adjustForAbsoluteZoom):
3059         * rendering/style/RenderStyle.h:
3060         (WebCore::adjustForAbsoluteZoom):
3061
3062 2010-09-14  Martin Robinson  <mrobinson@igalia.com>
3063
3064         Reviewed by Xan Lopez.
3065
3066         [GTK] Fully separate Pango and FreeType font backends
3067         https://bugs.webkit.org/show_bug.cgi?id=27442
3068
3069         Split FontPlatformData.h into separate versions for Pango, FreeType and WinCairo.
3070         Include the correct file via #ifdef'd includes, like the Chromium port. Also split
3071         FontCacheCairo.cpp into Pango and FreeType versions, as they had almost no code in
3072         common. Finally, rename FontPlatformDataCairo to FontPlatformDataFreeType, as this
3073         compilation unit is used only by the FreeType backend. This change is important to
3074         prevent upcoming fixes to the FreeType backend from affecting other backends.
3075
3076         No new tests as functionality has not changed.
3077
3078         * CMakeListsEfl.txt: Update source lists.
3079         * GNUmakefile.am: Update source lists.
3080         * platform/graphics/cairo/FontCacheCairo.cpp: Removed.
3081         * platform/graphics/cairo/FontCacheFreeType.cpp: Added.
3082         (WebCore::FontCache::platformInit):
3083         (WebCore::FontCache::getFontDataForCharacters):
3084         (WebCore::FontCache::getSimilarFontPlatformData):
3085         (WebCore::FontCache::getLastResortFallbackFont):
3086         (WebCore::FontCache::getTraitsInFamily):
3087         (WebCore::isWellKnownFontName):
3088         (WebCore::FontCache::createFontPlatformData):
3089         * platform/graphics/cairo/FontPlatformData.h:
3090         * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Renamed from WebCore/platform/graphics/cairo/FontPlatformDataCairo.cpp.
3091         (WebCore::FontPlatformData::FontPlatformData):
3092         (WebCore::FontPlatformData::operator=):
3093         (WebCore::FontPlatformData::init):
3094         (WebCore::FontPlatformData::~FontPlatformData):
3095         (WebCore::FontPlatformData::isFixedPitch):
3096         (WebCore::FontPlatformData::operator==):
3097         (WebCore::FontPlatformData::description):
3098         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added.
3099         (WebCore::FontPlatformData::FontPlatformData):
3100         (WebCore::FontPlatformData::size):
3101         (WebCore::FontPlatformData::setSize):
3102         (WebCore::FontPlatformData::syntheticBold):
3103         (WebCore::FontPlatformData::syntheticOblique):
3104         (WebCore::FontPlatformData::scaledFont):
3105         (WebCore::FontPlatformData::hash):
3106         (WebCore::FontPlatformData::isHashTableDeletedValue):
3107         (WebCore::FontPlatformData::hashTableDeletedFontValue):
3108         * platform/graphics/gtk/FontCachePango.cpp: Added.
3109         (WebCore::FontCache::platformInit):
3110         (WebCore::FontCache::getFontDataForCharacters):
3111         (WebCore::FontCache::getSimilarFontPlatformData):
3112         (WebCore::FontCache::getLastResortFallbackFont):
3113         (WebCore::FontCache::getTraitsInFamily):
3114         (WebCore::FontCache::createFontPlatformData):
3115         * platform/graphics/gtk/FontPlatformDataPango.h: Added.
3116         (WebCore::FontPlatformData::FontPlatformData):
3117         (WebCore::FontPlatformData::size):
3118         (WebCore::FontPlatformData::setSize):
3119         (WebCore::FontPlatformData::syntheticBold):
3120         (WebCore::FontPlatformData::syntheticOblique):
3121         (WebCore::FontPlatformData::scaledFont):
3122         (WebCore::FontPlatformData::hash):
3123         (WebCore::FontPlatformData::isHashTableDeletedValue):
3124         (WebCore::FontPlatformData::hashTableDeletedFontValue):
3125         * platform/graphics/win/FontPlatformDataCairoWin.h: Added.
3126         (WebCore::FontPlatformData::FontPlatformData):
3127         (WebCore::FontPlatformData::hfont):
3128         (WebCore::FontPlatformData::useGDI):
3129         (WebCore::FontPlatformData::fontFace):
3130         (WebCore::FontPlatformData::size):
3131         (WebCore::FontPlatformData::setSize):
3132         (WebCore::FontPlatformData::syntheticBold):
3133         (WebCore::FontPlatformData::syntheticOblique):
3134         (WebCore::FontPlatformData::scaledFont):
3135         (WebCore::FontPlatformData::hash):
3136         (WebCore::FontPlatformData::isHashTableDeletedValue):
3137
3138 2010-09-15  Chris Fleizach  <cfleizach@apple.com>
3139
3140         Reviewed by Simon Fraser.
3141
3142         AX: when text is auto-truncated, accessibility bounds are wrong
3143         https://bugs.webkit.org/show_bug.cgi?id=45793
3144
3145         Allow accessibility to retrieve the absoluteQuads of a text node that
3146         clips to the ellipsis.
3147         
3148         Test: accessibility/ellipsis-text.html
3149
3150         * accessibility/AccessibilityRenderObject.cpp:
3151         (WebCore::AccessibilityRenderObject::boundingBoxRect):
3152         * rendering/RenderText.cpp:
3153         (WebCore::ellipsisRectForBox):
3154             Make a common method to retrieve the ellipsis rect.
3155         (WebCore::RenderText::absoluteQuads):
3156             Default into the absoluteQuads method that allows for ellipsis clipping.
3157         (WebCore::RenderText::selectionRectForRepaint):
3158             Use the common method for retrieving the ellipsis.
3159         * rendering/RenderText.h:
3160
3161 2010-09-15  Ariya Hidayat  <ariya@sencha.com>
3162
3163         [Qt] Improve the speed of blur shadow
3164         https://bugs.webkit.org/show_bug.cgi?id=44222
3165
3166         Rewrite the shadow blur function with loop unrolls and sliding step
3167         unification for both horizontal and vertical directions.
3168         This gives significant performance improvement on most cases.
3169
3170         * platform/graphics/qt/ContextShadow.cpp:
3171         (WebCore::shadowBlur):
3172
3173 2010-09-14  Pavel Feldman  <pfeldman@chromium.org>
3174
3175         Reviewed by Yury Semikhatsky.
3176
3177         (Take 2). Web Inspector: Provide network-based load timing.
3178         Before this change, inspector used timers taken from
3179         within WebCore notifications (that are by definition
3180         synchronous and serialized). As a result, timing was
3181         affected by the routines running on the main thread
3182         (JavaScript and such).
3183         https://bugs.webkit.org/show_bug.cgi?id=45664
3184
3185         * inspector/InspectorController.cpp:
3186         (WebCore::InspectorController::willSendRequest):
3187         (WebCore::InspectorController::didFinishLoading):
3188         (WebCore::InspectorController::didFailLoading):
3189         * inspector/InspectorController.h:
3190         * inspector/InspectorResource.cpp:
3191         (WebCore::InspectorResource::endTiming):
3192         * inspector/InspectorResource.h:
3193         * loader/PingLoader.h:
3194         (WebCore::PingLoader::didFinishLoading):
3195         * loader/ResourceLoadNotifier.cpp:
3196         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3197         * loader/ResourceLoader.cpp:
3198         (WebCore::ResourceLoader::didFinishLoading):
3199         * loader/ResourceLoader.h:
3200         * loader/appcache/ApplicationCacheGroup.cpp:
3201         (WebCore::ApplicationCacheGroup::didFinishLoading):
3202         * loader/appcache/ApplicationCacheGroup.h:
3203         * loader/icon/IconFetcher.cpp:
3204         (WebCore::IconFetcher::didFinishLoading):
3205         * loader/icon/IconFetcher.h:
3206         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3207         (StreamingClient::didFinishLoading):
3208         * platform/network/BlobResourceHandle.cpp:
3209         (WebCore::BlobResourceHandle::notifyFinish):
3210         * platform/network/ResourceHandleClient.h:
3211         (WebCore::ResourceHandleClient::didFinishLoading):
3212         * platform/network/ResourceLoadTiming.h:
3213         (WebCore::ResourceLoadTiming::deepCopy):
3214         (WebCore::ResourceLoadTiming::operator==):
3215         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
3216         * platform/network/cf/ResourceHandleCFNet.cpp:
3217         (WebCore::didFinishLoading):
3218         * platform/network/curl/ResourceHandleCurl.cpp:
3219         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3220         * platform/network/curl/ResourceHandleManager.cpp:
3221         (WebCore::ResourceHandleManager::downloadTimerCallback):
3222         (WebCore::parseDataUrl):
3223         * platform/network/mac/ResourceHandleMac.mm:
3224         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
3225         (WebCoreSynchronousLoaderClient::didFinishLoading):
3226         * platform/network/qt/QNetworkReplyHandler.cpp:
3227         (WebCore::QNetworkReplyHandler::finish):
3228         * platform/network/qt/ResourceHandleQt.cpp:
3229         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3230         * platform/network/soup/ResourceHandleSoup.cpp:
3231         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3232         (WebCore::WebCoreSynchronousLoader::didFail):
3233         * platform/network/win/ResourceHandleWin.cpp:
3234         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3235         (WebCore::ResourceHandle::onRequestComplete):
3236         (WebCore::ResourceHandle::fileLoadTimer):
3237         (WebCore::ResourceHandle::cancel):
3238
3239 2010-09-15  Sheriff Bot  <webkit.review.bot@gmail.com>
3240
3241         Unreviewed, rolling out r67551.
3242         http://trac.webkit.org/changeset/67551
3243         https://bugs.webkit.org/show_bug.cgi?id=45816
3244
3245         "Plugin tests fail" (Requested by yurys on #webkit).
3246
3247         * inspector/InspectorController.cpp:
3248         (WebCore::InspectorController::willSendRequest):
3249         (WebCore::InspectorController::didFinishLoading):
3250         (WebCore::InspectorController::didFailLoading):
3251         (WebCore::InspectorController::didCloseWebSocket):
3252         * inspector/InspectorController.h:
3253         * inspector/InspectorResource.cpp:
3254         (WebCore::InspectorResource::endTiming):
3255         * inspector/InspectorResource.h:
3256         * loader/DocumentLoader.cpp:
3257         (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
3258         * loader/MainResourceLoader.cpp:
3259         (WebCore::MainResourceLoader::continueAfterContentPolicy):
3260         (WebCore::MainResourceLoader::didFinishLoading):
3261         * loader/MainResourceLoader.h:
3262         * loader/NetscapePlugInStreamLoader.cpp:
3263         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
3264         * loader/PingLoader.h:
3265         (WebCore::PingLoader::didFinishLoading):
3266         * loader/ResourceLoadNotifier.cpp:
3267         (WebCore::ResourceLoadNotifier::didFinishLoad):
3268         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3269         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
3270         * loader/ResourceLoadNotifier.h:
3271         * loader/ResourceLoader.cpp:
3272         (WebCore::ResourceLoader::didFinishLoading):
3273         (WebCore::ResourceLoader::didFinishLoadingOnePart):
3274         * loader/ResourceLoader.h:
3275         * loader/SubresourceLoader.cpp:
3276         (WebCore::SubresourceLoader::didReceiveResponse):
3277         (WebCore::SubresourceLoader::didFinishLoading):
3278         * loader/SubresourceLoader.h:
3279         * loader/appcache/ApplicationCacheGroup.cpp:
3280         (WebCore::ApplicationCacheGroup::didFinishLoading):
3281         * loader/appcache/ApplicationCacheGroup.h:
3282         * loader/icon/IconFetcher.cpp:
3283         (WebCore::IconFetcher::didFinishLoading):
3284         * loader/icon/IconFetcher.h:
3285         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3286         (StreamingClient::didFinishLoading):
3287         * platform/network/BlobResourceHandle.cpp:
3288         (WebCore::BlobResourceHandle::notifyFinish):
3289         * platform/network/ResourceHandleClient.h:
3290         (WebCore::ResourceHandleClient::didFinishLoading):
3291         * platform/network/cf/ResourceHandleCFNet.cpp:
3292         (WebCore::didFinishLoading):
3293         (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading):
3294         * platform/network/curl/ResourceHandleCurl.cpp:
3295         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3296         * platform/network/curl/ResourceHandleManager.cpp:
3297         (WebCore::ResourceHandleManager::downloadTimerCallback):
3298         (WebCore::parseDataUrl):
3299         * platform/network/mac/ResourceHandleMac.mm:
3300         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
3301         (WebCoreSynchronousLoaderClient::didFinishLoading):
3302         * platform/network/qt/QNetworkReplyHandler.cpp:
3303         (WebCore::QNetworkReplyHandler::finish):
3304         * platform/network/qt/ResourceHandleQt.cpp:
3305         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3306         * platform/network/soup/ResourceHandleSoup.cpp:
3307         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3308         (WebCore::WebCoreSynchronousLoader::didFail):
3309         (WebCore::finishedCallback):
3310         (WebCore::parseDataUrl):
3311         * platform/network/win/ResourceHandleWin.cpp:
3312         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3313         (WebCore::ResourceHandle::onRequestComplete):
3314         (WebCore::ResourceHandle::fileLoadTimer):
3315         (WebCore::ResourceHandle::cancel):
3316
3317 2010-09-14  Pavel Feldman  <pfeldman@chromium.org>
3318
3319         Reviewed by Yury Semikhatsky.
3320
3321         Web Inspector: Provide network-based load timing.
3322         Before this change, inspector used timers taken from
3323         within WebCore notifications (that are by definition
3324         synchronous and serialized). As a result, timing was
3325         affected by the routines running on the main thread
3326         (JavaScript and such).
3327         https://bugs.webkit.org/show_bug.cgi?id=45664
3328
3329         * inspector/InspectorController.cpp:
3330         (WebCore::InspectorController::willSendRequest):
3331         (WebCore::InspectorController::didFinishLoading):
3332         (WebCore::InspectorController::didFailLoading):
3333         * inspector/InspectorController.h:
3334         * inspector/InspectorResource.cpp:
3335         (WebCore::InspectorResource::endTiming):
3336         * inspector/InspectorResource.h:
3337         * loader/PingLoader.h:
3338         (WebCore::PingLoader::didFinishLoading):
3339         * loader/ResourceLoadNotifier.cpp:
3340         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3341         * loader/ResourceLoader.cpp:
3342         (WebCore::ResourceLoader::didFinishLoading):
3343         * loader/ResourceLoader.h:
3344         * loader/appcache/ApplicationCacheGroup.cpp:
3345         (WebCore::ApplicationCacheGroup::didFinishLoading):
3346         * loader/appcache/ApplicationCacheGroup.h:
3347         * loader/icon/IconFetcher.cpp:
3348         (WebCore::IconFetcher::didFinishLoading):
3349         * loader/icon/IconFetcher.h:
3350         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3351         (StreamingClient::didFinishLoading):
3352         * platform/network/BlobResourceHandle.cpp:
3353         (WebCore::BlobResourceHandle::notifyFinish):
3354         * platform/network/ResourceHandleClient.h:
3355         (WebCore::ResourceHandleClient::didFinishLoading):
3356         * platform/network/ResourceLoadTiming.h:
3357         (WebCore::ResourceLoadTiming::deepCopy):
3358         (WebCore::ResourceLoadTiming::operator==):
3359         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
3360         * platform/network/cf/ResourceHandleCFNet.cpp:
3361         (WebCore::didFinishLoading):
3362         * platform/network/curl/ResourceHandleCurl.cpp:
3363         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3364         * platform/network/curl/ResourceHandleManager.cpp:
3365         (WebCore::ResourceHandleManager::downloadTimerCallback):
3366         (WebCore::parseDataUrl):
3367         * platform/network/mac/ResourceHandleMac.mm:
3368         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
3369         (WebCoreSynchronousLoaderClient::didFinishLoading):
3370         * platform/network/qt/QNetworkReplyHandler.cpp:
3371         (WebCore::QNetworkReplyHandler::finish):
3372         * platform/network/qt/ResourceHandleQt.cpp:
3373         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3374         * platform/network/soup/ResourceHandleSoup.cpp:
3375         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3376         (WebCore::WebCoreSynchronousLoader::didFail):
3377         * platform/network/win/ResourceHandleWin.cpp:
3378         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
3379         (WebCore::ResourceHandle::onRequestComplete):
3380         (WebCore::ResourceHandle::fileLoadTimer):
3381         (WebCore::ResourceHandle::cancel):
3382
3383 2010-09-14  Ilya Tikhonovsky  <loislo@chromium.org>
3384
3385         Reviewed by Yury Semikhatsky.
3386
3387         WebInspector: small refactoring for monitorXHR backend property.
3388
3389         Our Inspector API is quite big and can be simplified a bit.
3390         As example for single backend property like monitoringXHR we
3391         have 4 functions in the API. Two functions for frontend
3392         enableMonitoringXHR/disableMonitoringXHR and
3393         two functions for backend monitoringXHRWasEnabled and
3394         monitoringXHRWasDisabled. These functions can be replaced by
3395         one setMonitoringXHR with one 'in' and one 'out' argument.
3396         The initial state of the flag can be gathered from backend
3397         with help of getSettings call where additional section was
3398         added for backend state information.
3399
3400         https://bugs.webkit.org/show_bug.cgi?id=45759
3401
3402         * inspector/Inspector.idl:
3403         * inspector/InspectorController.cpp:
3404         * inspector/InspectorController.h:
3405         * inspector/front-end/ConsoleView.js:
3406         * inspector/front-end/Settings.js:
3407         * inspector/front-end/inspector.js:
3408
3409 2010-09-15  Pavel Feldman  <pfeldman@chromium.org>
3410
3411         Reviewed by Yury Semikhatsky.
3412
3413         Web Inspector: Multiline console does not work on Windows / Linux.
3414         https://bugs.webkit.org/show_bug.cgi?id=45807
3415
3416         * inspector/front-end/ConsoleView.js:
3417
3418 2010-09-15  Renata Hodovan  <reni@inf.u-szeged.hu>
3419
3420         Reviewed by Dirk Schulze.
3421
3422         SVGFETurbulenceElement doesn't support dynamic invalidation, when attributes change.
3423         A typo (noStich instead of nostitch) is also fixed in this patch.
3424         https://bugs.webkit.org/show_bug.cgi?id=45809
3425
3426         Tests: svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html
3427                svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html
3428                svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html
3429                svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html
3430                svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html
3431                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html
3432                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html
3433                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html
3434                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html
3435                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html
3436
3437         * svg/SVGFETurbulenceElement.cpp:
3438         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
3439         (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
3440         * svg/SVGFETurbulenceElement.h:
3441
3442 2010-09-15  Patrick Gansterer  <paroga@paroga.com>
3443
3444         Reviewed by Kenneth Rohde Christiansen.
3445
3446         [WINCE] Avoid memcpy in TextCodecWinCE::encode
3447         https://bugs.webkit.org/show_bug.cgi?id=45468
3448
3449         * platform/text/wince/TextCodecWinCE.cpp:
3450         (WebCore::TextCodecWinCE::encode):
3451
3452 2010-09-14  Kinuko Yasuda  <kinuko@chromium.org>
3453
3454         Reviewed by Dumitru Daniliuc.
3455
3456         Add custom binding code for DirectoryEntry to allow JSON parameters for Flags
3457         https://bugs.webkit.org/show_bug.cgi?id=45724
3458
3459         No new tests; tests will be added later.
3460
3461         * CMakeLists.txt:
3462         * GNUmakefile.am:
3463         * WebCore.gypi:
3464         * WebCore.pro:
3465         * WebCore.vcproj/WebCore.vcproj:
3466         * WebCore.xcodeproj/project.pbxproj:
3467         * bindings/js/JSDirectoryEntryCustom.cpp: Added.
3468         (WebCore::JSDirectoryEntry::getFile):
3469         (WebCore::JSDirectoryEntry::getDirectory):
3470         * bindings/v8/custom/V8DirectoryEntryCustom.cpp: Added.
3471         (WebCore::V8DirectoryEntry::getDirectoryCallback):
3472         (WebCore::V8DirectoryEntry::getFileCallback):
3473         * fileapi/DirectoryEntry.h:
3474         * fileapi/DirectoryEntry.idl:
3475
3476 2010-09-14  Jia Pu  <jpu@apple.com>
3477         
3478         Reviewed by Dan Bernstein.
3479
3480         Only intercept ESC key press when autocorrection UI is visible.
3481         https://bugs.webkit.org/show_bug.cgi?id=45071
3482
3483         Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
3484         ESC will cancel current loading like usual.
3485
3486         * editing/Editor.cpp:
3487         (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
3488           panel is shown.
3489
3490         * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
3491
3492         * editing/EditorCommand.cpp:
3493         (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
3494           when autocorrection panel is shown.
3495         (WebCore::createCommandMap): Replaced isSupported function pointer for
3496           executeCancelOperation() command with supportedDismissCorrectionPanel().
3497
3498         * loader/EmptyClients.h:
3499         (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
3500           new member method declared in base class.
3501
3502         * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
3503
3504 2010-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>
3505
3506         Unreviewed, rolling out r67503.
3507         http://trac.webkit.org/changeset/67503
3508         https://bugs.webkit.org/show_bug.cgi?id=45802
3509
3510         This patch broke GTK builds (Requested by jianli_ on #webkit).
3511
3512         * fileapi/ThreadableBlobRegistry.cpp:
3513         (WebCore::BlobRegistryContext::BlobRegistryContext):
3514         * loader/ResourceLoader.cpp:
3515         (WebCore::ResourceLoader::resourceData):
3516         (WebCore::ResourceLoader::addData):
3517         * platform/network/BlobResourceHandle.cpp:
3518         * platform/network/BlobResourceHandle.h:
3519         * platform/network/ResourceHandle.h:
3520         * platform/network/mac/ResourceHandleMac.mm:
3521         (WebCore::ResourceHandle::bufferedData):
3522
3523 2010-09-14  Luiz Agostini  <luiz.agostini@openbossa.org>
3524
3525         Reviewed by Kenneth Rohde Christiansen.
3526
3527         [Qt] Zoom factor for checkboxes and radios.
3528         https://bugs.webkit.org/show_bug.cgi?id=45776
3529
3530         RenderThemeQt does not consider RenderStyle::effectiveZoom when calculating sizes of
3531         checkboxes and radios.
3532
3533         Even with this change the used QStyle must support different sizes for radios and checkboxes.
3534         QWindowStyle and QMacStyle, for example, do not.
3535
3536         * platform/qt/RenderThemeQt.cpp:
3537         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
3538
3539 2010-09-14  Chris Rogers  <crogers@google.com>
3540
3541         Reviewed by Kenneth Russell.
3542
3543         audio engine: add AudioFileReader files (Mac implementation)
3544         https://bugs.webkit.org/show_bug.cgi?id=36475
3545
3546         No new tests since audio API is not yet implemented.
3547
3548         * platform/audio/AudioFileReader.h: Added.
3549         * platform/audio/mac/AudioFileReaderMac.cpp: Added.
3550         (WebCore::createAudioBufferList):
3551         (WebCore::destroyAudioBufferList):
3552         (WebCore::AudioFileReader::AudioFileReader):
3553         (WebCore::AudioFileReader::~AudioFileReader):
3554         (WebCore::AudioFileReader::readProc):
3555         (WebCore::AudioFileReader::getSizeProc):
3556         (WebCore::AudioFileReader::createBus):
3557         (WebCore::createBusFromAudioFile):
3558         (WebCore::createBusFromInMemoryAudioFile):
3559         * platform/audio/mac/AudioFileReaderMac.h: Added.
3560         (WebCore::AudioFileReader::data):
3561         (WebCore::AudioFileReader::dataSize):
3562
3563 2010-09-14  Simon Fraser  <simon.fraser@apple.com>
3564
3565         Reviewed by Oliver Hunt.
3566
3567         Drawing an image outside the bounds of a canvas still causes repaints