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