Unreviewed.
[WebKit.git] / WebCore / ChangeLog
1 2010-05-16  Chris Jerdonek  <cjerdonek@webkit.org>
2
3         Unreviewed.
4
5         Removed the stray equals sign from the reviewer's name in the
6         "Reviewed by" line of the ChangeLog entry for r59596:
7
8         http://trac.webkit.org/changeset/59596
9
10 2010-05-16  Chris Jerdonek  <cjerdonek@webkit.org>
11
12         Reviewed by Adam Barth.
13
14         Refactored FrameLoader::changeLocation() and urlSelected() to share more code.
15
16         https://bugs.webkit.org/show_bug.cgi?id=38827
17
18         No change in behavior, so no new tests.
19
20         * bindings/ScriptControllerBase.cpp:
21         (WebCore::ScriptController::executeIfJavaScriptURL):
22           - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
23         * bindings/js/ScriptController.h:
24           - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
25         * bindings/v8/ScriptController.h:
26           - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
27         * loader/FrameLoader.cpp:
28         (WebCore::FrameLoader::changeLocation):
29           - Changed to call the new private overload of urlSelected().
30         (WebCore::FrameLoader::urlSelected):
31           - Added a private overload of urlSelected().
32           - Changed the public urlSelected() to call the private overload.
33         (WebCore::FrameLoader::submitForm):
34         * loader/FrameLoader.h:
35           - Added a private overload of urlSelected().
36         * loader/FrameLoaderTypes.h:
37           - Added a ShouldReplaceDocumentIfJavaScriptURL enum.
38
39 2010-05-16  Daniel Bates  <dbates@rim.com>
40
41         Reviewed by David Hyatt.
42
43         https://bugs.webkit.org/show_bug.cgi?id=39196
44
45         Rollout changeset 59274 <http://trac.webkit.org/changeset/59274>.
46
47         Prepared on behalf of David Hyatt.
48
49         "Not worth the memory use." Just roll this out.
50
51         * WebCore.vcproj/WebCore.vcproj:
52         * WebCore.xcodeproj/project.pbxproj:
53         * editing/visible_units.cpp:
54         (WebCore::previousLinePosition):
55         (WebCore::nextLinePosition):
56         * rendering/EllipsisBox.cpp:
57         (WebCore::EllipsisBox::paint):
58         (WebCore::EllipsisBox::selectionRect):
59         (WebCore::EllipsisBox::paintSelection):
60         (WebCore::EllipsisBox::nodeAtPoint):
61         * rendering/EllipsisBox.h:
62         (WebCore::EllipsisBox::EllipsisBox):
63         (WebCore::EllipsisBox::height):
64         * rendering/InlineBox.cpp:
65         (WebCore::InlineBox::height):
66         (WebCore::InlineBox::adjustPosition):
67         (WebCore::InlineBox::canAccommodateEllipsis):
68         * rendering/InlineBox.h:
69         (WebCore::InlineBox::InlineBox):
70         (WebCore::InlineBox::isInlineBox):
71         (WebCore::InlineBox::hasVirtualHeight):
72         (WebCore::InlineBox::setHasVirtualHeight):
73         (WebCore::InlineBox::virtualHeight):
74         (WebCore::InlineBox::setWidth):
75         (WebCore::InlineBox::width):
76         (WebCore::InlineBox::setX):
77         (WebCore::InlineBox::x):
78         (WebCore::InlineBox::setY):
79         (WebCore::InlineBox::y):
80         (WebCore::InlineBox::baselinePosition):
81         (WebCore::InlineBox::lineHeight):
82         * rendering/InlineFlowBox.cpp:
83         (WebCore::InlineFlowBox::placeBoxesVertically):
84         (WebCore::InlineFlowBox::computeVerticalOverflow):
85         (WebCore::InlineFlowBox::nodeAtPoint):
86         (WebCore::InlineFlowBox::paintBoxDecorations):
87         (WebCore::InlineFlowBox::paintMask):
88         (WebCore::InlineFlowBox::paintTextDecorations):
89         * rendering/InlineFlowBox.h:
90         (WebCore::InlineFlowBox::visibleOverflowRect):
91         (WebCore::InlineFlowBox::topLayoutOverflow):
92         (WebCore::InlineFlowBox::bottomLayoutOverflow):
93         (WebCore::InlineFlowBox::leftLayoutOverflow):
94         (WebCore::InlineFlowBox::rightLayoutOverflow):
95         (WebCore::InlineFlowBox::layoutOverflowRect):
96         (WebCore::InlineFlowBox::topVisualOverflow):
97         (WebCore::InlineFlowBox::bottomVisualOverflow):
98         (WebCore::InlineFlowBox::leftVisualOverflow):
99         (WebCore::InlineFlowBox::rightVisualOverflow):
100         (WebCore::InlineFlowBox::visualOverflowRect):
101         (WebCore::InlineFlowBox::setHorizontalOverflowPositions):
102         (WebCore::InlineFlowBox::setVerticalOverflowPositions):
103         * rendering/InlineTextBox.cpp:
104         (WebCore::InlineTextBox::selectionRect):
105         (WebCore::InlineTextBox::placeEllipsisBox):
106         (WebCore::InlineTextBox::nodeAtPoint):
107         (WebCore::InlineTextBox::paint):
108         (WebCore::InlineTextBox::paintSelection):
109         (WebCore::InlineTextBox::paintCompositionBackground):
110         (WebCore::InlineTextBox::paintDecoration):
111         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
112         (WebCore::InlineTextBox::paintTextMatchMarker):
113         (WebCore::InlineTextBox::computeRectForReplacementMarker):
114         (WebCore::InlineTextBox::paintCompositionUnderline):
115         (WebCore::InlineTextBox::offsetForPosition):
116         (WebCore::InlineTextBox::positionForOffset):
117         * rendering/InlineTextBox.h:
118         (WebCore::InlineTextBox::setSpaceAdd):
119         * rendering/RenderBlock.cpp:
120         (WebCore::RenderBlock::positionForPointWithInlineChildren):
121         * rendering/RenderBlockLineLayout.cpp:
122         (WebCore::RenderBlock::computeVerticalPositionsForLine):
123         (WebCore::RenderBlock::layoutInlineChildren):
124         * rendering/RenderSVGInline.cpp:
125         (WebCore::RenderSVGInline::createInlineFlowBox):
126         * rendering/RenderSVGInlineText.cpp:
127         (WebCore::RenderSVGInlineText::createTextBox):
128         * rendering/RenderSVGText.cpp:
129         (WebCore::RenderSVGText::createRootInlineBox):
130         * rendering/RenderText.cpp:
131         (WebCore::RenderText::positionForPoint):
132         (WebCore::RenderText::firstRunX):
133         (WebCore::RenderText::firstRunY):
134         * rendering/RenderTreeAsText.cpp:
135         (WebCore::writeTextRun):
136         * rendering/RootInlineBox.cpp:
137         (WebCore::RootInlineBox::placeEllipsis):
138         (WebCore::RootInlineBox::addHighlightOverflow):
139         (WebCore::RootInlineBox::closestLeafChildForXPos):
140         * rendering/SVGInlineFlowBox.h:
141         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
142         (WebCore::SVGInlineFlowBox::virtualHeight):
143         (WebCore::SVGInlineFlowBox::setHeight):
144         * rendering/SVGInlineTextBox.h:
145         (WebCore::SVGInlineTextBox::virtualHeight):
146         (WebCore::SVGInlineTextBox::setHeight):
147         (WebCore::SVGInlineTextBox::selectionTop):
148         (WebCore::SVGInlineTextBox::selectionHeight):
149         * rendering/SVGRootInlineBox.h:
150         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
151         (WebCore::SVGRootInlineBox::virtualHeight):
152         (WebCore::SVGRootInlineBox::setHeight):
153         * rendering/TrailingFloatsRootInlineBox.h: Added.
154         (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):
155         (WebCore::TrailingFloatsRootInlineBox::virtualHeight):
156
157 2010-05-13  Tony Chang  <tony@chromium.org>
158
159         Reviewed by Darin Adler.
160
161         REGRESSION: Crash by pasting to a textarea with white-space:nowrap
162         https://bugs.webkit.org/show_bug.cgi?id=38992
163
164         Test: editing/pasteboard/paste-plaintext-nowrap.html
165
166         * editing/InsertParagraphSeparatorCommand.cpp:
167         (WebCore::highestVisuallyEquivalentDivBelowRoot):
168         (WebCore::InsertParagraphSeparatorCommand::doApply):
169
170 2010-05-16  David Hyatt  <hyatt@apple.com>
171
172         Reviewed by Dan Bernstein.
173
174         https://bugs.webkit.org/show_bug.cgi?id=39194
175
176         Fix all of the multi-column painting and hit testing functions to properly account for RTL directionality.
177
178         Added fast/multicol/column-count-with-rules.html
179
180         * rendering/RenderBlock.cpp:
181         (WebCore::RenderBlock::paintColumnRules):
182         (WebCore::RenderBlock::paintColumnContents):
183         (WebCore::RenderBlock::hitTestColumns):
184         (WebCore::RenderBlock::adjustRectForColumns):
185
186 2010-05-16  Dan Bernstein  <mitz@apple.com>
187
188         Reviewed by Dave Hyatt.
189
190         Fix SVG test failures after r59588.
191
192         Updated SVG InlineBox virtual method overrides to match HTML ones. Removed
193         SVGInlineFlowBox::verticallyAlignBoxes() since InlineFlowBox no longer declares
194         verticallyAlignBoxes().
195
196         * rendering/SVGInlineFlowBox.cpp:
197         (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
198         * rendering/SVGInlineFlowBox.h:
199         * rendering/SVGRootInlineBox.cpp:
200         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
201         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
202         * rendering/SVGRootInlineBox.h:
203
204 2010-05-16  Dan Bernstein  <mitz@apple.com>
205
206         Reviewed by Darin Adler.
207
208         Move transient glyph overflow and fallback font data from a global to the stack
209         https://bugs.webkit.org/show_bug.cgi?id=39050
210
211         * rendering/InlineFlowBox.cpp:
212         (WebCore::InlineFlowBox::placeBoxesHorizontally): Added a GlyphOverflowAndFallbackFontsMap
213         parameter. Read glyph overflow from the map.
214         (WebCore::InlineFlowBox::computeLogicalBoxHeights): Added a GlyphOverflowAndFallbackFontsMap
215         parameter. Read fallback fonts from the map.
216         (WebCore::InlineFlowBox::computeVerticalOverflow): Added a GlyphOverflowAndFallbackFontsMap
217         parameter. Read glyph overflow from the map.
218         * rendering/InlineFlowBox.h:
219         * rendering/InlineTextBox.cpp: Removed setFallbackFonts(), fallbackFonts(), setGlyphOverflow(),
220         and glyphOverflow(). Removed s_glyphOverflowAndFallbackFontsMap.
221         * rendering/InlineTextBox.h:
222         * rendering/RenderBlock.h:
223         * rendering/RenderBlockLineLayout.cpp:
224         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap
225         parameter. Write fallback fonts and glyph overflow into the map.
226         (WebCore::RenderBlock::computeVerticalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap
227         parameter. Pass it down to verticallyAlignBoxes().
228         (WebCore::RenderBlock::layoutInlineChildren): Create a GlyphOverflowAndFallbackFontsMap on the
229         stack and pass it down to computeHorizontalPositionsForLine(), computeVerticalPositionsForLine(),
230         and verticallyAlignBoxes().
231         * rendering/RootInlineBox.cpp:
232         (WebCore::RootInlineBox::verticallyAlignBoxes): Added a GlyphOverflowAndFallbackFontsMap parameter.
233         Pass it down to computeLogicalBoxHeights() and computeVerticalOverflow().
234         * rendering/RootInlineBox.h:
235         * rendering/SVGRootInlineBox.cpp:
236         (WebCore::SVGRootInlineBox::layoutInlineBoxes): Updated.
237
238 2010-05-12  Tony Chang  <tony@chromium.org>
239
240         Reviewed by Darin Adler.
241
242         Spellcheck disabling does not disable context menu
243         https://bugs.webkit.org/show_bug.cgi?id=25639
244
245         Test: editing/spelling/context-menu-suggestions.html
246
247         * platform/ContextMenu.cpp:
248         (WebCore::ContextMenu::populate):
249
250 2010-05-16  Sam Weinig  <sam@webkit.org>
251
252         Reviewed by Dan Bernstein.
253
254         https://bugs.webkit.org/show_bug.cgi?id=39190
255         Shave a word off of GlyphPageTreeNode
256         <rdar://problem/7990428>
257
258         * platform/graphics/GlyphPageTreeNode.h:
259         (WebCore::GlyphPageTreeNode::GlyphPageTreeNode):
260
261 2010-05-16  Andreas Kling  <andreas.kling@nokia.com>
262
263         Reviewed by Kenneth Rohde Christiansen.
264
265         Properly handle invalid arguments to CanvasRenderingContext2D's getImageData() and putImageData().
266         Both should throw NOT_SUPPORTED_ERR when called with nonfinite arguments.
267         getImageData() should throw INDEX_SIZE_ERR if either width or height is 0.
268
269         https://bugs.webkit.org/show_bug.cgi?id=39175
270
271         Spec link:
272         http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation
273
274         Test: fast/canvas/canvas-getImageData-invalid.html
275
276         * html/canvas/CanvasRenderingContext2D.cpp:
277         (WebCore::CanvasRenderingContext2D::createImageData):
278         (WebCore::CanvasRenderingContext2D::getImageData):
279         (WebCore::CanvasRenderingContext2D::putImageData):
280
281 2010-05-16  Andreas Kling  <andreas.kling@nokia.com>
282
283         Reviewed by Kenneth Rohde Christiansen.
284
285         Canvas's toDataURL() should be case insensitive wrt the mimeType argument.
286         https://bugs.webkit.org/show_bug.cgi?id=39153
287
288         Spec link:
289         http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl
290
291         Test: fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html
292
293         * dom/CanvasSurface.cpp:
294         (WebCore::CanvasSurface::toDataURL):
295
296 2010-05-16  Simon Fraser  <simon.fraser@apple.com>
297
298         Reviewed by Anders Carlsson.
299
300         Shrink SimpleFontData
301         https://bugs.webkit.org/show_bug.cgi?id=39179
302
303         Change SimpleFontData to have a pointer to the m_glyphToBoundsMap, 
304         and to allocate this lazily. This reduces the size of the class from
305         5632 to 1536 bytes.
306
307         * platform/graphics/SimpleFontData.h:
308         (WebCore::SimpleFontData::boundsForGlyph):
309
310 2010-05-15  Simon Fraser  <simon.fraser@apple.com>
311
312         Reviewed by Maciej Stachowiak.
313
314         Reduce the size of CachedResource
315         https://bugs.webkit.org/show_bug.cgi?id=39171
316
317         Make protected data members of CachedResource private, to allow for
318         easier rearrangement, and hide the fact that enums are in bitfields.
319         
320         Rearrange the data members of CachedResource to save 32 bytes per instance
321         in 64-bit. Also modernized the constructor code.
322
323         * loader/CachedCSSStyleSheet.cpp:
324         (WebCore::CachedCSSStyleSheet::didAddClient):
325         (WebCore::CachedCSSStyleSheet::data):
326         (WebCore::CachedCSSStyleSheet::checkNotify):
327         (WebCore::CachedCSSStyleSheet::error):
328         * loader/CachedFont.cpp:
329         (WebCore::CachedFont::load):
330         (WebCore::CachedFont::didAddClient):
331         (WebCore::CachedFont::data):
332         (WebCore::CachedFont::ensureCustomFontData):
333         (WebCore::CachedFont::ensureSVGFontData):
334         (WebCore::CachedFont::checkNotify):
335         (WebCore::CachedFont::error):
336         * loader/CachedImage.cpp:
337         (WebCore::CachedImage::CachedImage):
338         (WebCore::CachedImage::load):
339         (WebCore::CachedImage::didAddClient):
340         (WebCore::CachedImage::allClientsRemoved):
341         (WebCore::CachedImage::image):
342         (WebCore::CachedImage::data):
343         (WebCore::CachedImage::error):
344         (WebCore::CachedImage::checkNotify):
345         (WebCore::CachedImage::destroyDecodedData):
346         * loader/CachedImage.h:
347         (WebCore::CachedImage::stillNeedsLoad):
348         * loader/CachedResource.cpp:
349         (WebCore::CachedResource::CachedResource):
350         * loader/CachedResource.h:
351         (WebCore::CachedResource::type):
352         (WebCore::CachedResource::preloadResult):
353         (WebCore::CachedResource::status):
354         (WebCore::CachedResource::setStatus):
355         (WebCore::CachedResource::isLoaded):
356         (WebCore::CachedResource::isLoading):
357         (WebCore::CachedResource::setErrorOccurred):
358         * loader/CachedScript.cpp:
359         (WebCore::CachedScript::didAddClient):
360         (WebCore::CachedScript::data):
361         (WebCore::CachedScript::checkNotify):
362         (WebCore::CachedScript::error):
363         * loader/CachedXSLStyleSheet.cpp:
364         (WebCore::CachedXSLStyleSheet::didAddClient):
365         (WebCore::CachedXSLStyleSheet::data):
366         (WebCore::CachedXSLStyleSheet::checkNotify):
367         (WebCore::CachedXSLStyleSheet::error):
368
369 2010-05-16  Sheriff Bot  <webkit.review.bot@gmail.com>
370
371         Unreviewed, rolling out r59574.
372         http://trac.webkit.org/changeset/59574
373         https://bugs.webkit.org/show_bug.cgi?id=39176
374
375         Supposedly broke cr-win, but the errors seems somewhat
376         unrelated (Requested by abarth on #webkit).
377
378         * platform/network/chromium/ResourceResponse.h:
379         (WebCore::ResourceResponse::ResourceResponse):
380         (WebCore::ResourceResponse::setSecurityInfo):
381         (WebCore::ResourceResponse::isContentFiltered):
382         (WebCore::ResourceResponse::setIsContentFiltered):
383         (WebCore::ResourceResponse::setAppCacheID):
384         (WebCore::ResourceResponse::setAppCacheManifestURL):
385         (WebCore::ResourceResponse::setWasFetchedViaSPDY):
386         (WebCore::ResourceResponse::setIsMultipartPayload):
387         (WebCore::ResourceResponse::setResponseTime):
388
389 2010-05-16  Dan Bernstein  <mitz@apple.com>
390
391         Reviewed by Darin Adler.
392
393         Scalar types allocated on the heap due to misuse of DEFINE_STATIC_LOCAL
394         https://bugs.webkit.org/show_bug.cgi?id=39086
395
396         Use global variables directly.
397
398         * bindings/v8/ScriptCallStack.cpp:
399         (WebCore::ScriptCallStack::createUtilityContext):
400         * platform/ScrollView.cpp:
401         (WebCore::ScrollView::wheelEvent):
402         * platform/graphics/mac/ComplexTextController.cpp:
403         (WebCore::shouldUseATSUIAPI):
404
405 2010-05-16  Andreas Kling  <andreas.kling@nokia.com>
406
407         Reviewed by Kenneth Rohde Christiansen.
408
409         Canvas's getContext() must return null when called with an invalid/unsupported parameter.
410         (HTML5 spec 4.8.11): http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-canvas-getcontext
411
412         https://bugs.webkit.org/show_bug.cgi?id=39150
413
414         Test: fast/canvas/canvas-getContext-invalid.html
415
416         * bindings/js/JSHTMLCanvasElementCustom.cpp:
417         (WebCore::JSHTMLCanvasElement::getContext):
418         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
419         (WebCore::V8HTMLCanvasElement::getContextCallback):
420
421 2010-05-15  Sheriff Bot  <webkit.review.bot@gmail.com>
422
423         Unreviewed, rolling out r59565.
424         http://trac.webkit.org/changeset/59565
425         https://bugs.webkit.org/show_bug.cgi?id=39173
426
427         Broke GTK (Requested by abarth on #webkit).
428
429         * dom/CanvasSurface.cpp:
430         (WebCore::CanvasSurface::toDataURL):
431
432 2010-05-15  Andreas Kling  <andreas.kling@nokia.com>
433
434         Reviewed by Kenneth Rohde Christiansen.
435
436         Canvas's toDataURL() should be case insensitive wrt the mimeType argument.
437         https://bugs.webkit.org/show_bug.cgi?id=39153
438
439         Spec link:
440         http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl
441
442         Test: fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html
443
444         * dom/CanvasSurface.cpp:
445         (WebCore::CanvasSurface::toDataURL):
446
447 2010-05-15  Anders Bakken  <agbakken@gmail.com>
448
449         Reviewed by Kenneth Rohde Christiansen.
450
451         QObject::objectName() returns a QString and QtField::name()
452         creates a temporary QByteArray object and returns constData() from it.
453         This is not safe.
454
455         This patch changes the signature of the function to return a
456         QByteArray instead of const char *.
457
458         https://bugs.webkit.org/show_bug.cgi?id=39010
459
460         * bridge/qt/qt_instance.cpp:
461         (JSC::Bindings::QtInstance::getPropertyNames):
462         (JSC::Bindings::QtField::name):
463         * bridge/qt/qt_runtime.h:
464
465 2010-05-15  Anders Bakken  <agbakken@gmail.com>
466
467         Reviewed by Kenneth Rohde Christiansen.
468
469         Don't unnecessarily copy data when searching for methods in QtClass.
470
471         [Qt] JSValue QtClass::fallbackObject can be optimized
472         https://bugs.webkit.org/show_bug.cgi?id=37684
473
474         * bridge/qt/qt_class.cpp:
475         (JSC::Bindings::QtClass::fallbackObject):
476
477 2010-05-15  Anders Bakken  <agbakken@gmail.com>
478
479         Reviewed by Kenneth Rohde Christiansen.
480
481         Identifier::ascii() is not threadsafe and shouldn't be used for
482         converting to and from QString/QByteArray.
483
484         https://bugs.webkit.org/show_bug.cgi?id=39009
485
486         * bridge/qt/qt_class.cpp:
487         (JSC::Bindings::QtClass::fallbackObject):
488         (JSC::Bindings::QtClass::fieldNamed):
489
490 2010-05-15  Chang Shu  <chang.shu@nokia.com>
491
492         Reviewed by Kenneth Rohde Christiansen.
493
494         Based on the spec and Philip Taylor's test suite, createImageData() should throw
495         an INDEX_SIZE_ERR exception if either the sw or sh arguments are zero.
496         The link to the spec:
497         http://philip.html5.org/tests/canvas/suite/tests/spec.html#testrefs.2d.imageData.getcreate.zero
498
499         https://bugs.webkit.org/show_bug.cgi?id=39166
500
501         The complete test suite is in the process of checking in.
502         https://bugs.webkit.org/show_bug.cgi?id=20553
503
504         * html/canvas/CanvasRenderingContext2D.cpp:
505         (WebCore::CanvasRenderingContext2D::createImageData):
506
507 2010-05-15  Adam Barth  <abarth@webkit.org>
508
509         Reviewed by Darin Adler.
510
511         XMLHttpRequest.getResponseHeader doesn't need to be custom
512         https://bugs.webkit.org/show_bug.cgi?id=39125
513
514         I don't see any reason this method needs to be custom.  No new tests
515         because there's no behavior change.
516
517         * bindings/js/JSXMLHttpRequestCustom.cpp:
518         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
519         * xml/XMLHttpRequest.idl:
520
521 2010-05-15  Adam Barth  <abarth@webkit.org>
522
523         Reviewed by Darin Adler.
524
525         XMLHttpRequest.setRequestHeader shouldn't be custom
526         https://bugs.webkit.org/show_bug.cgi?id=39124
527
528         I don't see any reason why this method needs to be custom.  No tests
529         because no behavior change.
530
531         * bindings/js/JSXMLHttpRequestCustom.cpp:
532         * bindings/scripts/CodeGeneratorJS.pm:
533         * bindings/scripts/CodeGeneratorV8.pm:
534         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
535         (webkit_dom_test_obj_method_that_requires_all_args):
536         (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
537         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
538         * bindings/scripts/test/JS/JSTestObj.cpp:
539         (WebCore::):
540         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
541         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
542         * bindings/scripts/test/JS/JSTestObj.h:
543         * bindings/scripts/test/ObjC/DOMTestObj.h:
544         * bindings/scripts/test/ObjC/DOMTestObj.mm:
545         (-[DOMTestObj methodThatRequiresAllArgs:objArg:]):
546         (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]):
547         * bindings/scripts/test/TestObj.idl:
548         * bindings/scripts/test/V8/V8TestObj.cpp:
549         (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
550         (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
551         (WebCore::ConfigureV8TestObjTemplate):
552         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
553         * xml/XMLHttpRequest.idl:
554
555 2010-05-14  Alexey Proskuryakov  <ap@apple.com>
556
557         Reviewed by Darin Adler.
558
559         https://bugs.webkit.org/show_bug.cgi?id=39048
560         <rdar://problem/7978384> REGRESSION (r55802): XML errors on Google maps ("Entity 'nbsp' not
561         defined") with JavaScript disabled
562
563         Google Maps goes into mobile mode if JavaScript is disabled for some reason, and sends XHTML
564         content with XHTML Mobile DOCTYPE. We want to handle it whether XHTMLMP is enabled or not.
565
566         Test: fast/doctypes/xhtml-with-xhtmlmp-doctype.xhtml
567
568         * dom/XMLTokenizerLibxml2.cpp: (WebCore::externalSubsetHandler): Restore pre-55802 behavior
569         for builds that don't have XHTMLMP enabled. Given that r55802 negated the condition without
570         breaking XHTMLMP, this line is actually always needed.
571
572 2010-05-15  Vangelis Kokkevis  <vangelis@chromium.org>
573
574         Reviewed by Darin Fisher.
575
576         Fixing LayerChromium hierarchy updates where due to mixed ownership
577         handling, sublayer updates didn't always properly update parent-to-child
578         and child-to-parent pointers in sync.
579         https://bugs.webkit.org/show_bug.cgi?id=39138
580
581         * platform/graphics/chromium/LayerChromium.cpp:
582         (WebCore::LayerChromium::~LayerChromium):
583         (WebCore::LayerChromium::setNeedsCommit): Typo fix.
584         (WebCore::LayerChromium::insertSublayer):
585         (WebCore::LayerChromium::removeFromSuperlayer):
586         (WebCore::LayerChromium::removeSublayer):
587         (WebCore::LayerChromium::replaceSublayer):
588         (WebCore::LayerChromium::removeAllSublayers):
589         (WebCore::LayerChromium::setSublayers):
590         * platform/graphics/chromium/LayerChromium.h:
591         (WebCore::LayerChromium::setSuperlayer):
592
593 2010-05-15  Andrey Kosyakov  <caseq@chromium.org>
594
595         Reviewed by Timothy Hatcher.
596
597         Got rid of absolute positioning in favor of flex boxes where possible.
598         Added shadow for help window.
599         Changed window style names to more comprehensible.
600         https://bugs.webkit.org/show_bug.cgi?id=39120
601  
602         * inspector/front-end/HelpScreen.js:
603         (WebInspector.HelpScreen):
604         * inspector/front-end/helpScreen.css:
605         (.help-window-outer):
606         (body.attached .help-window-outer):
607         (.help-window-main):
608         (body.attached .help-window-main):
609         (.help-window-caption):
610         (body.attached .help-window-caption):
611         (.help-window-title):
612         (.help-scrollable):
613         (.help-close-button):
614         (body.platform-mac .help-close-button):
615         (body:not(.platform-mac) .help-close-button):
616
617 2010-05-15  Sheriff Bot  <webkit.review.bot@gmail.com>
618
619         Unreviewed, rolling out r59549.
620         http://trac.webkit.org/changeset/59549
621         https://bugs.webkit.org/show_bug.cgi?id=39167
622
623         Broke Chromium build (Requested by abarth on #webkit).
624
625         * bindings/scripts/CodeGeneratorV8.pm:
626         * storage/IDBRequest.cpp:
627         (WebCore::IDBRequest::suspend):
628         (WebCore::IDBRequest::resume):
629         (WebCore::IDBRequest::timerFired):
630         (WebCore::IDBRequest::onEventCommon):
631         * storage/IDBRequest.h:
632
633 2010-05-15  Vangelis Kokkevis  <vangelis@chromium.org>
634
635         Reviewed by Darin Fisher.
636
637         Adding code path for composited layers (LayerChromium) containing only
638         an Image element.
639         https://bugs.webkit.org/show_bug.cgi?id=39142
640
641         No new tests, covered under the existing tests for composited layers.
642
643         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
644         (WebCore::GraphicsLayerChromium::setContentsToImage):
645         (WebCore::GraphicsLayerChromium::updateContentsImage):
646         * platform/graphics/chromium/GraphicsLayerChromium.h:
647         * platform/graphics/chromium/LayerChromium.cpp:
648         (WebCore::LayerChromium::LayerChromium):
649         (WebCore::LayerChromium::setContents):
650         * platform/graphics/chromium/LayerChromium.h:
651         (WebCore::LayerChromium::contents):
652
653 2010-05-15  Andrei Popescu  <andreip@google.com>
654
655         Reviewed by Jeremy Orlow.
656
657         IDBRequest is not a proper ActiveDomObject
658         https://bugs.webkit.org/show_bug.cgi?id=39001
659
660         Add IDBRequest interface to the IsActiveDomType
661         routine of the CodeGeneratorV8.pm.
662
663         Rename IDBRequest::m_stopped to m_suspended and reset
664         the flag when resume() is called.
665
666         No new tests, Indexed Database isn't yet testable.
667
668         * bindings/scripts/CodeGeneratorV8.pm:
669         * storage/IDBRequest.cpp:
670         (WebCore::IDBRequest::suspend):
671         (WebCore::IDBRequest::resume):
672         (WebCore::IDBRequest::timerFired):
673         (WebCore::IDBRequest::onEventCommon):
674         * storage/IDBRequest.h:
675
676 2010-05-15  Andrei Bucur  <abucur@adobe.com>
677
678         Reviewed by Gustavo Noronha Silva.
679
680         Functions using the cairo_pattern_t object returned by
681         Pattern::createPlatformPattern sould destroy it after the painting
682         operation. Failing to do so causes memory leaks.
683
684         Test: No test was added because the patch adds no new functionality.
685         It just completes the normal life cycle of a cairo_pattern_t object.
686
687         * platform/graphics/cairo/FontCairo.cpp:
688         (WebCore::Font::drawGlyphs):
689         * platform/graphics/cairo/GraphicsContextCairo.cpp:
690         (WebCore::setPlatformFill):
691         (WebCore::setPlatformStroke):
692
693 2010-05-15  Yael Aharon  <yael.aharon@nokia.com>
694
695         Reviewed by Kent Tamura.
696
697         Initial support for HTMLMeterElement
698         https://bugs.webkit.org/show_bug.cgi?id=38140
699
700         This patch adds support for HTMLMeterElement, including default rendering
701         of the meter element. That is because some platforms do not have a native gauge.
702         The feature is turned on only for the Qt platform.
703
704         Tests: fast/dom/HTMLMeterElement/meter-element.html
705                fast/dom/HTMLMeterElement/set-meter-properties.html
706
707         * DerivedSources.cpp:
708         * DerivedSources.make:
709         * GNUmakefile.am:
710         * WebCore.gypi:
711         * WebCore.pri:
712         * WebCore.pro:
713         * WebCore.vcproj/WebCore.vcproj:
714         * css/CSSPrimitiveValueMappings.h:
715         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
716         * css/CSSValueKeywords.in:
717         * css/html.css:
718         (meter):
719         (meter::-webkit-meter):
720         * html/HTMLAttributeNames.in:
721         * html/HTMLElement.cpp:
722         (WebCore::inlineTagList):
723         * html/HTMLElementsAllInOne.cpp:
724         * html/HTMLMeterElement.cpp: Added.
725         (WebCore::HTMLMeterElement::HTMLMeterElement):
726         (WebCore::HTMLMeterElement::create):
727         (WebCore::HTMLMeterElement::createRenderer):
728         (WebCore::HTMLMeterElement::formControlType):
729         (WebCore::HTMLMeterElement::parseMappedAttribute):
730         (WebCore::HTMLMeterElement::min):
731         (WebCore::HTMLMeterElement::setMin):
732         (WebCore::HTMLMeterElement::max):
733         (WebCore::HTMLMeterElement::setMax):
734         (WebCore::HTMLMeterElement::value):
735         (WebCore::HTMLMeterElement::setValue):
736         (WebCore::HTMLMeterElement::low):
737         (WebCore::HTMLMeterElement::setLow):
738         (WebCore::HTMLMeterElement::high):
739         (WebCore::HTMLMeterElement::setHigh):
740         (WebCore::HTMLMeterElement::optimum):
741         (WebCore::HTMLMeterElement::setOptimum):
742         * html/HTMLMeterElement.h: Added.
743         (WebCore::HTMLMeterElement::recalcWillValidate):
744         * html/HTMLMeterElement.idl: Added.
745         * html/HTMLTagNames.in:
746         * page/DOMWindow.idl:
747         * platform/ThemeTypes.h:
748         * rendering/RenderMeter.cpp: Added.
749         (WebCore::RenderMeter::RenderMeter):
750         (WebCore::RenderMeter::layout):
751         (WebCore::RenderMeter::updateFromElement):
752         * rendering/RenderMeter.h: Added.
753         (WebCore::RenderMeter::renderName):
754         (WebCore::RenderMeter::isMeter):
755         (WebCore::toRenderMeter):
756         * rendering/RenderObject.h:
757         (WebCore::RenderObject::isMeter):
758         * rendering/RenderTheme.cpp:
759         (WebCore::RenderTheme::adjustStyle):
760         (WebCore::RenderTheme::paint):
761         (WebCore::RenderTheme::paintBorderOnly):
762         (WebCore::RenderTheme::paintDecorations):
763         (WebCore::RenderTheme::adjustMeterStyle):
764         (WebCore::RenderTheme::paintMeter):
765         * rendering/RenderTheme.h:
766
767 2010-05-15  Eric Uhrhane  <ericu@chromium.org>
768
769         Reviewed by Dmitry Titov.
770
771         Add bindings for async DB API in Workers.
772         https://bugs.webkit.org/show_bug.cgi?id=34992
773
774         Tests: storage/change-version-handle-reuse-worker.html
775                storage/execute-sql-args-worker.html
776
777         * bindings/js/JSWorkerContextCustom.cpp: Add openDatabase binding.
778         (WebCore::JSWorkerContext::openDatabase):
779
780         * bindings/v8/custom/V8WorkerContextCustom.cpp: Add openDatabase stub; Chromium will need work both in V8 and in the browser process before we can turn this on there.
781         (WebCore::V8WorkerContext::openDatabaseCallback):
782
783         Add NoStaticTables flags to all objects now shared with workers.
784         * storage/Database.idl:
785         * storage/SQLError.idl:
786         * storage/SQLResultSet.idl:
787         * storage/SQLResultSetRowList.idl:
788         * storage/SQLTransaction.idl:
789         
790         * workers/WorkerContext.h: Add databaseExceededQuota.
791         * workers/WorkerContext.cpp:
792         (WebCore::WorkerContext::databaseExceededQuota): Add stub implementation for testing; you just get 5MB for now.
793         (WebCore::WorkerContext::openDatabase): Remove invalid assertion.
794
795         Add the IDL for the call to openDatabase.
796         * workers/WorkerContext.idl:
797
798 2010-05-15  Leandro Pereira  <leandro@profusion.mobi>
799
800         Reviewed by Adam Treat.
801
802         [EFL] Add build system for the EFL port.
803         http://webkit.org/b/37945
804
805         * CMakeLists.txt: Added.
806         * CMakeListsEfl.txt: Added.
807         * config.h: Add conditional to look for cmakeconfig.h.
808
809 2010-05-15  Adam Barth  <abarth@webkit.org>
810
811         Reviewed by Darin Adler.
812
813         Clipboard.setData doesn't need to be custom
814         https://bugs.webkit.org/show_bug.cgi?id=39133
815
816         The implementation of the custom binding for this function was a bit
817         different than its declaration in the IDL file.  I've updated the IDL
818         to match the implementation, but we probably should check whether our
819         behavior is correct with respect to the specification.
820
821         No tests because I've maintained our current behavior.
822
823         * bindings/js/JSClipboardCustom.cpp:
824         * bindings/v8/custom/V8ClipboardCustom.cpp:
825         * dom/Clipboard.idl:
826
827 2010-05-15  Yaar Schnitman  <yaar@chromium.org>
828
829         Reviewed by Adam Barth.
830
831         V8 overload support ported to JSC. Unforking of overloaded declarations in WebGL & Canvas will be done in subsequent patches.
832         https://bugs.webkit.org/show_bug.cgi?id=38920
833
834         Note that JSTestCallback.cpp/h include minor irrelevant changes too since somebody forgot to update them after changing the JS generator.
835
836         * bindings/scripts/CodeGenerator.pm:
837         * bindings/scripts/CodeGeneratorJS.pm:
838         * bindings/scripts/CodeGeneratorV8.pm:
839         * bindings/scripts/test/JS/JSTestCallback.cpp:
840         (WebCore::JSTestCallback::JSTestCallback):
841         (WebCore::JSTestCallback::~JSTestCallback):
842         * bindings/scripts/test/JS/JSTestCallback.h: 
843         * bindings/scripts/test/JS/JSTestObj.cpp:
844         (WebCore::):
845         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
846         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
847         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
848         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
849         (WebCore::testObjPrototypeFunctionOverloadedMethod):
850         * bindings/scripts/test/JS/JSTestObj.h:
851         * bindings/scripts/test/TestObj.idl:
852
853 2010-05-15  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
854
855         Reviewed by Xan Lopez.
856
857         https://bugs.webkit.org/show_bug.cgi?id=30500
858         [Gtk] Find a way for WebKit to "announce" itself so that ATs can readily distinguish it from true Gtk/Gail
859
860         The "announcement" is now made in the form of an object attribute
861         associated with the AtkObject.
862
863         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
864         (webkit_accessible_get_attributes):
865
866 2010-05-15  Adam Barth  <abarth@webkit.org>
867
868         Reviewed by Darin Adler.
869
870         Show a console message when X-Frame-Options blocks a load
871         https://bugs.webkit.org/show_bug.cgi?id=39087
872
873         The blank page confuses people when X-Frame-Options blocks a load.  The
874         console message should at least give them a hint as to what's going on.
875
876         * dom/Document.cpp:
877         (WebCore::Document::processHttpEquiv):
878
879 2010-05-15  Ilya Tikhonovsky  <loislo@chromium.org>
880
881         Reviewed by Geoffrey Garen.
882
883         WebInspector: JSC Should provide heap size info for Timeline panel.
884         https://bugs.webkit.org/show_bug.cgi?id=38420
885
886         * GNUmakefile.am:
887         * WebCore.pro:
888         * WebCore.vcproj/WebCore.vcproj:
889         * WebCore.xcodeproj/project.pbxproj:
890         * bindings/js/ScriptGCEvent.cpp: Added.
891         (WebCore::ScriptGCEvent::getHeapSize):
892         * bindings/js/ScriptGCEvent.h:
893
894 2010-05-15  Dave Tapuska  <dtapuska@rim.com>
895
896         Reviewed by Darin Adler.
897
898         Fix alignment faults on ARMv5TE architectures.
899
900         In debug mode the RenderAreaDebugHeader was 12 bytes which
901         caused an alignment failure for RenderObjects because they
902         would start on a 4 byte boundary. Align the RenderArenaDebugHeader
903         using the ARENA_ALIGN macro.
904
905         In NDEBUG mode the RenderArena objects come from a pool which
906         has 4 byte alignment. Allow the alignment to be based on the
907         AllocAlignmentInteger. This define will be activated for ARMv5TE.
908
909         https://bugs.webkit.org/show_bug.cgi?id=19946
910
911 2010-05-14  Adam Barth  <abarth@webkit.org>
912
913         Reviewed by Darin Adler.
914
915         XMLHttpRequest.overrideMimeType doesn't need to be custom
916         https://bugs.webkit.org/show_bug.cgi?id=39127
917
918         I don't see any reason why this method should be custom.  No tests
919         because no behavior change.
920
921         * bindings/js/JSXMLHttpRequestCustom.cpp:
922         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
923         * xml/XMLHttpRequest.idl:
924
925 2010-05-14  Adele Peterson  <adele@apple.com>
926
927         Reviewed by Dave Hyatt.
928
929         Fix for https://bugs.webkit.org/show_bug.cgi?id=39095 
930         <rdar://problem/7984158> REGRESSION (r53085): Infinite recursion in Position::getInlineBoxAndOffset when changing writing direction to right-to-left
931
932         Test: editing/selection/applystyle-to-inline-inside-block.html
933
934         * dom/Position.cpp: (WebCore::Position::getInlineBoxAndOffset): Now that this function correctly goes in and out of editable areas by calling
935         downstreamIgnoringEditingBoundaries and upstreamIgnoringEditingBoundaries for blocks (added in r58665), we no longer need a special case to 
936         jump out to the parent when we hit an inline (which was added in r53085 when this issue was introduced).
937
938 2010-05-14  Brian Weinstein  <bweinstein@apple.com>
939
940         Reviewed by Mark Rowe.
941
942         Hopefully a last fix for the build. Call -mkdir instead of mkdir, so we don't bail if the mkdir call fails. Additionally,
943         use the %Env% syntax instead of $(Env), which is what we need if we are referring to Windows environment variables instead
944         of nmake variables.
945         
946         * WebCore.vcproj/WebCore.make:
947
948 2010-05-14  Stephanie Lewis  <slewis@apple.com>
949
950         Rubber-stamped by Mark Rowe.
951
952         Update order files.
953
954         * WebCore.order:
955
956 2010-05-14  David Hyatt  <hyatt@apple.com>
957
958         Reviewed by Simon Fraser.
959
960         https://bugs.webkit.org/show_bug.cgi?id=39137
961
962         Make RenderLayers position properly inside multicolumn layout.
963         
964         (1) Create RenderLayers when column properties are specified.  This allows descendant layers to easily
965         know they are inside a multicolumn layout when positioning.
966         
967         (2) Patch updateLayerPosition to offset the layer into the first column that contains the layer.  Splitting
968         of a layer across columns still does not work, but the layer will now at least appear in the first column in
969         which it occurs.
970         
971         (3) Fix pagination bugs caused by the fact that visual overflow doesn't propagate up the line box tree when layers
972         are involved.  Make sure to use lineTop and lineBottom in this case (it's not perfect, but it gets most cases
973         working properly).  With this change elements like <video> will paginate properly and not get split across pages.
974
975         (4) Make column repainting and layer positioning work with RTL columns by fixing adjustForColumns to
976         account for RTL.
977         
978         (5) Fix RTL pagination by making sure the column pagination rects are the content width of the whole block and not just
979         the width of one column.
980
981         Added fast/multicol/layers-in-multicol.html
982
983         * rendering/RenderBlock.cpp:
984         (WebCore::RenderBlock::layoutColumns):
985         (WebCore::RenderBlock::adjustForColumns):
986         * rendering/RenderBox.h:
987         (WebCore::RenderBox::locationOffset):
988         * rendering/RenderBoxModelObject.h:
989         (WebCore::RenderBoxModelObject::requiresLayer):
990         * rendering/RenderLayer.cpp:
991         (WebCore::RenderLayer::updateLayerPosition):
992         (WebCore::RenderLayer::convertToLayerCoords):
993         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
994         * rendering/RenderLineBoxList.cpp:
995         (WebCore::RenderLineBoxList::paint):
996         * rendering/RenderView.cpp:
997         (WebCore::RenderView::RenderView):
998         * rendering/RenderView.h:
999         (WebCore::RenderView::requiresLayer):
1000         * rendering/style/RenderStyle.h:
1001         (WebCore::InheritedFlags::specifiesColumns):
1002
1003 2010-05-14  Leon Clarke  <leonclarke@google.com>
1004
1005         Reviewed by Steve Block.
1006
1007         Refactor signature of tokenizeRelAttribute and the variables it refers to so that new features don't keep changing the signature, and make m_disabledState into an enum.
1008         https://bugs.webkit.org/show_bug.cgi?id=38900
1009
1010         No new tests. Refactoring only.
1011
1012         * html/HTMLLinkElement.cpp:
1013         (WebCore::HTMLLinkElement::HTMLLinkElement):
1014         (WebCore::HTMLLinkElement::setDisabledState):
1015         (WebCore::HTMLLinkElement::parseMappedAttribute):
1016         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
1017         (WebCore::HTMLLinkElement::process):
1018         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs):
1019         * html/HTMLLinkElement.h:
1020         (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
1021         (WebCore::HTMLLinkElement::isAlternate):
1022         (WebCore::HTMLLinkElement::isDisabled):
1023         (WebCore::HTMLLinkElement::isEnabledViaScript):
1024         (WebCore::HTMLLinkElement::isIcon):
1025         (WebCore::HTMLLinkElement::):
1026         * html/PreloadScanner.cpp:
1027         (WebCore::PreloadScanner::processAttribute):
1028
1029 2010-05-14  Noam Rosenthal  <noam.rosenthal@nokia.com>
1030
1031         Reviewed by Kenneth Rohde Christiansen.
1032
1033         [Qt] GraphicsLayer caches directly composited images
1034         https://bugs.webkit.org/show_bug.cgi?id=38444
1035
1036         Directly-composited images and solid fills shouldn't be cached, as that cache
1037         is never used (see GraphicsLayerQtImpl::paint). Cache is only relevant for HTML content,
1038         but we were missing that test.
1039         The fix makes sure we only cache HTML content.
1040
1041         No new tests: this is a minor optimization.
1042
1043         * platform/graphics/qt/GraphicsLayerQt.cpp:
1044         (WebCore::GraphicsLayerQtImpl::flushChanges):
1045
1046 2010-05-14  Brian Weinstein  <bweinstein@apple.com>
1047
1048         Reviewed by Mark Rowe.
1049
1050         Build fix. Had the environment variables wrong for source and destination of the copy operation
1051         that was added.
1052
1053         * WebCore.vcproj/WebCore.make:
1054
1055 2010-05-14  Adam Barth  <abarth@webkit.org>
1056
1057         Reviewed by Eric Seidel.
1058
1059         Remove custom bindings for HTMLInputElement
1060         https://bugs.webkit.org/show_bug.cgi?id=38344
1061
1062         Fix a bug in the TestObj.idl file and update expected results.  This
1063         was originally part of a larger change reviewed by Eric, but I'm
1064         landing it separately to help me understand the more interesting bits
1065         of the patch clearly.
1066
1067         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1068         (webkit_dom_test_obj_get_attr_with_setter_exception):
1069         (webkit_dom_test_obj_set_attr_with_setter_exception):
1070         (webkit_dom_test_obj_set_attr_with_getter_exception):
1071         (webkit_dom_test_obj_set_property):
1072         (webkit_dom_test_obj_get_property):
1073         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1074         * bindings/scripts/test/JS/JSTestObj.cpp:
1075         (WebCore::jsTestObjAttrWithSetterException):
1076         (WebCore::setJSTestObjAttrWithSetterException):
1077         (WebCore::setJSTestObjAttrWithGetterException):
1078         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1079         (-[DOMTestObj attrWithSetterException]):
1080         (-[DOMTestObj setAttrWithSetterException:]):
1081         (-[DOMTestObj setAttrWithGetterException:]):
1082         * bindings/scripts/test/TestObj.idl:
1083         * bindings/scripts/test/V8/V8TestObj.cpp:
1084         (WebCore::TestObjInternal::attrWithSetterExceptionAttrGetter):
1085         (WebCore::TestObjInternal::attrWithSetterExceptionAttrSetter):
1086         (WebCore::TestObjInternal::attrWithGetterExceptionAttrSetter):
1087
1088 2010-05-14  Kenneth Russell  <kbr@google.com>
1089
1090         Reviewed by Darin Adler.
1091
1092         Rename WebGLArray types to TypedArray types
1093         https://bugs.webkit.org/show_bug.cgi?id=39091
1094
1095         Extended functionality of do-webcore-rename script and used it to
1096         rename the WebGLArray types to the TypedArray naming convention.
1097         The only source files which were touched by hand, and which are
1098         being manually reviewed, are:
1099             WebCore/page/DOMWindow.idl
1100             WebCore/bindings/generic/RuntimeEnabledFeatures.h (script's changes undone)
1101             WebKit/WebCore/bindings/js/JSDOMWindowCustom.cpp
1102             WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp
1103         These only needed to be touched to update the aliases between the
1104         WebGLArray and TypedArray names introduced in bug 39036. (It was
1105         not feasible to have do-webcore-rename handle this as it would
1106         introduce circular renamings.) These aliases will be removed in
1107         roughly a month once existing WebGL content has been updated.
1108
1109         No new tests; covered under existing WebGL tests. Updated
1110         constructed-objects-prototypes and prototype-inheritance-2 tests.
1111         Ran all layout tests in Safari and all WebGL tests in Chromium.
1112
1113         * DerivedSources.make:
1114         * GNUmakefile.am:
1115         * WebCore.gypi:
1116         * WebCore.pri:
1117         * WebCore.pro:
1118         * WebCore.xcodeproj/project.pbxproj:
1119         * bindings/js/JSArrayBufferConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLArrayBufferConstructor.cpp.
1120         (WebCore::):
1121         (WebCore::JSArrayBufferConstructor::JSArrayBufferConstructor):
1122         (WebCore::constructCanvasArrayBuffer):
1123         (WebCore::JSArrayBufferConstructor::getConstructData):
1124         * bindings/js/JSArrayBufferConstructor.h: Copied from WebCore/bindings/js/JSWebGLArrayBufferConstructor.h.
1125         (WebCore::construct):
1126         * bindings/js/JSArrayBufferViewCustom.cpp: Copied from WebCore/bindings/js/JSWebGLArrayCustom.cpp.
1127         (WebCore::toJS):
1128         (WebCore::JSArrayBufferView::slice):
1129         * bindings/js/JSArrayBufferViewHelper.h: Copied from WebCore/bindings/js/JSWebGLArrayHelper.h.
1130         * bindings/js/JSDOMWindowCustom.cpp:
1131         (WebCore::JSDOMWindow::arrayBuffer):
1132         (WebCore::JSDOMWindow::int8Array):
1133         (WebCore::JSDOMWindow::uint8Array):
1134         (WebCore::JSDOMWindow::int32Array):
1135         (WebCore::JSDOMWindow::uint32Array):
1136         (WebCore::JSDOMWindow::int16Array):
1137         (WebCore::JSDOMWindow::uint16Array):
1138         (WebCore::JSDOMWindow::floatArray):
1139         (WebCore::JSDOMWindow::webGLArrayBuffer):
1140         (WebCore::JSDOMWindow::webGLByteArray):
1141         (WebCore::JSDOMWindow::webGLUnsignedByteArray):
1142         (WebCore::JSDOMWindow::webGLIntArray):
1143         (WebCore::JSDOMWindow::webGLUnsignedIntArray):
1144         (WebCore::JSDOMWindow::webGLShortArray):
1145         (WebCore::JSDOMWindow::webGLUnsignedShortArray):
1146         (WebCore::JSDOMWindow::webGLFloatArray):
1147         * bindings/js/JSFloatArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLFloatArrayConstructor.cpp.
1148         (WebCore::):
1149         (WebCore::JSFloatArrayConstructor::JSFloatArrayConstructor):
1150         (WebCore::constructCanvasFloatArray):
1151         (WebCore::JSFloatArrayConstructor::getConstructData):
1152         * bindings/js/JSFloatArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLFloatArrayConstructor.h.
1153         * bindings/js/JSFloatArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLFloatArrayCustom.cpp.
1154         (WebCore::JSFloatArray::indexSetter):
1155         (WebCore::toJS):
1156         (WebCore::JSFloatArray::set):
1157         * bindings/js/JSInt16ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLShortArrayConstructor.cpp.
1158         (WebCore::):
1159         (WebCore::JSInt16ArrayConstructor::JSInt16ArrayConstructor):
1160         (WebCore::constructCanvasShortArray):
1161         (WebCore::JSInt16ArrayConstructor::getConstructData):
1162         * bindings/js/JSInt16ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLShortArrayConstructor.h.
1163         * bindings/js/JSInt16ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLShortArrayCustom.cpp.
1164         (WebCore::JSInt16Array::indexSetter):
1165         (WebCore::toJS):
1166         (WebCore::JSInt16Array::set):
1167         * bindings/js/JSInt32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLIntArrayConstructor.cpp.
1168         (WebCore::):
1169         (WebCore::JSInt32ArrayConstructor::JSInt32ArrayConstructor):
1170         (WebCore::constructCanvasIntArray):
1171         (WebCore::JSInt32ArrayConstructor::getConstructData):
1172         * bindings/js/JSInt32ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLIntArrayConstructor.h.
1173         * bindings/js/JSInt32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLIntArrayCustom.cpp.
1174         (WebCore::JSInt32Array::indexSetter):
1175         (WebCore::toJS):
1176         (WebCore::JSInt32Array::set):
1177         * bindings/js/JSInt8ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLByteArrayConstructor.cpp.
1178         (WebCore::):
1179         (WebCore::JSInt8ArrayConstructor::JSInt8ArrayConstructor):
1180         (WebCore::constructCanvasByteArray):
1181         (WebCore::JSInt8ArrayConstructor::getConstructData):
1182         * bindings/js/JSInt8ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLByteArrayConstructor.h.
1183         * bindings/js/JSInt8ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLByteArrayCustom.cpp.
1184         (WebCore::JSInt8Array::indexSetter):
1185         (WebCore::toJS):
1186         (WebCore::JSInt8Array::set):
1187         * bindings/js/JSUint16ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayConstructor.cpp.
1188         (WebCore::):
1189         (WebCore::JSUint16ArrayConstructor::JSUint16ArrayConstructor):
1190         (WebCore::constructCanvasUnsignedShortArray):
1191         (WebCore::JSUint16ArrayConstructor::getConstructData):
1192         * bindings/js/JSUint16ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayConstructor.h.
1193         * bindings/js/JSUint16ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayCustom.cpp.
1194         (WebCore::JSUint16Array::indexSetter):
1195         (WebCore::toJS):
1196         (WebCore::JSUint16Array::set):
1197         * bindings/js/JSUint32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayConstructor.cpp.
1198         (WebCore::):
1199         (WebCore::JSUint32ArrayConstructor::JSUint32ArrayConstructor):
1200         (WebCore::constructCanvasUnsignedIntArray):
1201         (WebCore::JSUint32ArrayConstructor::getConstructData):
1202         * bindings/js/JSUint32ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayConstructor.h.
1203         * bindings/js/JSUint32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayCustom.cpp.
1204         (WebCore::JSUint32Array::indexSetter):
1205         (WebCore::toJS):
1206         (WebCore::JSUint32Array::set):
1207         * bindings/js/JSUint8ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayConstructor.cpp.
1208         (WebCore::):
1209         (WebCore::JSUint8ArrayConstructor::JSUint8ArrayConstructor):
1210         (WebCore::constructCanvasUnsignedByteArray):
1211         (WebCore::JSUint8ArrayConstructor::getConstructData):
1212         * bindings/js/JSUint8ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayConstructor.h.
1213         * bindings/js/JSUint8ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayCustom.cpp.
1214         (WebCore::JSUint8Array::indexSetter):
1215         (WebCore::toJS):
1216         (WebCore::JSUint8Array::set):
1217         * bindings/js/JSWebGLArrayBufferConstructor.cpp: Removed.
1218         * bindings/js/JSWebGLArrayBufferConstructor.h: Removed.
1219         * bindings/js/JSWebGLArrayCustom.cpp: Removed.
1220         * bindings/js/JSWebGLArrayHelper.h: Removed.
1221         * bindings/js/JSWebGLByteArrayConstructor.cpp: Removed.
1222         * bindings/js/JSWebGLByteArrayConstructor.h: Removed.
1223         * bindings/js/JSWebGLByteArrayCustom.cpp: Removed.
1224         * bindings/js/JSWebGLFloatArrayConstructor.cpp: Removed.
1225         * bindings/js/JSWebGLFloatArrayConstructor.h: Removed.
1226         * bindings/js/JSWebGLFloatArrayCustom.cpp: Removed.
1227         * bindings/js/JSWebGLIntArrayConstructor.cpp: Removed.
1228         * bindings/js/JSWebGLIntArrayConstructor.h: Removed.
1229         * bindings/js/JSWebGLIntArrayCustom.cpp: Removed.
1230         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1231         (WebCore::JSWebGLRenderingContext::bufferData):
1232         (WebCore::JSWebGLRenderingContext::bufferSubData):
1233         (WebCore::JSWebGLRenderingContext::texImage2D):
1234         (WebCore::JSWebGLRenderingContext::texSubImage2D):
1235         (WebCore::dataFunctionf):
1236         (WebCore::dataFunctioni):
1237         (WebCore::dataFunctionMatrix):
1238         * bindings/js/JSWebGLShortArrayConstructor.cpp: Removed.
1239         * bindings/js/JSWebGLShortArrayConstructor.h: Removed.
1240         * bindings/js/JSWebGLShortArrayCustom.cpp: Removed.
1241         * bindings/js/JSWebGLUnsignedByteArrayConstructor.cpp: Removed.
1242         * bindings/js/JSWebGLUnsignedByteArrayConstructor.h: Removed.
1243         * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp: Removed.
1244         * bindings/js/JSWebGLUnsignedIntArrayConstructor.cpp: Removed.
1245         * bindings/js/JSWebGLUnsignedIntArrayConstructor.h: Removed.
1246         * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp: Removed.
1247         * bindings/js/JSWebGLUnsignedShortArrayConstructor.cpp: Removed.
1248         * bindings/js/JSWebGLUnsignedShortArrayConstructor.h: Removed.
1249         * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp: Removed.
1250         * bindings/v8/V8DOMWrapper.cpp:
1251         * bindings/v8/custom/V8ArrayBufferCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp.
1252         (WebCore::V8ArrayBuffer::constructorCallback):
1253         * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLArrayCustom.cpp.
1254         (WebCore::toV8):
1255         (WebCore::V8ArrayBufferView::sliceCallback):
1256         * bindings/v8/custom/V8ArrayBufferViewCustom.h: Copied from WebCore/bindings/v8/custom/V8WebGLArrayCustom.h.
1257         (WebCore::constructWebGLArray):
1258         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1259         (WebCore::V8DOMWindow::WebGLArrayBufferAccessorGetter):
1260         (WebCore::V8DOMWindow::WebGLByteArrayAccessorGetter):
1261         (WebCore::V8DOMWindow::WebGLUnsignedByteArrayAccessorGetter):
1262         (WebCore::V8DOMWindow::WebGLShortArrayAccessorGetter):
1263         (WebCore::V8DOMWindow::WebGLUnsignedShortArrayAccessorGetter):
1264         (WebCore::V8DOMWindow::WebGLIntArrayAccessorGetter):
1265         (WebCore::V8DOMWindow::WebGLUnsignedIntArrayAccessorGetter):
1266         (WebCore::V8DOMWindow::WebGLFloatArrayAccessorGetter):
1267         * bindings/v8/custom/V8FloatArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp.
1268         (WebCore::V8FloatArray::constructorCallback):
1269         (WebCore::V8FloatArray::setCallback):
1270         (WebCore::toV8):
1271         * bindings/v8/custom/V8Int16ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp.
1272         (WebCore::V8Int16Array::constructorCallback):
1273         (WebCore::V8Int16Array::setCallback):
1274         (WebCore::toV8):
1275         * bindings/v8/custom/V8Int32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp.
1276         (WebCore::V8Int32Array::constructorCallback):
1277         (WebCore::V8Int32Array::setCallback):
1278         (WebCore::toV8):
1279         * bindings/v8/custom/V8Int8ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp.
1280         (WebCore::V8Int8Array::constructorCallback):
1281         (WebCore::V8Int8Array::setCallback):
1282         (WebCore::toV8):
1283         * bindings/v8/custom/V8Uint16ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp.
1284         (WebCore::V8Uint16Array::constructorCallback):
1285         (WebCore::V8Uint16Array::setCallback):
1286         (WebCore::toV8):
1287         * bindings/v8/custom/V8Uint32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp.
1288         (WebCore::V8Uint32Array::constructorCallback):
1289         (WebCore::V8Uint32Array::setCallback):
1290         (WebCore::toV8):
1291         * bindings/v8/custom/V8Uint8ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp.
1292         (WebCore::V8Uint8Array::constructorCallback):
1293         (WebCore::V8Uint8Array::setCallback):
1294         (WebCore::toV8):
1295         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: Removed.
1296         * bindings/v8/custom/V8WebGLArrayCustom.cpp: Removed.
1297         * bindings/v8/custom/V8WebGLArrayCustom.h: Removed.
1298         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: Removed.
1299         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: Removed.
1300         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: Removed.
1301         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1302         (WebCore::vertexAttribAndUniformHelperf):
1303         (WebCore::uniformHelperi):
1304         (WebCore::uniformMatrixHelper):
1305         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: Removed.
1306         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: Removed.
1307         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: Removed.
1308         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: Removed.
1309         * html/canvas/ArrayBuffer.cpp: Copied from WebCore/html/canvas/WebGLArrayBuffer.cpp.
1310         (WebCore::ArrayBuffer::create):
1311         (WebCore::ArrayBuffer::ArrayBuffer):
1312         (WebCore::ArrayBuffer::data):
1313         (WebCore::ArrayBuffer::byteLength):
1314         (WebCore::ArrayBuffer::~ArrayBuffer):
1315         (WebCore::ArrayBuffer::tryAllocate):
1316         * html/canvas/ArrayBuffer.h: Copied from WebCore/html/canvas/WebGLArrayBuffer.h.
1317         * html/canvas/ArrayBuffer.idl: Copied from WebCore/html/canvas/WebGLArrayBuffer.idl.
1318         * html/canvas/ArrayBufferView.cpp: Copied from WebCore/html/canvas/WebGLArray.cpp.
1319         (WebCore::ArrayBufferView::ArrayBufferView):
1320         (WebCore::ArrayBufferView::~ArrayBufferView):
1321         (WebCore::ArrayBufferView::setImpl):
1322         (WebCore::ArrayBufferView::calculateOffsetAndLength):
1323         * html/canvas/ArrayBufferView.h: Copied from WebCore/html/canvas/WebGLArray.h.
1324         (WebCore::ArrayBufferView::buffer):
1325         (WebCore::ArrayBufferView::verifySubRange):
1326         (WebCore::ArrayBufferView::clampOffsetAndNumElements):
1327         * html/canvas/ArrayBufferView.idl: Copied from WebCore/html/canvas/WebGLArray.idl.
1328         * html/canvas/FloatArray.cpp: Copied from WebCore/html/canvas/WebGLFloatArray.cpp.
1329         (WebCore::FloatArray::create):
1330         (WebCore::FloatArray::FloatArray):
1331         (WebCore::FloatArray::slice):
1332         * html/canvas/FloatArray.h: Copied from WebCore/html/canvas/WebGLFloatArray.h.
1333         (WebCore::FloatArray::set):
1334         (WebCore::FloatArray::item):
1335         * html/canvas/FloatArray.idl: Copied from WebCore/html/canvas/WebGLFloatArray.idl.
1336         * html/canvas/Int16Array.cpp: Copied from WebCore/html/canvas/WebGLShortArray.cpp.
1337         (WebCore::Int16Array::create):
1338         (WebCore::Int16Array::Int16Array):
1339         (WebCore::Int16Array::slice):
1340         * html/canvas/Int16Array.h: Copied from WebCore/html/canvas/WebGLShortArray.h.
1341         * html/canvas/Int16Array.idl: Copied from WebCore/html/canvas/WebGLShortArray.idl.
1342         * html/canvas/Int32Array.cpp: Copied from WebCore/html/canvas/WebGLIntArray.cpp.
1343         (WebCore::Int32Array::create):
1344         (WebCore::Int32Array::Int32Array):
1345         (WebCore::Int32Array::slice):
1346         * html/canvas/Int32Array.h: Copied from WebCore/html/canvas/WebGLIntArray.h.
1347         * html/canvas/Int32Array.idl: Copied from WebCore/html/canvas/WebGLIntArray.idl.
1348         * html/canvas/Int8Array.cpp: Copied from WebCore/html/canvas/WebGLByteArray.cpp.
1349         (WebCore::Int8Array::create):
1350         (WebCore::Int8Array::Int8Array):
1351         (WebCore::Int8Array::slice):
1352         * html/canvas/Int8Array.h: Copied from WebCore/html/canvas/WebGLByteArray.h.
1353         * html/canvas/Int8Array.idl: Copied from WebCore/html/canvas/WebGLByteArray.idl.
1354         * html/canvas/IntegralTypedArrayBase.h: Copied from WebCore/html/canvas/WebGLIntegralTypedArrayBase.h.
1355         (WebCore::IntegralTypedArrayBase::set):
1356         (WebCore::IntegralTypedArrayBase::item):
1357         (WebCore::IntegralTypedArrayBase::IntegralTypedArrayBase):
1358         * html/canvas/TypedArrayBase.h: Copied from WebCore/html/canvas/WebGLTypedArrayBase.h.
1359         (WebCore::TypedArrayBase::set):
1360         (WebCore::TypedArrayBase::TypedArrayBase):
1361         (WebCore::TypedArrayBase::create):
1362         * html/canvas/Uint16Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.cpp.
1363         (WebCore::Uint16Array::create):
1364         (WebCore::Uint16Array::Uint16Array):
1365         (WebCore::Uint16Array::slice):
1366         * html/canvas/Uint16Array.h: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.h.
1367         * html/canvas/Uint16Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.idl.
1368         * html/canvas/Uint32Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.cpp.
1369         (WebCore::Uint32Array::create):
1370         (WebCore::Uint32Array::Uint32Array):
1371         (WebCore::Uint32Array::slice):
1372         * html/canvas/Uint32Array.h: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.h.
1373         * html/canvas/Uint32Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.idl.
1374         * html/canvas/Uint8Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.cpp.
1375         (WebCore::Uint8Array::create):
1376         (WebCore::Uint8Array::Uint8Array):
1377         (WebCore::Uint8Array::slice):
1378         * html/canvas/Uint8Array.h: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.h.
1379         * html/canvas/Uint8Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.idl.
1380         * html/canvas/WebGLArray.cpp: Removed.
1381         * html/canvas/WebGLArray.h: Removed.
1382         * html/canvas/WebGLArray.idl: Removed.
1383         * html/canvas/WebGLArrayBuffer.cpp: Removed.
1384         * html/canvas/WebGLArrayBuffer.h: Removed.
1385         * html/canvas/WebGLArrayBuffer.idl: Removed.
1386         * html/canvas/WebGLBuffer.cpp:
1387         (WebCore::WebGLBuffer::associateBufferData):
1388         (WebCore::WebGLBuffer::associateBufferSubData):
1389         * html/canvas/WebGLBuffer.h:
1390         (WebCore::WebGLBuffer::elementArrayBuffer):
1391         * html/canvas/WebGLByteArray.cpp: Removed.
1392         * html/canvas/WebGLByteArray.h: Removed.
1393         * html/canvas/WebGLByteArray.idl: Removed.
1394         * html/canvas/WebGLFloatArray.cpp: Removed.
1395         * html/canvas/WebGLFloatArray.h: Removed.
1396         * html/canvas/WebGLFloatArray.idl: Removed.
1397         * html/canvas/WebGLGetInfo.cpp:
1398         (WebCore::WebGLGetInfo::WebGLGetInfo):
1399         (WebCore::WebGLGetInfo::getWebGLFloatArray):
1400         (WebCore::WebGLGetInfo::getWebGLIntArray):
1401         (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray):
1402         * html/canvas/WebGLGetInfo.h:
1403         * html/canvas/WebGLIntArray.cpp: Removed.
1404         * html/canvas/WebGLIntArray.h: Removed.
1405         * html/canvas/WebGLIntArray.idl: Removed.
1406         * html/canvas/WebGLIntegralTypedArrayBase.h: Removed.
1407         * html/canvas/WebGLRenderingContext.cpp:
1408         (WebCore::WebGLRenderingContext::bufferData):
1409         (WebCore::WebGLRenderingContext::bufferSubData):
1410         (WebCore::WebGLRenderingContext::getUniform):
1411         (WebCore::WebGLRenderingContext::getVertexAttrib):
1412         (WebCore::WebGLRenderingContext::readPixels):
1413         (WebCore::WebGLRenderingContext::texImage2D):
1414         (WebCore::WebGLRenderingContext::texSubImage2D):
1415         (WebCore::WebGLRenderingContext::uniform1fv):
1416         (WebCore::WebGLRenderingContext::uniform1iv):
1417         (WebCore::WebGLRenderingContext::uniform2fv):
1418         (WebCore::WebGLRenderingContext::uniform2iv):
1419         (WebCore::WebGLRenderingContext::uniform3fv):
1420         (WebCore::WebGLRenderingContext::uniform3iv):
1421         (WebCore::WebGLRenderingContext::uniform4fv):
1422         (WebCore::WebGLRenderingContext::uniform4iv):
1423         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
1424         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
1425         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
1426         (WebCore::WebGLRenderingContext::vertexAttrib1fv):
1427         (WebCore::WebGLRenderingContext::vertexAttrib2fv):
1428         (WebCore::WebGLRenderingContext::vertexAttrib3fv):
1429         (WebCore::WebGLRenderingContext::vertexAttrib4fv):
1430         (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
1431         (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
1432         (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter):
1433         * html/canvas/WebGLRenderingContext.h:
1434         * html/canvas/WebGLRenderingContext.idl:
1435         * html/canvas/WebGLShortArray.cpp: Removed.
1436         * html/canvas/WebGLShortArray.h: Removed.
1437         * html/canvas/WebGLShortArray.idl: Removed.
1438         * html/canvas/WebGLTypedArrayBase.h: Removed.
1439         * html/canvas/WebGLUnsignedByteArray.cpp: Removed.
1440         * html/canvas/WebGLUnsignedByteArray.h: Removed.
1441         * html/canvas/WebGLUnsignedByteArray.idl: Removed.
1442         * html/canvas/WebGLUnsignedIntArray.cpp: Removed.
1443         * html/canvas/WebGLUnsignedIntArray.h: Removed.
1444         * html/canvas/WebGLUnsignedIntArray.idl: Removed.
1445         * html/canvas/WebGLUnsignedShortArray.cpp: Removed.
1446         * html/canvas/WebGLUnsignedShortArray.h: Removed.
1447         * html/canvas/WebGLUnsignedShortArray.idl: Removed.
1448         * page/DOMWindow.idl:
1449         * platform/graphics/GraphicsContext3D.h:
1450         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1451         (WebCore::GraphicsContext3D::bufferData):
1452         (WebCore::GraphicsContext3D::bufferSubData):
1453         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1454         (WebCore::GraphicsContext3D::bufferData):
1455         (WebCore::GraphicsContext3D::bufferSubData):
1456
1457 2010-05-14  Steve Falkenburg  <sfalken@apple.com>
1458
1459         Reviewed by Sam Weinig.
1460
1461         <rdar://problem/7985864> Connection properties dictionary should use standard callbacks for keys, values
1462         https://bugs.webkit.org/show_bug.cgi?id=39132
1463
1464         * platform/network/cf/ResourceHandleCFNet.cpp:
1465         (WebCore::createConnectionProperties):
1466
1467 2010-05-14  Abhishek Arya  <inferno@chromium.org>
1468
1469         Reviewed by David Hyatt.
1470
1471         Move the m_width(Length) and m_columns(RenderTable::ColumnStruct)
1472         vector out-of-bounds check out of the ASSERT into the main code.
1473         https://bugs.webkit.org/show_bug.cgi?id=38261
1474
1475         Test: fast/table/fixed-table-layout-large-colspan-crash.html
1476
1477         * rendering/FixedTableLayout.cpp:
1478         (WebCore::FixedTableLayout::calcWidthArray):
1479
1480 2010-05-14  Eric Seidel  <eric@webkit.org>
1481
1482         Unreviewed, rolling out r59489.
1483         http://trac.webkit.org/changeset/59489
1484         https://bugs.webkit.org/show_bug.cgi?id=37815
1485
1486         abarth broke the known universe and then some.
1487
1488         * Android.jscbindings.mk:
1489         * GNUmakefile.am:
1490         * WebCore.gypi:
1491         * WebCore.pro:
1492         * WebCore.vcproj/WebCore.vcproj:
1493         * WebCore.xcodeproj/project.pbxproj:
1494         * bindings/js/JSBindingsAllInOne.cpp:
1495         * bindings/js/JSCallbackData.cpp:
1496         (WebCore::JSCallbackData::invokeCallback):
1497         * bindings/js/JSEventListener.cpp:
1498         (WebCore::JSEventListener::handleEvent):
1499         * bindings/js/JSInjectedScriptHostCustom.cpp:
1500         (WebCore::InjectedScriptHost::createInjectedScript):
1501         * bindings/js/ScheduledAction.cpp:
1502         (WebCore::ScheduledAction::executeFunctionInContext):
1503         (WebCore::ScheduledAction::execute):
1504         * bindings/js/ScheduledAction.h:
1505         * bindings/js/ScriptController.cpp:
1506         (WebCore::ScriptController::evaluateInWorld):
1507         * bindings/js/ScriptController.h:
1508         * bindings/js/ScriptFunctionCall.cpp:
1509         (WebCore::ScriptFunctionCall::call):
1510         * bindings/objc/ObjCEventListener.mm:
1511         (WebCore::ObjCEventListener::handleEvent):
1512         * bindings/objc/WebScriptObject.mm:
1513         (-[WebScriptObject callWebScriptMethod:withArguments:]):
1514         (-[WebScriptObject evaluateWebScript:]):
1515         * bindings/scripts/CodeGeneratorObjC.pm:
1516         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
1517         (-[DOMTestCallback callbackWithClass1Param:]):
1518         (-[DOMTestCallback callbackWithClass2Param:strArg:]):
1519         (-[DOMTestCallback callbackWithNonBoolReturnType:]):
1520         (-[DOMTestCallback customCallback:class6Param:]):
1521         * bindings/scripts/test/ObjC/DOMTestInterface.mm:
1522         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1523         (-[DOMTestObj readOnlyIntAttr]):
1524         (-[DOMTestObj readOnlyStringAttr]):
1525         (-[DOMTestObj readOnlyTestObjAttr]):
1526         (-[DOMTestObj intAttr]):
1527         (-[DOMTestObj setIntAttr:]):
1528         (-[DOMTestObj longLongAttr]):
1529         (-[DOMTestObj setLongLongAttr:]):
1530         (-[DOMTestObj unsignedLongLongAttr]):
1531         (-[DOMTestObj setUnsignedLongLongAttr:]):
1532         (-[DOMTestObj stringAttr]):
1533         (-[DOMTestObj setStringAttr:]):
1534         (-[DOMTestObj testObjAttr]):
1535         (-[DOMTestObj setTestObjAttr:]):
1536         (-[DOMTestObj attrWithException]):
1537         (-[DOMTestObj setAttrWithException:]):
1538         (-[DOMTestObj attrWithSetterException]):
1539         (-[DOMTestObj setAttrWithSetterException:]):
1540         (-[DOMTestObj attrWithGetterException]):
1541         (-[DOMTestObj setAttrWithGetterException:]):
1542         (-[DOMTestObj customAttr]):
1543         (-[DOMTestObj setCustomAttr:]):
1544         (-[DOMTestObj scriptStringAttr]):
1545         (-[DOMTestObj voidMethod]):
1546         (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]):
1547         (-[DOMTestObj intMethod]):
1548         (-[DOMTestObj intMethodWithArgs:strArg:objArg:]):
1549         (-[DOMTestObj objMethod]):
1550         (-[DOMTestObj objMethodWithArgs:strArg:objArg:]):
1551         (-[DOMTestObj serializedValue:]):
1552         (-[DOMTestObj methodWithException]):
1553         (-[DOMTestObj customMethod]):
1554         (-[DOMTestObj customMethodWithArgs:strArg:objArg:]):
1555         (-[DOMTestObj customArgsAndException:]):
1556         (-[DOMTestObj addEventListener:listener:useCapture:]):
1557         (-[DOMTestObj removeEventListener:listener:useCapture:]):
1558         (-[DOMTestObj withDynamicFrame]):
1559         (-[DOMTestObj withDynamicFrameAndArg:]):
1560         (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]):
1561         (-[DOMTestObj withDynamicFrameAndUserGesture:]):
1562         (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]):
1563         (-[DOMTestObj withScriptStateVoid]):
1564         (-[DOMTestObj withScriptStateObj]):
1565         (-[DOMTestObj withScriptStateVoidException]):
1566         (-[DOMTestObj withScriptStateObjException]):
1567         (-[DOMTestObj methodWithOptionalArg:]):
1568         (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]):
1569         (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
1570         * bindings/v8/ScriptController.cpp:
1571         * bindings/v8/ScriptController.h:
1572         * html/HTMLFrameElementBase.cpp:
1573         (WebCore::HTMLFrameElementBase::isURLAllowed):
1574
1575 2010-05-14  Justin Schuh  <jschuh@chromium.org>
1576
1577         Reviewed by Adam Barth.
1578
1579         Moving frame.src checks out of the bindings
1580         https://bugs.webkit.org/show_bug.cgi?id=37815
1581
1582         Moved JavaScript frame.src checks out of bindings and into
1583         HTMLFrameElementBase. Added main thread state stack to JavaScriptCore
1584         so ExecState is available inside core DOM. Updated affected bindings
1585         (except for GObject, which will need to be updated to avoid origin
1586         failures inside native code).
1587
1588         * Android.jscbindings.mk:
1589         * GNUmakefile.am:
1590         * WebCore.gypi:
1591         * WebCore.pro:
1592         * WebCore.vcproj/WebCore.vcproj:
1593         * WebCore.xcodeproj/project.pbxproj:
1594         * bindings/js/JSBindingsAllInOne.cpp:
1595         * bindings/js/JSCallbackData.cpp:
1596         (WebCore::JSCallbackData::invokeCallback):
1597         * bindings/js/JSEventListener.cpp:
1598         (WebCore::JSEventListener::handleEvent):
1599         * bindings/js/JSInjectedScriptHostCustom.cpp:
1600         (WebCore::InjectedScriptHost::createInjectedScript):
1601         * bindings/js/ScheduledAction.cpp:
1602         (WebCore::ScheduledAction::executeFunctionInContext):
1603         (WebCore::ScheduledAction::execute):
1604         * bindings/js/ScheduledAction.h:
1605         * bindings/js/ScriptController.cpp:
1606         (WebCore::ScriptController::evaluateInWorld):
1607         (WebCore::ScriptController::canAccessFromCurrentOrigin):
1608         * bindings/js/ScriptController.h:
1609         * bindings/js/ScriptFunctionCall.cpp:
1610         (WebCore::ScriptFunctionCall::call):
1611         * bindings/objc/ObjCEventListener.mm:
1612         (WebCore::ObjCEventListener::handleEvent):
1613         * bindings/objc/WebScriptObject.mm:
1614         (-[WebScriptObject callWebScriptMethod:withArguments:]):
1615         (-[WebScriptObject evaluateWebScript:]):
1616         * bindings/scripts/CodeGeneratorObjC.pm:
1617         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
1618         (-[DOMTestCallback callbackWithClass1Param:]):
1619         (-[DOMTestCallback callbackWithClass2Param:strArg:]):
1620         (-[DOMTestCallback callbackWithNonBoolReturnType:]):
1621         (-[DOMTestCallback customCallback:class6Param:]):
1622         * bindings/scripts/test/ObjC/DOMTestInterface.mm:
1623         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1624         (-[DOMTestObj readOnlyIntAttr]):
1625         (-[DOMTestObj readOnlyStringAttr]):
1626         (-[DOMTestObj readOnlyTestObjAttr]):
1627         (-[DOMTestObj intAttr]):
1628         (-[DOMTestObj setIntAttr:]):
1629         (-[DOMTestObj longLongAttr]):
1630         (-[DOMTestObj setLongLongAttr:]):
1631         (-[DOMTestObj unsignedLongLongAttr]):
1632         (-[DOMTestObj setUnsignedLongLongAttr:]):
1633         (-[DOMTestObj stringAttr]):
1634         (-[DOMTestObj setStringAttr:]):
1635         (-[DOMTestObj testObjAttr]):
1636         (-[DOMTestObj setTestObjAttr:]):
1637         (-[DOMTestObj attrWithException]):
1638         (-[DOMTestObj setAttrWithException:]):
1639         (-[DOMTestObj attrWithSetterException]):
1640         (-[DOMTestObj setAttrWithSetterException:]):
1641         (-[DOMTestObj attrWithGetterException]):
1642         (-[DOMTestObj setAttrWithGetterException:]):
1643         (-[DOMTestObj customAttr]):
1644         (-[DOMTestObj setCustomAttr:]):
1645         (-[DOMTestObj scriptStringAttr]):
1646         (-[DOMTestObj voidMethod]):
1647         (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]):
1648         (-[DOMTestObj intMethod]):
1649         (-[DOMTestObj intMethodWithArgs:strArg:objArg:]):
1650         (-[DOMTestObj objMethod]):
1651         (-[DOMTestObj objMethodWithArgs:strArg:objArg:]):
1652         (-[DOMTestObj serializedValue:]):
1653         (-[DOMTestObj methodWithException]):
1654         (-[DOMTestObj customMethod]):
1655         (-[DOMTestObj customMethodWithArgs:strArg:objArg:]):
1656         (-[DOMTestObj customArgsAndException:]):
1657         (-[DOMTestObj addEventListener:listener:useCapture:]):
1658         (-[DOMTestObj removeEventListener:listener:useCapture:]):
1659         (-[DOMTestObj withDynamicFrame]):
1660         (-[DOMTestObj withDynamicFrameAndArg:]):
1661         (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]):
1662         (-[DOMTestObj withDynamicFrameAndUserGesture:]):
1663         (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]):
1664         (-[DOMTestObj withScriptStateVoid]):
1665         (-[DOMTestObj withScriptStateObj]):
1666         (-[DOMTestObj withScriptStateVoidException]):
1667         (-[DOMTestObj withScriptStateObjException]):
1668         (-[DOMTestObj methodWithOptionalArg:]):
1669         (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]):
1670         (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
1671         * bindings/v8/ScriptController.cpp:
1672         (WebCore::ScriptController::canAccessFromCurrentOrigin):
1673         * bindings/v8/ScriptController.h:
1674         * html/HTMLFrameElementBase.cpp:
1675         (WebCore::HTMLFrameElementBase::isURLAllowed):
1676
1677 2010-05-14  Sergey Ulanov  <sergeyu@chromium.org>
1678
1679         Reviewed by Dmitry Titov and Brett Wilson.
1680
1681         Adding resized image caching for Skia.
1682         https://bugs.webkit.org/show_bug.cgi?id=39085
1683
1684         Tests: HTML5 video on YouTube.
1685
1686         * platform/graphics/skia/ImageSkia.cpp:
1687         (WebCore::Image::drawPattern): Use bitmap->resizedBitmap() to cache resized image when possible.
1688
1689 2010-05-14  Alexey Proskuryakov  <ap@apple.com>
1690
1691         Reviewed by Brady Eidson.
1692
1693         https://bugs.webkit.org/show_bug.cgi?id=39008
1694         <rdar://problem/7976142> REGRESSION (r58950): Webkit crashes on clicking back button when in Hotmail
1695
1696         Test: fast/parser/tokenizer-close-during-document-write.html
1697
1698         * dom/Document.cpp: (WebCore::Document::write): Check that the tokenizer is still around
1699         after calling write(). It can become null (as it happens in regression test), and I don't
1700         see any guarantee that it would never be replaced with a different one (but I can't make a
1701         test for that).
1702
1703 2010-05-14  Jian Li  <jianli@chromium.org>
1704
1705         Rubber-stamped by Dmitry Titov.
1706
1707         Fix the code indentation inside a namespace to be consistent with the
1708         style guide.
1709
1710         * workers/GenericWorkerTask.h:
1711
1712 2010-05-14  Jian Li  <jianli@chromium.org>
1713
1714         Reviewed by Dmitry Titov.
1715
1716         Remove the ENABLE(WORKERS) guard from GenericWorkerTask.h and rename
1717         all occurrences of GenericWorkerTask* to GenericTask* in this file.
1718         https://bugs.webkit.org/show_bug.cgi?id=39129
1719
1720         I will have another patch to rename the file and move it to the right
1721         place.
1722
1723         * workers/GenericWorkerTask.h:
1724         (WebCore::):
1725         (WebCore::GenericTask1::create):
1726         (WebCore::GenericTask1::GenericTask1):
1727         (WebCore::GenericTask2::create):
1728         (WebCore::GenericTask2::GenericTask2):
1729         (WebCore::GenericTask3::create):
1730         (WebCore::GenericTask3::GenericTask3):
1731         (WebCore::GenericTask4::create):
1732         (WebCore::GenericTask4::GenericTask4):
1733         (WebCore::GenericTask5::create):
1734         (WebCore::GenericTask5::GenericTask5):
1735         (WebCore::GenericTask6::create):
1736         (WebCore::GenericTask6::GenericTask6):
1737         (WebCore::GenericTask7::create):
1738         (WebCore::GenericTask7::GenericTask7):
1739         (WebCore::GenericTask8::create):
1740         (WebCore::GenericTask8::GenericTask8):
1741         (WebCore::createCallbackTask):
1742
1743 2010-05-14  Evan Martin  <evan@chromium.org>
1744
1745         Reviewed by David Levin.
1746
1747         [chromium] don't call fontconfig twice in complex text path
1748         https://bugs.webkit.org/show_bug.cgi?id=38701
1749
1750         Previously getFontDataForCharacters would call fontconfig once to
1751         resolve a font name, then pass that name to getCachedFontPlatformData
1752         to load the font.  This would be two trips through fontconfig (including
1753         IPCs).  With this change, we completely load the font in the first pass.
1754
1755         This patch is actually the same code as in r58341, which was reverted
1756         because of a performance problem; a performance improvement has now
1757         been committed, and with that change in place this change improves
1758         the Chromium intl2 page cycler performance by another 5%.
1759
1760         See also https://bugs.webkit.org/show_bug.cgi?id=37904 .
1761
1762         Test: fast/text/international/bold-bengali.html
1763         (Was checked in as part of the first attempt at this change, continues
1764         to pass after this change.)
1765
1766         * platform/chromium/ChromiumBridge.h:
1767         * platform/graphics/chromium/FontCacheLinux.cpp:
1768         (WebCore::FontCache::getFontDataForCharacters):
1769
1770 2010-05-14  Young Han Lee  <joybro@company100.net>
1771
1772         Reviewed by Darin Adler.
1773
1774         Don't include RetainPtr.h unless PLATFORM(CF) is set.
1775         The RetainPtr is only used for CF platform in this class. 
1776         https://bugs.webkit.org/show_bug.cgi?id=39043
1777
1778         No new tests, there is no new functionality.
1779
1780         * platform/network/curl/ResourceHandleManager.cpp:
1781
1782 2010-05-14  Brian Weinstein  <bweinstein@apple.com>
1783
1784         Reviewed by Adam Roben.
1785
1786         Build fix, we need to copy over the files in $(WebKitOutputDir)/include/JavaScriptCore/private before
1787         WebCore builds. This is because we are building a couple WTF files in WebCore and JavaScriptCore.
1788
1789         * WebCore.vcproj/WebCore.make: 
1790
1791 2010-05-14  Shinichiro Hamaji  <hamaji@chromium.org>
1792
1793         Unreviewed.  Attempt to fix chromium's memory bot error.
1794
1795         More :visited link optimizations to reduce memory usage
1796         https://bugs.webkit.org/show_bug.cgi?id=39084
1797
1798         The original change (r59386) adds check for m_element in initElement.
1799         As don't initialize m_element in the constructor of CSSStyleSelector,
1800         valgrind complains.
1801
1802         * css/CSSStyleSelector.cpp:
1803         (WebCore::CSSStyleSelector::CSSStyleSelector):
1804
1805 2010-05-14  Andreas Kling  <andreas.kling@nokia.com>
1806
1807         Reviewed by Darin Adler.
1808
1809         CSSParser::parseColor() shouldn't alter 'color' unless passed a valid color string.
1810         https://bugs.webkit.org/show_bug.cgi?id=39031
1811
1812         * css/CSSParser.cpp:
1813         (WebCore::CSSParser::parseColor):
1814         * editing/ApplyStyleCommand.cpp:
1815         (WebCore::StyleChange::extractTextStyles): Don't depend on old behavior.
1816         * html/canvas/CanvasRenderingContext2D.cpp:
1817         (WebCore::CanvasRenderingContext2D::setShadow): Remove dead code.
1818
1819 2010-05-14  Jens Alfke  <snej@chromium.org>
1820
1821         Reviewed by John Sullivan.
1822
1823         Don't clear yellow autofill highlight from text fields until the user edits them.
1824         https://bugs.webkit.org/show_bug.cgi?id=39032
1825         No new tests (Couldn't find any autofill tests. The flag doesn't seem to be exposed to JS.)
1826
1827         * html/HTMLInputElement.cpp:
1828         (WebCore::HTMLInputElement::handleFocusEvent):  Don't clear the autofilled flag.
1829         (WebCore::HTMLInputElement::setValueFromRenderer):  Clear the autofilled flag.
1830
1831 2010-05-14  Zhenyao Mo  <zmo@google.com>
1832
1833         Reviewed by Dimitri Glazkov.
1834
1835         Must implement OpenGL ES 2.0 semantics for NPOT textures
1836         https://bugs.webkit.org/show_bug.cgi?id=33805
1837
1838         Test: fast/canvas/webgl/texture-npot.html
1839
1840         * html/canvas/WebGLRenderingContext.cpp:
1841         (WebCore::WebGLRenderingContext::WebGLRenderingContext): Create black 1x1 textures.
1842         (WebCore::WebGLRenderingContext::bindTexture): Set texture dimensionality.
1843         (WebCore::WebGLRenderingContext::copyTexImage2D): Error check, set texture size.
1844         (WebCore::WebGLRenderingContext::drawArrays): Bind to black textures if needed.
1845         (WebCore::WebGLRenderingContext::drawElements): Bind to black textures if needed.
1846         (WebCore::WebGLRenderingContext::generateMipmap): Error check.
1847         (WebCore::WebGLRenderingContext::texImage2DBase): Error check, set texture size.
1848         (WebCore::WebGLRenderingContext::texParameterf): Set texture parameter.
1849         (WebCore::WebGLRenderingContext::texParameteri): Ditto.
1850         (WebCore::WebGLRenderingContext::handleNPOTTextures): Bind to black textures if needed before draw, and bind back to original textures after draw.
1851         * html/canvas/WebGLRenderingContext.h: Add black 1x1 textures.
1852         * html/canvas/WebGLTexture.cpp: Add support to track NPOT textures.
1853         (WebCore::WebGLTexture::createBlackTexture1x1): Create a black 1x1 texture.
1854         (WebCore::WebGLTexture::WebGLTexture): Initialize parameters and states.
1855         (WebCore::WebGLTexture::setDimensionality): Set dimensionality.
1856         (WebCore::WebGLTexture::setParameteri): Set parameter.
1857         (WebCore::WebGLTexture::setParameterf): Ditto.
1858         (WebCore::WebGLTexture::setSize): Set level 0 texture size.
1859         (WebCore::WebGLTexture::isNPOT): Whether the texture is NPOT.
1860         (WebCore::WebGLTexture::updateNPOTStates): Calculate NPOT and NeedToUseBlackTexture states.
1861         * html/canvas/WebGLTexture.h: Add support to track NPOT textures.
1862         (WebCore::WebGLTexture::isNPOT):
1863         (WebCore::WebGLTexture::needToUseBlackTexture):
1864
1865 2010-05-14  Andrey Kosyakov  <caseq@chromium.org>
1866
1867         Reviewed by Pavel Feldman.
1868
1869         Web Inspector: add help on keyboard shortcuts (take 2).
1870
1871         https://bugs.webkit.org/show_bug.cgi?id=38667
1872
1873         * English.lproj/localizedStrings.js:
1874         * WebCore.gypi:
1875         * WebCore.vcproj/WebCore.vcproj:
1876         * inspector/front-end/CallStackSidebarPane.js:
1877         (WebInspector.CallStackSidebarPane):
1878         (WebInspector.CallStackSidebarPane.prototype._placardSelected):
1879         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
1880         * inspector/front-end/ConsoleView.js:
1881         (WebInspector.ConsoleView):
1882         (WebInspector.ConsoleView.prototype._registerShortcuts):
1883         * inspector/front-end/ElementsPanel.js:
1884         (WebInspector.ElementsPanel):
1885         (WebInspector.ElementsPanel.prototype._registerShortcuts):
1886         * inspector/front-end/ElementsTreeOutline.js:
1887         (WebInspector.ElementsTreeOutline.prototype._keyDown):
1888         * inspector/front-end/HelpScreen.js: Added.
1889         * inspector/front-end/KeyboardShortcut.js:
1890         * inspector/front-end/ScriptsPanel.js:
1891         (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor):
1892         (WebInspector.ScriptsPanel.prototype._registerShortcuts):
1893         * inspector/front-end/ShortcutsHelp.js: Added.
1894         * inspector/front-end/SidebarPane.js:
1895         (WebInspector.SidebarPane.prototype._onTitleKeyDown):
1896         * inspector/front-end/StylesSidebarPane.js:
1897         (WebInspector.StylesSidebarPane.prototype.removeSection):
1898         (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
1899         * inspector/front-end/TextViewer.js:
1900         (WebInspector.TextViewer.prototype._handleKeyDown):
1901         * inspector/front-end/WebKit.qrc:
1902         * inspector/front-end/helpScreen.css: Added.
1903
1904 2010-05-14  Tony Gentilcore  <tonyg@chromium.org>
1905
1906         Reviewed by Darin Fisher.
1907
1908         [chromium] Update chromium port to send/receive cached metadata
1909         https://bugs.webkit.org/show_bug.cgi?id=38665
1910
1911         No new tests because no new functionality.
1912
1913         * platform/chromium/ChromiumBridge.h:
1914         * platform/network/chromium/ResourceResponse.h:
1915         (WebCore::ResourceResponse::ResourceResponse):
1916         (WebCore::ResourceResponse::responseTime):
1917         (WebCore::ResourceResponse::setResponseTime):
1918
1919 2010-05-14  Chris Evans  <cevans@chromium.org>
1920
1921         Reviewed by Adam Barth.
1922
1923         Chromium-specific fix to prevent zombie infobars.
1924
1925         https://bugs.webkit.org/show_bug.cgi?id=38948
1926
1927         * bindings/v8/ScriptController.cpp
1928         (WebCore::ScriptController::processingUserGesture):
1929           Require a more definite "no" signal.
1930         * loader/RedirectScheduler.cpp:
1931         (WebCore::ScheduledFormSubmission::fire):
1932           Use a very strong yes / no signal; no need for "possible" here.
1933         * dom/UserGestureIndicator.h:
1934         * dom/UserGestureIndicator.cpp:
1935           Adapt to tri-state: definitely yes; definitely no; not sure.
1936
1937 2010-05-14  Aaron Kennedy  <tffeeb@gmail.com>
1938
1939         Reviewed by Simon Hausmann.
1940
1941         [Qt] JavaScript unable to invoke methods declared in QML
1942         https://bugs.webkit.org/show_bug.cgi?id=38949
1943
1944         JavaScript code executed by webkit cannot call into QML declared
1945         methods, as it does not check for dynamic meta objects.
1946
1947         * bridge/qt/qt_instance.cpp:
1948         (JSC::Bindings::QtInstance::stringValue): Use QMetaObject::metacall.
1949         * bridge/qt/qt_runtime.cpp:
1950         (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto.
1951
1952 2010-05-14  Ben Murdoch  <benm@google.com>
1953
1954         Reviewed by Darin Fisher.
1955
1956         Touch events are disabled by default when using V8.
1957         https://bugs.webkit.org/show_bug.cgi?id=38990
1958
1959         Touch events are protected by a compile time guard, so it's safe to
1960         assume that the runtime flag  should be enabled by default when this
1961         guard is present.
1962
1963         No new tests, build fix for Android.
1964
1965         * bindings/generic/RuntimeEnabledFeatures.cpp: enable touch events by default.
1966
1967 2010-05-14  George Wright  <gwright@rim.com>
1968
1969         Reviewed by George Staikos.
1970
1971         https://bugs.webkit.org/show_bug.cgi?id=38909
1972
1973         Update JSDataGridColumnListCustom.cpp to call identifierToAtomicString()
1974         on the property name.
1975
1976         * bindings/js/JSDataGridColumnListCustom.cpp:
1977         (WebCore::JSDataGridColumnList::canGetItemsForName):
1978         (WebCore::JSDataGridColumnList::nameGetter):
1979
1980 2010-05-14  Andreas Kling  <andreas.kling@nokia.com>
1981
1982         Reviewed by Darin Adler.
1983
1984         Ignore invalid values for various CanvasRenderingContext2D properties
1985         (lineWidth, miterLimit, shadowOffsetX, shadowOffsetY and shadowBlur)
1986
1987         https://bugs.webkit.org/show_bug.cgi?id=38841
1988
1989         Test: fast/canvas/canvas-invalid-values.html
1990
1991         * html/canvas/CanvasRenderingContext2D.cpp:
1992         (WebCore::CanvasRenderingContext2D::setLineWidth):
1993         (WebCore::CanvasRenderingContext2D::setMiterLimit):
1994         (WebCore::CanvasRenderingContext2D::setShadowOffsetX):
1995         (WebCore::CanvasRenderingContext2D::setShadowOffsetY):
1996         (WebCore::CanvasRenderingContext2D::setShadowBlur):
1997
1998 2010-05-13  Timothy Hatcher  <timothy@apple.com>
1999
2000         Expose WebCore::reportException and WebCore::toJSDOMWindow symbols.
2001
2002         Reviewed by Sam Weinig.
2003
2004         * WebCore.base.exp: Expose reportException and toJSDOMWindow.
2005
2006 2010-05-13  Joseph Pecoraro  <joepeck@webkit.org>
2007
2008         Reviewed by Timothy Hatcher.
2009
2010         Web Inspector: Clearing Breakpoints Too Often
2011         https://bugs.webkit.org/show_bug.cgi?id=39094
2012
2013         Minor resets should preserve both workers and breakpoints.
2014
2015         * inspector/front-end/ScriptsPanel.js:
2016         (WebInspector.ScriptsPanel.prototype.reset):
2017
2018 2010-05-13  Simon Fraser  <simon.fraser@apple.com>
2019
2020         Reviewed by Dan Bernstein.
2021
2022         iframes in compositing layers don't redraw correctly on scrolling
2023         https://bugs.webkit.org/show_bug.cgi?id=39096
2024         
2025         When an iframe ends up in a compositing layer (that is painting to its backing store), we need
2026         to turn off blitting on scrolling. RenderView::paintBoxDecorations() already has code to do this
2027         for transformed frames, so do the same thing when the frame is enclosed in a compositing layer.
2028
2029         Test: compositing/iframes/iframe-copy-on-scroll.html
2030
2031         * rendering/RenderView.cpp:
2032         (WebCore::RenderView::paintBoxDecorations):
2033
2034 2010-05-13  Simon Fraser  <simon.fraser@apple.com>
2035
2036         Reviewed by Dave Hyatt.
2037
2038         Fix scrolling in composited iframes
2039         https://bugs.webkit.org/show_bug.cgi?id=39088
2040         <rdar://problem/7980099>
2041         
2042         When propagating compositing out of iframes, we have to update the position of the iframe content
2043         layers on scrolling.
2044
2045         Test: compositing/iframes/scrolling-iframe.html
2046
2047         * page/FrameView.cpp:
2048         (WebCore::FrameView::scrollPositionChanged): Call updateContentLayerScrollPosition() when scrolling.
2049
2050         * rendering/RenderLayerBacking.cpp:
2051         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Renamed setRootPlatformLayerClippingBox() to updateContentLayerOffset().
2052
2053         * rendering/RenderLayerCompositor.h:
2054         * rendering/RenderLayerCompositor.cpp: Rename m_clippingLayer to m_clipLayer to go better with m_scrollLayer.
2055         (WebCore::RenderLayerCompositor::updateContentLayerOffset): Renamed from setRootPlatformLayerClippingBox().
2056             Set the size of the clipping layer from the FrameView now, so that scrollbars are not clipped out.
2057             Update the scroll layer position too.
2058         (WebCore::RenderLayerCompositor::updateContentLayerScrollPosition): Set the position of the scroll layer
2059             when the ScrollView is scrolled.
2060         (WebCore::RenderLayerCompositor::rootPlatformLayer): m_clippingLayer rename.
2061         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): m_clippingLayer rename. Also create m_scrollLayer at
2062             the same time as the clip layer, and clean it up as necessary.
2063         (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): m_clippingLayer rename, and clean up the m_scrollLayer too.
2064         (WebCore::RenderLayerCompositor::detachRootPlatformLayer): m_clippingLayer rename
2065
2066 2010-05-13  Sam Weinig  <sam@webkit.org>
2067
2068         Reviewed by Anders Carlsson.
2069
2070         Follow up to:
2071         Fix for https://bugs.webkit.org/show_bug.cgi?id=38221
2072         Memory issues due to the changes in 36556 (increased CSSPrimitiveValue size).
2073         Part of <rdar://problem/7921275>
2074
2075         Fix failing tests on Leopard.
2076
2077         Initialize m_hasCachedCSSText in CSSPrimitiveValue::init methods.
2078
2079         * css/CSSPrimitiveValue.cpp:
2080         (WebCore::CSSPrimitiveValue::init):
2081         (WebCore::CSSPrimitiveValue::cssText): Add extra assertion.
2082
2083 2010-05-13  Kent Tamura  <tkent@chromium.org>
2084
2085         Reviewed by Darin Adler.
2086
2087         Can't submit a form with <input type=checkbox required>
2088         https://bugs.webkit.org/show_bug.cgi?id=39065
2089
2090         Test: fast/forms/interactive-validation-required-checkbox.html
2091
2092         * html/HTMLInputElement.cpp:
2093         (WebCore::HTMLInputElement::setChecked):
2094           Update the validity cache when a checkbox state is changed.
2095
2096 2010-05-13  Kenneth Russell  <kbr@google.com>
2097
2098         Reviewed by Dimitri Glazkov.
2099
2100         Alias WebGLArray type names to TypedArray type names
2101         https://bugs.webkit.org/show_bug.cgi?id=39036
2102
2103         Exposed the existing WebGL<T>Array constructor functions on the
2104         DOMWindow under the naming convention in the TypedArray spec. The
2105         implementations will be renamed in a subsequent bug, and the
2106         aliases to the WebGL<T>Array type names eventually removed. Ran
2107         all layout tests (including WebGL) in Safari, and WebGL tests in
2108         Chromium.
2109
2110         Test: revised array-unit-tests.html to test both type names.
2111         Revised global prototype and constructor tests to ignore new types.
2112
2113         * bindings/generic/RuntimeEnabledFeatures.h:
2114         (WebCore::RuntimeEnabledFeatures::arrayBufferEnabled):
2115         (WebCore::RuntimeEnabledFeatures::int8ArrayEnabled):
2116         (WebCore::RuntimeEnabledFeatures::uint8ArrayEnabled):
2117         (WebCore::RuntimeEnabledFeatures::int16ArrayEnabled):
2118         (WebCore::RuntimeEnabledFeatures::uint16ArrayEnabled):
2119         (WebCore::RuntimeEnabledFeatures::int32ArrayEnabled):
2120         (WebCore::RuntimeEnabledFeatures::uint32ArrayEnabled):
2121         (WebCore::RuntimeEnabledFeatures::floatArrayEnabled):
2122         * bindings/js/JSDOMWindowCustom.cpp:
2123         (WebCore::JSDOMWindow::arrayBuffer):
2124         (WebCore::JSDOMWindow::int8Array):
2125         (WebCore::JSDOMWindow::uint8Array):
2126         (WebCore::JSDOMWindow::int32Array):
2127         (WebCore::JSDOMWindow::uint32Array):
2128         (WebCore::JSDOMWindow::int16Array):
2129         (WebCore::JSDOMWindow::uint16Array):
2130         (WebCore::JSDOMWindow::floatArray):
2131         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2132         (WebCore::V8DOMWindow::ArrayBufferAccessorGetter):
2133         (WebCore::V8DOMWindow::Int8ArrayAccessorGetter):
2134         (WebCore::V8DOMWindow::Uint8ArrayAccessorGetter):
2135         (WebCore::V8DOMWindow::Int16ArrayAccessorGetter):
2136         (WebCore::V8DOMWindow::Uint16ArrayAccessorGetter):
2137         (WebCore::V8DOMWindow::Int32ArrayAccessorGetter):
2138         (WebCore::V8DOMWindow::Uint32ArrayAccessorGetter):
2139         (WebCore::V8DOMWindow::FloatArrayAccessorGetter):
2140         * page/DOMWindow.idl:
2141
2142 2010-05-13  David Hyatt  <hyatt@apple.com>
2143
2144         Reviewed by Anders Carlsson.
2145
2146         https://bugs.webkit.org/show_bug.cgi?id=39084
2147
2148         Improve :visited style resolution to reduce its memory footprint and to make some speed adjustments and
2149         simplifications.
2150
2151         (1) Tie the caching of link state on CSSStyleSelector to the element.  Just clear out the element when
2152         style resolution finishes for the unvisited case to avoid caching across external calls.  The internal
2153         calls share the cache just fine by doing this.
2154
2155         (2) Delete the RenderStyle if the link is unvisited.  This shouldn't take long enough to make us vulnerable
2156         to timing attacks, and it makes sure the overall footprint stays the way it used to be for unvisited links.
2157
2158         (3) Limit the set of properties that can be applied to :visited links to only the colors it supports.  This
2159         stops images from being loadable from :visited rules.
2160
2161         * css/CSSStyleSelector.cpp:
2162         (WebCore::CSSStyleSelector::init):
2163         (WebCore::CSSStyleSelector::SelectorChecker::determineLinkState):
2164         (WebCore::CSSStyleSelector::initElement):
2165         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2166         (WebCore::CSSStyleSelector::styleForElement):
2167         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2168         (WebCore::isValidVisitedLinkProperty):
2169         (WebCore::CSSStyleSelector::applyProperty):
2170         * css/CSSStyleSelector.h:
2171         * rendering/style/RenderStyle.cpp:
2172         (WebCore::colorIncludingFallback):
2173
2174 2010-05-13  Sam Weinig  <sam@webkit.org>
2175
2176         Reviewed by Darin Adler.
2177
2178         Fix for https://bugs.webkit.org/show_bug.cgi?id=38221
2179         Memory issues due to the changes in 36556 (increased CSSPrimitiveValue size).
2180         Part of <rdar://problem/7921275>
2181
2182         - Use an external cache to speedup cssText for CSSPrimitiveValue instead
2183           of an extra member variable.
2184
2185         * css/CSSPrimitiveValue.cpp:
2186         (WebCore::cssTextCache):
2187         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2188         (WebCore::CSSPrimitiveValue::cleanup):
2189         (WebCore::CSSPrimitiveValue::cssText):
2190         * css/CSSPrimitiveValue.h:
2191         (WebCore::CSSPrimitiveValue::):
2192         * css/CSSPrimitiveValueMappings.h:
2193         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2194
2195 2010-05-13  Enrica Casucci  <enrica@apple.com>
2196
2197         Reviewed by Dave Hyatt.
2198
2199         Adding block elements to a block and removing them changes the height of the element.
2200         https://bugs.webkit.org/show_bug.cgi?id=38874
2201
2202         The initial height of an empty editable block is different from the height of the same block after we add block elements
2203         and remove them.
2204         
2205         Test: editing/deleting/delete-block-contents-004.html
2206
2207         * rendering/RenderBlock.cpp:
2208         (WebCore::RenderBlock::layoutBlock): resetting m_childrenInline flag to true when layout a block with no children.
2209
2210 2010-05-13  Brady Eidson  <beidson@apple.com>
2211
2212         Reviewed by Darin Adler.
2213
2214         Repro crash at www.sears.com (infinite recursion in beforeunload handler)
2215         <rdar://problem/7965182> and https://bugs.webkit.org/show_bug.cgi?id=38928
2216
2217         Test: fast/loader/recursive-before-unload-crash.html
2218
2219         * loader/FrameLoader.cpp:
2220         (WebCore::FrameLoader::shouldClose): Copied from Frame, with the pageDismissal flag set.
2221         * loader/FrameLoader.h:
2222
2223         * page/Frame.cpp:
2224         (WebCore::Frame::shouldClose): Forward to the new FrameLoader::shouldClose().
2225         * page/Frame.h:
2226         (WebCore::Frame::existingDOMWindow):
2227
2228 2010-05-13  Sheriff Bot  <webkit.review.bot@gmail.com>
2229
2230         Unreviewed, rolling out r59376.
2231         http://trac.webkit.org/changeset/59376
2232         https://bugs.webkit.org/show_bug.cgi?id=39080
2233
2234         Broke window prototype tests (Requested by jamesr on #webkit).
2235
2236         * bindings/generic/RuntimeEnabledFeatures.h:
2237         * bindings/js/JSDOMWindowCustom.cpp:
2238         (WebCore::JSDOMWindow::webGLFloatArray):
2239         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2240         * page/DOMWindow.idl:
2241
2242 2010-05-13  Pavel Feldman  <pfeldman@chromium.org>
2243
2244         Reviewed by Yury Semikhatsky.
2245
2246         Web Inspector: A disabled style property cannot be deleted.
2247
2248         https://bugs.webkit.org/show_bug.cgi?id=39057
2249
2250         * inspector/InspectorDOMAgent.cpp:
2251         (WebCore::InspectorDOMAgent::applyStyleText):
2252
2253 2010-05-12  Kenneth Russell  <kbr@google.com>
2254
2255         Reviewed by Dimitri Glazkov.
2256
2257         Alias WebGLArray type names to TypedArray type names
2258         https://bugs.webkit.org/show_bug.cgi?id=39036
2259
2260         Exposed the existing WebGL<T>Array constructor functions on the
2261         DOMWindow under the naming convention in the TypedArray spec. The
2262         implementations will be renamed in a subsequent bug, and the
2263         aliases to the WebGL<T>Array type names eventually removed. Ran
2264         all WebGL layout tests in Safari and Chromium.
2265
2266         Test: revised array-unit-tests.html to test both type names.
2267
2268         * bindings/generic/RuntimeEnabledFeatures.h:
2269         (WebCore::RuntimeEnabledFeatures::arrayBufferEnabled):
2270         (WebCore::RuntimeEnabledFeatures::int8ArrayEnabled):
2271         (WebCore::RuntimeEnabledFeatures::uint8ArrayEnabled):
2272         (WebCore::RuntimeEnabledFeatures::int16ArrayEnabled):
2273         (WebCore::RuntimeEnabledFeatures::uint16ArrayEnabled):
2274         (WebCore::RuntimeEnabledFeatures::int32ArrayEnabled):
2275         (WebCore::RuntimeEnabledFeatures::uint32ArrayEnabled):
2276         (WebCore::RuntimeEnabledFeatures::floatArrayEnabled):
2277         * bindings/js/JSDOMWindowCustom.cpp:
2278         (WebCore::JSDOMWindow::arrayBuffer):
2279         (WebCore::JSDOMWindow::int8Array):
2280         (WebCore::JSDOMWindow::uint8Array):
2281         (WebCore::JSDOMWindow::int32Array):
2282         (WebCore::JSDOMWindow::uint32Array):
2283         (WebCore::JSDOMWindow::int16Array):
2284         (WebCore::JSDOMWindow::uint16Array):
2285         (WebCore::JSDOMWindow::floatArray):
2286         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2287         (WebCore::V8DOMWindow::ArrayBufferAccessorGetter):
2288         (WebCore::V8DOMWindow::Int8ArrayAccessorGetter):
2289         (WebCore::V8DOMWindow::Uint8ArrayAccessorGetter):
2290         (WebCore::V8DOMWindow::Int16ArrayAccessorGetter):
2291         (WebCore::V8DOMWindow::Uint16ArrayAccessorGetter):
2292         (WebCore::V8DOMWindow::Int32ArrayAccessorGetter):
2293         (WebCore::V8DOMWindow::Uint32ArrayAccessorGetter):
2294         (WebCore::V8DOMWindow::FloatArrayAccessorGetter):
2295         * page/DOMWindow.idl:
2296
2297 2010-05-13  Brady Eidson  <beidson@apple.com>
2298
2299         Reviewed by John Sullivan.
2300
2301         Part of <rdar://problem/7965182> and https://bugs.webkit.org/show_bug.cgi?id=38928
2302
2303         No new tests. (No change in behavior)
2304
2305         m_unloadEventBeingDispatched was already overloaded to include both unload and pagehide events.
2306         In general, these are "page dismissal" events, and might also include beforeunload, so let's rename
2307         the flag!
2308
2309         * loader/FrameLoader.cpp:
2310         (WebCore::FrameLoader::FrameLoader):
2311         (WebCore::FrameLoader::stopLoading):
2312         (WebCore::FrameLoader::loadURL):
2313         (WebCore::FrameLoader::loadWithDocumentLoader):
2314         (WebCore::FrameLoader::stopAllLoaders):
2315         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2316         (WebCore::FrameLoader::pageHidden):
2317         * loader/FrameLoader.h:
2318
2319 2010-05-13  Joseph Pecoraro  <joepeck@webkit.org>
2320
2321         Reviewed by Pavel Feldman.
2322
2323         Web Inspector: Event Markers should be hidden in Resource's "Size" Graph
2324         https://bugs.webkit.org/show_bug.cgi?id=39074
2325
2326         Added Show / Hide event dividers functionality to the timeline grid,
2327         and included delegation functions in AbstractTimelinePanel.
2328
2329         * inspector/front-end/AbstractTimelinePanel.js: delegate to the inner grid
2330         (WebInspector.AbstractTimelinePanel.prototype.hideEventDividers):
2331         (WebInspector.AbstractTimelinePanel.prototype.showEventDividers):
2332         * inspector/front-end/ResourcesPanel.js:
2333         (WebInspector.ResourcesPanel.prototype.populateSidebar): save a reference to the size graph item to know when its selected
2334         (WebInspector.ResourcesPanel.prototype._graphSelected): if the size graph is selected hide the dividers, otherwise show them
2335         * inspector/front-end/TimelineGrid.js:
2336         (WebInspector.TimelineGrid.prototype.hideEventDividers): set the container to display: none
2337         (WebInspector.TimelineGrid.prototype.showEventDividers): set the container to display: block
2338
2339 2010-05-13  Chang Shu  <chang.shu@nokia.com>
2340
2341         Reviewed by Kenneth Rohde Christiansen.
2342
2343         Based on the spec and Philip Taylor's test suite, strokeStyle and fillStyle attributes
2344         must initially have the string value #000000.
2345         The link to the spec:
2346         http://philip.html5.org/tests/canvas/suite/tests/spec.html#testrefs.2d.colours.default
2347
2348         https://bugs.webkit.org/show_bug.cgi?id=39068
2349
2350         The complete test suite is in the process of checking in.
2351         https://bugs.webkit.org/show_bug.cgi?id=20553
2352
2353         * html/canvas/CanvasRenderingContext2D.cpp:
2354         (WebCore::CanvasRenderingContext2D::State::State):
2355
2356 2010-05-13  Yury Semikhatsky  <yurys@chromium.org>
2357
2358         Unreviewed, rolling out r59360.
2359         http://trac.webkit.org/changeset/59360
2360         https://bugs.webkit.org/show_bug.cgi?id=38667
2361
2362         It broke Chromium Win build
2363
2364         * English.lproj/localizedStrings.js:
2365         * WebCore.gypi:
2366         * WebCore.vcproj/WebCore.vcproj:
2367         * inspector/front-end/CallStackSidebarPane.js:
2368         (WebInspector.CallStackSidebarPane):
2369         (WebInspector.CallStackSidebarPane.prototype._placardSelected):
2370         * inspector/front-end/ConsoleView.js:
2371         (WebInspector.ConsoleView):
2372         * inspector/front-end/ElementsPanel.js:
2373         (WebInspector.ElementsPanel):
2374         * inspector/front-end/ElementsTreeOutline.js:
2375         (WebInspector.ElementsTreeOutline.prototype._keyDown):
2376         * inspector/front-end/HelpScreen.js: Removed.
2377         * inspector/front-end/KeyboardShortcut.js:
2378         (WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers):
2379         * inspector/front-end/ScriptsPanel.js:
2380         (WebInspector.ScriptsPanel):
2381         (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor):
2382         * inspector/front-end/ShortcutsHelp.js: Removed.
2383         * inspector/front-end/SidebarPane.js:
2384         (WebInspector.SidebarPane.prototype._onTitleKeyDown):
2385         * inspector/front-end/StylesSidebarPane.js:
2386         (WebInspector.StylesSidebarPane.prototype.removeSection):
2387         * inspector/front-end/TextViewer.js:
2388         (WebInspector.TextViewer.prototype._handleKeyDown):
2389         * inspector/front-end/WebKit.qrc:
2390         * inspector/front-end/helpScreen.css: Removed.
2391         * inspector/front-end/inspector.html:
2392         * inspector/front-end/inspector.js:
2393         (WebInspector.loaded):
2394         (WebInspector.documentKeyDown):
2395         (WebInspector._searchKeyDown):
2396         (WebInspector.startEditing.keyDownEventListener):
2397         (WebInspector.startEditing):
2398         * inspector/front-end/utilities.js:
2399
2400 2010-05-13  Antti Koivisto  <koivisto@iki.fi>
2401
2402         Reviewed by Kenneth Rohde Christiansen.
2403
2404         https://bugs.webkit.org/show_bug.cgi?id=39063
2405         [Qt] Tiled backing store checker pattern does not paint correctly when scaling factor is not 1
2406
2407         Use the dirty rect that has been adjusted for scaling instead of the original one.
2408
2409         * platform/graphics/TiledBackingStore.cpp:
2410         (WebCore::TiledBackingStore::paint):
2411
2412 2010-05-13  Chang Shu  <chang.shu@nokia.com>
2413
2414         Reviewed by Kenneth Rohde Christiansen.
2415
2416         Based on Philip Taylor's test suite, resetting the canvas
2417         state resets the current path.
2418         https://bugs.webkit.org/show_bug.cgi?id=38934
2419
2420         The complete test suite is in the process of checking in.
2421         https://bugs.webkit.org/show_bug.cgi?id=20553
2422
2423         * html/canvas/CanvasRenderingContext2D.cpp:
2424         (WebCore::CanvasRenderingContext2D::reset):
2425
2426 2010-05-13  Andrey Kosyakov  <caseq@chromium.org>
2427
2428         Reviewed by Pavel Feldman.
2429
2430         Added help screen with keyboard shortcuts.
2431         https://bugs.webkit.org/show_bug.cgi?id=38667
2432
2433         * English.lproj/localizedStrings.js:
2434         * WebCore.gypi:
2435         * WebCore.vcproj/WebCore.vcproj:
2436         * inspector/front-end/CallStackSidebarPane.js:
2437         (WebInspector.CallStackSidebarPane):
2438         (WebInspector.CallStackSidebarPane.prototype._placardSelected):
2439         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
2440         * inspector/front-end/ConsoleView.js:
2441         (WebInspector.ConsoleView):
2442         (WebInspector.ConsoleView.prototype._registerShortcuts):
2443         * inspector/front-end/ElementsPanel.js:
2444         (WebInspector.ElementsPanel):
2445         (WebInspector.ElementsPanel.prototype._registerShortcuts):
2446         * inspector/front-end/HelpScreen.js: Added.
2447         * inspector/front-end/KeyboardShortcut.js:
2448         (WebInspector.KeyboardShortcut.makeDescriptor):
2449         (WebInspector.KeyboardShortcut.shortcutToString):
2450         (WebInspector.KeyboardShortcut._modifiersToString):
2451         * inspector/front-end/ScriptsPanel.js:
2452         (WebInspector.ScriptsPanel):
2453         (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor):
2454         (WebInspector.ScriptsPanel.prototype._registerShortcuts):
2455         * inspector/front-end/ShortcutsHelp.js: Added.
2456         * inspector/front-end/StylesSidebarPane.js:
2457         (WebInspector.StylesSidebarPane.prototype.removeSection):
2458         (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
2459         * inspector/front-end/WebKit.qrc:
2460         * inspector/front-end/helpScreen.css: Added.
2461
2462 2010-05-13  Yoshiki Hayashi  <yhayashi@google.com>
2463
2464         Reviewed by Darin Adler.
2465
2466         Fix a bug in handleRunInChild where only the first child run-in block
2467         is inserted because removeChildNode clears next sibling.
2468         https://bugs.webkit.org/show_bug.cgi?id=25047
2469
2470         Test: fast/css/run-in-children.html
2471
2472         * rendering/RenderBlock.cpp:
2473         (WebCore::RenderBlock::handleRunInChild):
2474
2475 2010-05-13  Alejandro G. Castro  <alex@igalia.com>
2476
2477         Reviewed by Xan Lopez.
2478
2479         In case there is no expose event we render the theme in a pixmap
2480         and copy it to the cairo context. This is slow but it is used just
2481         in case we are printing nowadays.
2482
2483         [GTK] Theme does not render when printing
2484         https://bugs.webkit.org/show_bug.cgi?id=38896
2485
2486         * platform/gtk/RenderThemeGtk.cpp:
2487         (WebCore::paintMozillaGtkWidget):
2488
2489 2010-05-12  Yuzo Fujishima  <yuzo@google.com>
2490
2491         Reviewed by Darin Adler.
2492
2493         Fix Bug 35014 - Modifying UA rules from page JS crashes
2494         Added a NULL check.
2495         https://bugs.webkit.org/show_bug.cgi?id=35014
2496
2497         Test: fast/css/modify-ua-rules-from-javascript.html
2498
2499         * css/CSSMutableStyleDeclaration.cpp:
2500         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
2501
2502 2010-05-12  Dumitru Daniliuc  <dumi@chromium.org>
2503
2504         Reviewed by Adam Barth.
2505
2506         Add the parent class for Database and DatabaseSync.
2507         https://bugs.webkit.org/show_bug.cgi?id=39041
2508
2509         * GNUmakefile.am:
2510         * WebCore.gypi:
2511         * WebCore.pro:
2512         * WebCore.vcproj/WebCore.vcproj:
2513         * WebCore.xcodeproj/project.pbxproj:
2514         * storage/AbstractDatabase.cpp: Added.
2515         * storage/AbstractDatabase.h: Added.
2516
2517 2010-05-12  Noam Rosenthal  <noam.rosenthal@nokia.com>
2518
2519         Reviewed by Kenneth Rohde Christiansen.
2520
2521         [Qt] GraphicsLayer: depth-test causes flicker in certain situations
2522
2523         This patch removes the simplistic 2D depth test as it leads to flickering side effects.
2524         https://bugs.webkit.org/show_bug.cgi?id=38370
2525
2526         Tested by http://webkit.org/blog-files/3d-transforms/morphing-cubes.html
2527
2528         * platform/graphics/qt/GraphicsLayerQt.cpp:
2529         (WebCore::GraphicsLayerQtImpl::updateTransform):
2530
2531 2010-05-12  Simon Fraser  <simon.fraser@apple.com>
2532
2533         Reviewed by Mark Rowe.
2534
2535         Fix layer dump to avoid spurious platform differences
2536         https://bugs.webkit.org/show_bug.cgi?id=39045
2537         
2538         Only dump the children transform on layers that are not the root layer.
2539         The children transform on the root layer is used on Leopard to implement
2540         geometry flipping, so avoid this supurious difference in test output.
2541
2542         * platform/graphics/GraphicsLayer.cpp:
2543         (WebCore::GraphicsLayer::dumpProperties):
2544
2545 2010-05-12  Sheriff Bot  <webkit.review.bot@gmail.com>
2546
2547         Unreviewed, rolling out r59270.
2548         http://trac.webkit.org/changeset/59270
2549         https://bugs.webkit.org/show_bug.cgi?id=39044
2550
2551         Caused a crash on some pages - bug 39042 (Requested by smfr on
2552         #webkit).
2553
2554         * rendering/RenderBlock.cpp:
2555         (WebCore::RenderBlock::removeChild):
2556
2557 2010-05-12  Simon Fraser  <simon.fraser@apple.com>
2558
2559         Reviewed by David Hyatt.
2560
2561         Composited plug-ins can cause missed painting
2562         https://bugs.webkit.org/show_bug.cgi?id=39033
2563         <rdar://problem/7972478>
2564
2565         Fixed missed painting (and assertions in debug builds) related to compositing
2566         propagating out of iframes that contain plug-ins.
2567         
2568         When an iframe enters or leaves compositing mode, RenderLayerCompositor uses
2569         setNeedsStyleRecalc(SyntheticStyleChange) to trigger the parent document to re-evaluate
2570         whether the iframe itself should be composited. However, for iframes containing plug-ins,
2571         this can happen at inappropriate times. For example, when a browser tab is brought frontmost,
2572         plug-ins are instantiated for the first time (via -viewDidMoveToWindow), which triggers a 
2573         setNeedsStyleRecalc() on the object element. Soon after, the -viewWillDraw machinery
2574         does layout from the top down. During layout of the iframe, the iframe enters compositing mode,
2575         and does a setNeedsStyleRecalc() on the iframe element in its parent document. This leaves the
2576         FrameView as needsLayout(), so the FrameView::paintContents() asserts and bails.
2577         
2578         The fix is to avoid doing a setNeedsStyleRecalc() on the root while inside a recalcStyle on
2579         the iframe. We do this by switching the iframe into compositing mode eagerly as soon as we know
2580         the plug-in needs it.
2581         
2582         A secondary fix is to ensure that if a document has composited iframes, when that document becomes
2583         composited, we connect compositing layers between the iframes and the parent document.
2584
2585         Tests: compositing/iframes/connect-compositing-iframe-delayed.html
2586                compositing/iframes/iframe-src-change.html
2587
2588         * WebCore.base.exp: Export FrameView::enterCompositingMode()
2589
2590         * page/FrameView.h: New method, enterCompositingMode(), that we can call from WebKit plug-in code.
2591         * page/FrameView.cpp:
2592         (WebCore::FrameView::enterCompositingMode):
2593
2594         * rendering/RenderLayerCompositor.h:
2595         * rendering/RenderLayerCompositor.cpp:
2596         (WebCore::RenderLayerCompositor::enableCompositingMode): When we switch into compositing mode, we
2597             force a style recaclc on any iframes to get them into compositing layers, so they can hook up
2598             with their content layers if necessary.
2599         (WebCore::RenderLayerCompositor::didMoveOnscreen): Only call attachRootPlatformLayer() if we really need to.
2600         (WebCore::RenderLayerCompositor::willMoveOffscreen): Only call detachRootPlatformLayer() if we really need to.
2601         (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Whitespace.
2602         (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): Fetch iframe elements, and send a 
2603             synthetic style recalc on them.
2604
2605 2010-05-12  Anders Carlsson  <andersca@apple.com>
2606
2607         Reviewed by Simon Fraser.
2608
2609         Shrink the size of FillLayer by moving a member variable.
2610         https://bugs.webkit.org/show_bug.cgi?id=39035
2611
2612         * rendering/style/FillLayer.cpp:
2613         (WebCore::FillLayer::FillLayer):
2614         * rendering/style/FillLayer.h:
2615
2616 2010-05-12  Sam Weinig  <sam@webkit.org>
2617
2618         Reviewed by Anders Carlsson.
2619
2620         A bunch of nice micro-optimizations for ~1% speedup on PLT.
2621         - Add fastGetAttribute. The same as getAttribute except can only be
2622           called when it is known not to be style attribute or one of the SVG
2623           animatable attributes.
2624         - Inline some functions from Font.
2625         - Return the same string from deprecatedParseURL if there is nothing
2626           to strip.
2627         - Use a member variable instead of a virtual function to determine 
2628           whether a ScheduledNavigation is a location change.
2629
2630         * WebCore.base.exp:
2631         * css/CSSHelper.cpp:
2632         (WebCore::deprecatedParseURL):
2633         * css/CSSStyleSelector.cpp:
2634         (WebCore::linkAttribute):
2635         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2636         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2637         * dom/Element.cpp:
2638         (WebCore::Element::getAttribute):
2639         * dom/Element.h:
2640         (WebCore::Element::fastHasAttribute):
2641         (WebCore::Element::fastGetAttribute):
2642         * html/HTMLFormControlElement.cpp:
2643         (WebCore::HTMLFormControlElement::formControlName):
2644         * html/HTMLInputElement.cpp:
2645         (WebCore::HTMLInputElement::value):
2646         * loader/RedirectScheduler.cpp:
2647         (WebCore::ScheduledNavigation::ScheduledNavigation):
2648         (WebCore::ScheduledNavigation::isLocationChange):
2649         (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
2650         (WebCore::ScheduledRedirect::ScheduledRedirect):
2651         (WebCore::ScheduledLocationChange::ScheduledLocationChange):
2652         (WebCore::ScheduledRefresh::ScheduledRefresh):
2653         (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
2654         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
2655         (WebCore::RedirectScheduler::locationChangePending):
2656         * platform/graphics/Font.cpp:
2657         * platform/graphics/Font.h:
2658         (WebCore::Font::~Font):
2659         (WebCore::Font::primaryFont):
2660         (WebCore::Font::fontDataAt):
2661         (WebCore::Font::fontDataForCharacters):
2662         (WebCore::Font::isFixedPitch):
2663         (WebCore::Font::fontSelector):
2664         * platform/graphics/FontFallbackList.h:
2665         * rendering/RenderImage.cpp:
2666         (WebCore::RenderImage::imageMap):
2667
2668 2010-05-12  David Hyatt  <hyatt@apple.com>
2669
2670         Reviewed by Sam Weinig.
2671
2672         Make InlineBoxes use an IntRect for dimensions, and eliminate the dynamic computation of height() every time.
2673
2674         * WebCore.xcodeproj/project.pbxproj:
2675         * editing/visible_units.cpp:
2676         (WebCore::previousLinePosition):
2677         (WebCore::nextLinePosition):
2678         * rendering/EllipsisBox.cpp:
2679         (WebCore::EllipsisBox::paint):
2680         (WebCore::EllipsisBox::selectionRect):
2681         (WebCore::EllipsisBox::paintSelection):
2682         (WebCore::EllipsisBox::nodeAtPoint):
2683         * rendering/EllipsisBox.h:
2684         (WebCore::EllipsisBox::EllipsisBox):
2685         * rendering/InlineBox.cpp:
2686         (WebCore::InlineBox::adjustPosition):
2687         (WebCore::InlineBox::canAccommodateEllipsis):
2688         * rendering/InlineBox.h:
2689         (WebCore::InlineBox::InlineBox):
2690         (WebCore::InlineBox::isSVGRootInlineBox):
2691         (WebCore::InlineBox::x):
2692         (WebCore::InlineBox::y):
2693         (WebCore::InlineBox::width):
2694         (WebCore::InlineBox::height):
2695         (WebCore::InlineBox::bottom):
2696         (WebCore::InlineBox::right):
2697         (WebCore::InlineBox::setX):
2698         (WebCore::InlineBox::setY):
2699         (WebCore::InlineBox::setWidth):
2700         (WebCore::InlineBox::setHeight):
2701         (WebCore::InlineBox::location):
2702         (WebCore::InlineBox::size):
2703         (WebCore::InlineBox::setLocation):
2704         (WebCore::InlineBox::setSize):
2705         (WebCore::InlineBox::move):
2706         (WebCore::InlineBox::frameRect):
2707         (WebCore::InlineBox::setFrameRect):
2708         (WebCore::InlineBox::baselinePosition):
2709         (WebCore::InlineBox::lineHeight):
2710         * rendering/InlineFlowBox.cpp:
2711         (WebCore::InlineFlowBox::placeBoxesVertically):
2712         (WebCore::InlineFlowBox::computeVerticalOverflow):
2713         (WebCore::InlineFlowBox::nodeAtPoint):
2714         (WebCore::InlineFlowBox::paintBoxDecorations):
2715         (WebCore::InlineFlowBox::paintMask):
2716         (WebCore::InlineFlowBox::paintTextDecorations):
2717         * rendering/InlineFlowBox.h:
2718         (WebCore::InlineFlowBox::visibleOverflowRect):
2719         (WebCore::InlineFlowBox::topLayoutOverflow):
2720         (WebCore::InlineFlowBox::bottomLayoutOverflow):
2721         (WebCore::InlineFlowBox::leftLayoutOverflow):
2722         (WebCore::InlineFlowBox::rightLayoutOverflow):
2723         (WebCore::InlineFlowBox::layoutOverflowRect):
2724         (WebCore::InlineFlowBox::topVisualOverflow):
2725         (WebCore::InlineFlowBox::bottomVisualOverflow):
2726         (WebCore::InlineFlowBox::leftVisualOverflow):
2727         (WebCore::InlineFlowBox::rightVisualOverflow):
2728         (WebCore::InlineFlowBox::visualOverflowRect):
2729         (WebCore::InlineFlowBox::setHorizontalOverflowPositions):
2730         (WebCore::InlineFlowBox::setVerticalOverflowPositions):
2731         * rendering/InlineTextBox.cpp:
2732         (WebCore::InlineTextBox::selectionRect):
2733         (WebCore::InlineTextBox::placeEllipsisBox):
2734         (WebCore::InlineTextBox::nodeAtPoint):
2735         (WebCore::InlineTextBox::paint):
2736         (WebCore::InlineTextBox::paintSelection):
2737         (WebCore::InlineTextBox::paintCompositionBackground):
2738         (WebCore::InlineTextBox::paintDecoration):
2739         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2740         (WebCore::InlineTextBox::paintTextMatchMarker):
2741         (WebCore::InlineTextBox::computeRectForReplacementMarker):
2742         (WebCore::InlineTextBox::paintCompositionUnderline):
2743         (WebCore::InlineTextBox::offsetForPosition):
2744         (WebCore::InlineTextBox::positionForOffset):
2745         * rendering/InlineTextBox.h:
2746         (WebCore::InlineTextBox::setSpaceAdd):
2747         * rendering/RenderBlock.cpp:
2748         (WebCore::RenderBlock::positionForPointWithInlineChildren):
2749         * rendering/RenderBlockLineLayout.cpp:
2750         (WebCore::RenderBlock::computeVerticalPositionsForLine):
2751         (WebCore::RenderBlock::layoutInlineChildren):
2752         * rendering/RenderSVGInline.cpp:
2753         (WebCore::RenderSVGInline::createInlineFlowBox):
2754         * rendering/RenderSVGInlineText.cpp:
2755         (WebCore::RenderSVGInlineText::createTextBox):
2756         * rendering/RenderSVGText.cpp:
2757         (WebCore::RenderSVGText::createRootInlineBox):
2758         * rendering/RenderText.cpp:
2759         (WebCore::RenderText::positionForPoint):
2760         (WebCore::RenderText::firstRunX):
2761         (WebCore::RenderText::firstRunY):
2762         * rendering/RenderTreeAsText.cpp:
2763         (WebCore::writeTextRun):
2764         * rendering/RootInlineBox.cpp:
2765         (WebCore::RootInlineBox::placeEllipsis):
2766         (WebCore::RootInlineBox::addHighlightOverflow):
2767         (WebCore::RootInlineBox::closestLeafChildForXPos):
2768         * rendering/SVGInlineFlowBox.h:
2769         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
2770         * rendering/SVGInlineTextBox.h:
2771         (WebCore::SVGInlineTextBox::selectionTop):
2772         (WebCore::SVGInlineTextBox::selectionHeight):
2773         * rendering/SVGRootInlineBox.h:
2774         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
2775         (WebCore::SVGRootInlineBox::isSVGRootInlineBox):
2776         * rendering/TrailingFloatsRootInlineBox.h: Removed.
2777
2778 2010-05-12  Dumitru Daniliuc  <dumi@chromium.org>
2779
2780         Reviewed by Dimitri Glazkov.
2781
2782         Removing the unnecessary dirfd parameter.
2783         https://bugs.webkit.org/show_bug.cgi?id=38869
2784
2785         * platform/chromium/ChromiumBridge.h:
2786         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
2787
2788 2010-05-12  Enrica Casucci  <enrica@apple.com>
2789
2790         Reviewed by Dave Hyatt.
2791
2792         Adding block elements to a block and removing them changes the height of the element.
2793         https://bugs.webkit.org/show_bug.cgi?id=38874
2794
2795         The initial height of an empty editable block is different from the height of the same block after we add block elements
2796         and remove them.
2797         
2798         Test: editing/deleting/delete-block-contents-004.html
2799
2800         * rendering/RenderBlock.cpp:
2801         (WebCore::RenderBlock::removeChild): m_childrenInline was set to true only when the Renderer is created
2802         and never reset to true when all the block elements contained are removed.
2803
2804 2010-05-11  Dumitru Daniliuc  <dumi@chromium.org>
2805
2806         Reviewed by Dimitri Glazkov.
2807
2808         Do not check if a database needs to be vacuumed after a read-only transaction.
2809         https://bugs.webkit.org/show_bug.cgi?id=38972
2810
2811         * storage/SQLTransaction.cpp:
2812         (WebCore::SQLTransaction::postflightAndCommit):
2813
2814 2010-05-12  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2815
2816         Reviewed by Kenneth Rohde Christiansen.
2817
2818         [Qt] Detect debug mode consistently
2819         https://bugs.webkit.org/show_bug.cgi?id=38863
2820
2821         No new tests as there is no new functionality.
2822
2823         * WebCore.pro:
2824
2825 2010-05-12  James Robinson  <jamesr@chromium.org>
2826
2827         Patch by Dan Bernstein.
2828
2829         Reviewed by David Hyatt.
2830
2831         Fix marking the layout root's parent as needing layout
2832         https://bugs.webkit.org/show_bug.cgi?id=37760
2833
2834         If an element gets marked as needing layout due to the recalcStyle()
2835         call in FrameView::layout(), the m_layoutSchedulingEnabled flag will
2836         be set to false.  It's possible at this point that a parent of the
2837         existing FrameView::m_layoutRoot will be marked as needing layout.
2838
2839         This patch updates FrameView::scheduleRelayoutOfSubtree to account
2840         for this case.
2841
2842         Manual test only due to subtle timing issues.
2843
2844         * manual-tests/layoutroot_detach.xml: Added.
2845         * page/FrameView.cpp:
2846         (WebCore::FrameView::scheduleRelayoutOfSubtree):
2847
2848 2010-05-12  Eric Seidel  <eric@webkit.org>
2849
2850         Unreviewed, rolling out r59245.
2851         http://trac.webkit.org/changeset/59245
2852         https://bugs.webkit.org/show_bug.cgi?id=38874
2853
2854         Broke at least one test on multiple platforms
2855
2856         * rendering/RenderBlock.cpp:
2857         (WebCore::RenderBlock::removeChild):
2858
2859 2010-05-12  Alexey Proskuryakov  <ap@apple.com>
2860
2861         Reviewed by Darin Adler.
2862
2863         https://bugs.webkit.org/show_bug.cgi?id=38752
2864         Strange behaviour after js insertion into a page pointing directly to an object (image, swf, etc)
2865
2866         Test: fast/images/extra-image-in-image-document.html
2867
2868         * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement): Reset setAutoLoadImages
2869         after manually feeding an image - there may be more coming.
2870
2871 2010-05-12  yael aharon  <yael.aharon@nokia.com>
2872
2873         Reviewed by Dan Bernstein.
2874
2875         HTMLLabelElement::control() should return HTMLFormControlElement, not HTMLElement
2876         https://bugs.webkit.org/show_bug.cgi?id=38991
2877
2878         No new tests since no new functionality was introduced.
2879
2880         * html/HTMLLabelElement.cpp:
2881         (WebCore::HTMLLabelElement::control):
2882         * html/HTMLLabelElement.h:
2883
2884 2010-05-12  David Hyatt  <hyatt@apple.com>
2885
2886         Reviewed by Darin Adler.
2887
2888         https://bugs.webkit.org/show_bug.cgi?id=38891
2889
2890         First-letter had a number of bugs that were exposed by my attempt to optimize the setting of styles when updating first-letter.
2891         The code that drills down to find the first-letter child stopped if it hit an element that didn't need layout.  This means it could
2892         return random incorrect results (and cause the first-letter object to not be found).
2893
2894         In addition when the first-letter was floated/positioned, the text child was not correctly returned, but the container itself was
2895         returned instead.
2896
2897         Finally, the updating code was leaving the box that wrapped the first letter text with a stale style.  The old code happened to work because
2898         it made new styles for the text elements instead of using the enclosing box style.  The regression was caused by my change to make the
2899         text children simply share style with their parent (thus making the bug that the parent had the wrong style become more prominent).
2900
2901         No new tests, since there's a timing component to reproducing the issue.
2902
2903         * rendering/RenderBlock.cpp:
2904         (WebCore::RenderBlock::updateFirstLetter):
2905
2906 2010-05-12  Enrica Casucci  <enrica@apple.com>
2907
2908         Reviewed by Dave Hyatt.
2909
2910         Adding block elements to a block and removing them changes the height of the element.
2911         https://bugs.webkit.org/show_bug.cgi?id=38874
2912
2913         The initial height of an empty editable block is different from the height of the same block after we add block elements
2914         and remove them.
2915         
2916         Test: editing/deleting/delete-block-contents-004.html
2917
2918         * rendering/RenderBlock.cpp:
2919         (WebCore::RenderBlock::removeChild): m_childrenInline was set to true only when the Renderer is created
2920         and never reset to true when all the block elements contained are removed.
2921
2922 2010-05-12  Pavel Feldman  <pfeldman@chromium.org>
2923
2924         Reviewed by Timothy Hatcher.
2925
2926         Web Inspector: disabling style property on container breaks styles inspection for given node.
2927
2928         https://bugs.webkit.org/show_bug.cgi?id=39005
2929
2930         Tests: inspector/styles-disable-inherited.html
2931                inspector/styles-disable-then-enable.html
2932
2933         * inspector/front-end/StylesSidebarPane.js:
2934         (WebInspector.StylesSidebarPane.prototype._containsInherited):
2935         (WebInspector.StylesSidebarPane.prototype._arrayContainsInheritedProperty):
2936
2937 2010-05-12  Abhishek Arya  <inferno@chromium.org>
2938
2939         Reviewed by Darin Adler.
2940
2941         HTML Entity Escape the contents of a textarea node when accessed
2942         via the innerHTML and outerHTML node properties.
2943         https://bugs.webkit.org/show_bug.cgi?id=38922
2944
2945         Test: fast/innerHTML/innerHTML-special-elements.html
2946
2947         * editing/markup.cpp:
2948         (WebCore::appendStartMarkup):
2949
2950 2010-05-12  Beth Dakin  <bdakin@apple.com>
2951
2952         Reviewed by Darin Adler.
2953
2954         Fix for https://bugs.webkit.org/show_bug.cgi?id=38871 REGRESSION: 
2955         Crash clicking background NPR tab after few minutes of sitting idle
2956         -and corresponding-
2957         <rdar://problem/7941504>
2958
2959         Move m_mediaCanStartListeners HashSet to Document away from Page.
2960         * dom/Document.cpp:
2961         (WebCore::Document::Document):
2962         (WebCore::Document::addMediaCanStartListener):
2963         (WebCore::Document::removeMediaCanStartListener):
2964         (WebCore::Document::takeAnyMediaCanStartListener):
2965         * dom/Document.h:
2966         * page/Page.cpp:
2967         (WebCore::Page::takeAnyMediaCanStartListener):
2968         * page/Page.h:
2969         (WebCore::Page::canStartMedia):
2970
2971 2010-05-11  Ilya Tikhonovsky  <loislo@chromium.org>
2972
2973         Reviewed by Pavel Feldman.
2974
2975         WebInspector: Sometimes ResourceRequest records aren't connected to the initiator.
2976         https://bugs.webkit.org/show_bug.cgi?id=38925
2977
2978         * inspector/InspectorTimelineAgent.cpp:
2979         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2980         * inspector/InspectorTimelineAgent.h:
2981         (WebCore::):
2982         * inspector/TimelineRecordFactory.cpp:
2983         (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
2984         * inspector/TimelineRecordFactory.h:
2985         * inspector/front-end/TimelineAgent.js:
2986         * inspector/front-end/TimelinePanel.js:
2987         (WebInspector.TimelinePanel):
2988         (WebInspector.TimelinePanel.prototype.get _recordStyles):
2989         (WebInspector.TimelinePanel.prototype._findParentRecord):
2990         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2991         (WebInspector.TimelinePanel.prototype._clearPanel):
2992         (WebInspector.TimelinePanel.FormattedRecord):
2993         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2994         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2995         * loader/loader.cpp:
2996         (WebCore::Loader::load):
2997
2998 2010-05-12  Kent Tamura  <tkent@chromium.org>
2999
3000         Reviewed by Darin Adler.
3001
3002         placeholder text should be stripped from line breaks
3003         https://bugs.webkit.org/show_bug.cgi?id=36291
3004
3005         According to http://dev.w3.org/html5/spec/forms.html#attr-input-placeholder ,
3006         we need to remove CR and LF from the placeholder attribute values.
3007         Introduce HTMLTextFormControlElement::strippedPlaceholder(), which
3008         returns stripped value, and replace getAttribute(placeholderAttr) with it.
3009
3010         Test: fast/forms/placeholder-stripped.html
3011
3012         * html/HTMLFormControlElement.cpp:
3013         (WebCore::HTMLTextFormControlElement::strippedPlaceholder):
3014         (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):
3015         (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
3016           Use strippedPlaceholder().
3017         * html/HTMLFormControlElement.h:
3018         * platform/text/CharacterNames.h: Add carriageReturn.
3019         * rendering/RenderTextControlMultiLine.cpp:
3020         (WebCore::RenderTextControlMultiLine::updateFromElement):
3021           Use strippedPlaceholder().
3022         * rendering/RenderTextControlSingleLine.cpp:
3023         (WebCore::RenderTextControlSingleLine::updateFromElement):
3024           Use strippedPlaceholder().
3025
3026 2010-05-10  Rodrigo Belem  <rodrigo.belem@openbossa.org>
3027
3028         Reviewed by Kenneth Christiansen , Simon Hausmann and Gustavo Noronha.
3029
3030         [Qt, Gtk] Allows build-webkit script to receive an install prefix as parameter
3031         https://bugs.webkit.org/show_bug.cgi?id=26224
3032
3033         This patch adds the ability, in the QtWebkit build system, to change
3034         the installation path.
3035
3036         * WebCore.pro:
3037
3038 2010-05-12  Jer Noble  <jer.noble@apple.com>
3039
3040         Reviewed by Darin Adler.
3041         
3042         Bug 38689: #34005 will break fullscreen video playback
3043         https://bugs.webkit.org/show_bug.cgi?id=38689
3044         
3045         The PlatformMedia struct now contains a type field indicating which type
3046         it contains.  The struct now contains a union of all possible return types,
3047         allowing the type of media returned by MediaPlayerPrivate instances to be
3048         determined at runtime.
3049
3050         * platform/graphics/MediaPlayer.h:
3051         (WebCore::PlatformMedia::):
3052         (WebCore::):
3053         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3054         (WebCore::MediaPlayerPrivate::platformMedia):
3055         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3056         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformMedia):
3057         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3058         (WebCore::MediaPlayerPrivate::platformMedia):
3059
3060 2010-05-12  Young Han Lee  <joybro@company100.net>
3061
3062         Reviewed by Darin Adler.
3063
3064         Add missing ENABLE(SVG) guards.
3065         https://bugs.webkit.org/show_bug.cgi?id=38892
3066
3067         * rendering/RenderSVGResourceClipper.cpp:
3068         * rendering/RenderSVGResourceMarker.cpp:
3069         * rendering/RenderSVGResourceMasker.cpp:
3070
3071 2010-05-12  Pavel Feldman  <pfeldman@chromium.org>
3072
3073         Reviewed by Yury Semikhatsky.
3074
3075         Web Inspector: align sidebar checkboxes on windows.
3076
3077         https://bugs.webkit.org/show_bug.cgi?id=38986
3078
3079         * inspector/front-end/StylesSidebarPane.js:
3080         * inspector/front-end/inspector.css:
3081         (.sidebar-pane-subtitle):
3082         (body.platform-windows .sidebar-pane-subtitle):
3083
3084 2010-05-10  yael aharon  <yael.aharon@nokia.com>
3085
3086         Reviewed by Darin Adler.
3087
3088         Support control attribute of HTMLLabelElement
3089         https://bugs.webkit.org/show_bug.cgi?id=38688
3090
3091         Added support for the control attribute of HTMLLabelElement and changed the logic of determining
3092         which control is associated with the label to conform to HTML5 spec.
3093         Added a manual test for testing the logic of selecting the control to get focused, activated or hovered
3094         when the label gets focused, activated or is hovered.
3095
3096         Test: fast/dom/HTMLLabelElement/click-label.html
3097         Test: fast/dom/HTMLLabelElement/focus-label.html
3098         Test: fast/dom/HTMLLabelElement/label-control.html
3099
3100         * accessibility/AccessibilityRenderObject.cpp:
3101         (WebCore::labelForElement):
3102         (WebCore::AccessibilityRenderObject::correspondingControlForLabelElement):
3103         * html/HTMLFormControlElement.cpp:
3104         (WebCore::HTMLFormControlElement::isLabelable):
3105         * html/HTMLFormControlElement.h:
3106         * html/HTMLLabelElement.cpp:
3107         (WebCore::nodeAsLabelableFormControl):
3108         (WebCore::HTMLLabelElement::control):
3109         (WebCore::HTMLLabelElement::setActive):
3110         (WebCore::HTMLLabelElement::setHovered):
3111         (WebCore::HTMLLabelElement::defaultEventHandler):
3112         (WebCore::HTMLLabelElement::focus):
3113         (WebCore::HTMLLabelElement::accessKeyAction):
3114         * html/HTMLLabelElement.h:
3115         * html/HTMLLabelElement.idl:
3116         * manual-tests/dom/form-control-for-label.html: Added.
3117
3118 2010-05-12  Steve Block  <steveblock@google.com>
3119
3120         Reviewed by David Levin.
3121
3122         Android's writeToFile() is buggy
3123         https://bugs.webkit.org/show_bug.cgi?id=38908
3124
3125         No new tests, build fix only.
3126
3127         * platform/android/FileSystemAndroid.cpp: Remove Android's version of writeToFile().
3128         * platform/posix/FileSystemPOSIX.cpp: Use POSIX version of writeToFile() on Android.
3129         (WebCore::writeToFile):
3130
3131 2010-05-10  Philippe Normand  <pnormand@igalia.com>
3132
3133         Reviewed by David Levin.
3134
3135         [GStreamer] incoherent #ifdef in GOwnPtrGStreamer.h
3136         https://bugs.webkit.org/show_bug.cgi?id=38839
3137
3138         Fixed #ifdef/curly braces coherence.
3139
3140         * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp:
3141         (WTF::GstElement):
3142
3143 2010-05-10  Philippe Normand  <pnormand@igalia.com>
3144
3145         Reviewed by Dirk Schulze.
3146
3147         [GStreamer] un-needed cairo.h include
3148         https://bugs.webkit.org/show_bug.cgi?id=38837
3149
3150         Cairo not used in the sink anymore. So it's not needed to include
3151         the header.
3152
3153         * platform/graphics/gstreamer/VideoSinkGStreamer.h:
3154
3155 2010-05-12  Zoltan Herczeg  <zherczeg@webkit.org>
3156
3157         Reviewed by Nikolas Zimmermann.
3158
3159         Build fix for Windows and Chromium builds.
3160
3161         * WebCore.gypi:
3162         * WebCore.vcproj/WebCore.vcproj:
3163         * svg/graphics/filters/SVGFELighting.cpp:
3164         (WebCore::FELighting::LightingData::upLeftPixelValue):
3165         (WebCore::FELighting::LightingData::upPixelValue):
3166         (WebCore::FELighting::LightingData::upRightPixelValue):
3167         (WebCore::FELighting::LightingData::leftPixelValue):
3168         (WebCore::FELighting::LightingData::centerPixelValue):
3169         (WebCore::FELighting::LightingData::rightPixelValue):
3170         (WebCore::FELighting::LightingData::downLeftPixelValue):
3171         (WebCore::FELighting::LightingData::downPixelValue):
3172         (WebCore::FELighting::LightingData::downRightPixelValue):
3173         (WebCore::FELighting::setPixel):
3174
3175 2010-05-12  Zoltan Herczeg  <zherczeg@webkit.org>
3176
3177         Reviewed by Nikolas Zimmermann.
3178
3179         Implementing SVG filters: feDiffuseLighting and feSpecularLighting
3180         https://bugs.webkit.org/show_bug.cgi?id=32197
3181         https://bugs.webkit.org/show_bug.cgi?id=32199
3182
3183         The patch implements the SVG filters feDiffuseLighting and
3184         feSpecularLighting including the impementation of their possible
3185         light sources according to the Scalable Vector Graphics (SVG)
3186         1.1 Specification. Only two features are missing: supporting images
3187         with height or width set to 1, and kernelUnitLength other than (1,1).
3188         Since the two lighting filters have a similar body, a common base
3189         class called FELighting is introduced, and contains the code for
3190         both filters. The implementation employs single precision floating
3191         point arithmetic (fixed precision integer arithmetic seemed too difficult).
3192
3193         Indentation is removed of the modified header files in svg/graphics/filters
3194
3195         * GNUmakefile.am:
3196         * WebCore.pro:
3197         * WebCore.xcodeproj/project.pbxproj:
3198         * platform/graphics/FloatPoint3D.cpp:
3199         * platform/graphics/FloatPoint3D.h:
3200         (WebCore::FloatPoint3D::FloatPoint3D): constructors changed to inline
3201         (WebCore::operator*): dot product
3202         * svg/SVGFESpotLightElement.cpp:
3203         (WebCore::SVGFESpotLightElement::lightSource):
3204         * svg/graphics/filters/SVGDistantLightSource.h:
3205         (WebCore::DistantLightSource::create):
3206         (WebCore::DistantLightSource::azimuth):
3207         (WebCore::DistantLightSource::elevation):
3208         (WebCore::DistantLightSource::DistantLightSource):
3209         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
3210         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
3211         (WebCore::FEDiffuseLighting::create):
3212         * svg/graphics/filters/SVGFEDiffuseLighting.h:
3213         * svg/graphics/filters/SVGFELighting.cpp: Added.
3214         (WebCore::FELighting::FELighting):
3215         (WebCore::FELighting::LightingData::upLeftPixelValue):
3216         (WebCore::FELighting::LightingData::upPixelValue):
3217         (WebCore::FELighting::LightingData::upRightPixelValue):
3218         (WebCore::FELighting::LightingData::leftPixelValue):
3219         (WebCore::FELighting::LightingData::centerPixelValue):
3220         (WebCore::FELighting::LightingData::rightPixelValue):
3221         (WebCore::FELighting::LightingData::downLeftPixelValue):
3222         (WebCore::FELighting::LightingData::downPixelValue):
3223         (WebCore::FELighting::LightingData::downRightPixelValue):
3224         (WebCore::FELighting::setPixel):
3225         (WebCore::FELighting::drawLighting):
3226         (WebCore::FELighting::apply):
3227         * svg/graphics/filters/SVGFELighting.h: Added.
3228         (WebCore::FELighting::uniteChildEffectSubregions):
3229         (WebCore::FELighting::):
3230         * svg/graphics/filters/SVGFESpecularLighting.cpp:
3231         (WebCore::FESpecularLighting::FESpecularLighting):
3232         (WebCore::FESpecularLighting::create):
3233         * svg/graphics/filters/SVGFESpecularLighting.h:
3234         * svg/graphics/filters/SVGLightSource.cpp:
3235         (WebCore::PointLightSource::initPaintingData):
3236         (WebCore::PointLightSource::updatePaintingData):
3237         (WebCore::SpotLightSource::initPaintingData):
3238         (WebCore::SpotLightSource::updatePaintingData):
3239         (WebCore::DistantLightSource::initPaintingData):
3240         (WebCore::DistantLightSource::updatePaintingData):
3241         * svg/graphics/filters/SVGLightSource.h:
3242         (WebCore::):
3243         (WebCore::LightSource::LightSource):
3244         (WebCore::LightSource::~LightSource):
3245         (WebCore::LightSource::type):
3246         * svg/graphics/filters/SVGPointLightSource.h:
3247         (WebCore::PointLightSource::create):
3248         (WebCore::PointLightSource::position):
3249         (WebCore::PointLightSource::PointLightSource):
3250         * svg/graphics/filters/SVGSpotLightSource.h:
3251         (WebCore::SpotLightSource::create):
3252         (WebCore::SpotLightSource::position):
3253         (WebCore::SpotLightSource::direction):
3254         (WebCore::SpotLightSource::specularExponent):
3255         (WebCore::SpotLightSource::limitingConeAngle):
3256         (WebCore::SpotLightSource::SpotLightSource):
3257
3258 2010-05-12  Xan Lopez  <xlopez@igalia.com>
3259
3260         Reviewed by Nikolas Zimmermann.
3261
3262         Add missing AM_V_GEN directives to generation rules so that they
3263         remain silent when requested.
3264
3265         * GNUmakefile.am:
3266
3267 2010-05-12  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
3268
3269         Reviewed by Jeremy Orlow.
3270
3271         [EFL] It does not make sense to use ScrollbarEfl::ScrollbarEfl, so
3272         use ScrollbarEfl (GCC 4.5 seems to be pickier about this). Revision 59030
3273         fixed cases for RenderThemeEfl, but missed this for ScrollbarEfl.
3274         http://webkit.org/b/38904
3275
3276         No new tests required.
3277
3278         * platform/efl/ScrollbarEfl.cpp:
3279         (scrollbarEflEdjeMessage):
3280
3281 2010-05-12  MORITA Hajime  <morrita@google.com>
3282
3283         Reviewed by Kent Tamura.
3284
3285         [Chromium] Support HTML5 <progress> element on Windows.
3286         https://bugs.webkit.org/show_bug.cgi?id=37308
3287
3288         Extended ChromiumBridge to handle progress bar painting,
3289         and added delegations to it.
3290         
3291         No new tests. Test cases should be shared with existing ones for
3292         progress element.  Expectaions will be added after PROGRESS_TAG is
3293         enabled on Chromium tree.
3294
3295         * platform/chromium/ChromiumBridge.h:
3296         * rendering/RenderProgress.cpp:
3297         (WebCore::RenderProgress::animationProgress):
3298         (WebCore::RenderProgress::isDeterminate):
3299         * rendering/RenderProgress.h:
3300         (WebCore::RenderProgress::position):
3301         * rendering/RenderThemeChromiumWin.cpp:
3302         (WebCore::RenderThemeChromiumWin::animationRepeatIntervalForProgressBar):
3303         (WebCore::RenderThemeChromiumWin::animationDurationForProgressBar):
3304         (WebCore::RenderThemeChromiumWin::adjustProgressBarStyle):
3305         (WebCore::RenderThemeChromiumWin::paintProgressBar):
3306         * rendering/RenderThemeChromiumWin.h:
3307
3308 2010-05-12  Marcus Bulach  <bulach@chromium.org>
3309
3310         Reviewed by Steve Block.
3311
3312         Removes Geolocation::setPosition and uses positionChanged() to capture lastPosition().
3313         This brings CLIENT_BASED_GEOLOCATION more inline with the non-client based.
3314         https://bugs.webkit.org/show_bug.cgi?id=38195
3315
3316         * page/Geolocation.cpp:
3317         (WebCore::Geolocation::lastPosition):
3318         (WebCore::Geolocation::requestPermission):
3319         (WebCore::Geolocation::positionChangedInternal):
3320         (WebCore::Geolocation::positionChanged):
3321         (WebCore::Geolocation::geolocationServicePositionChanged):
3322         * page/Geolocation.h:
3323         * page/GeolocationController.cpp:
3324         (WebCore::GeolocationController::positionChanged):
3325         (WebCore::GeolocationController::lastPosition):
3326         * page/GeolocationController.h:
3327
3328 2010-05-12  Marcus Bulach  <bulach@chromium.org>
3329
3330         Reviewed by Steve Block.
3331
3332         Attaches the geolocation bridge later on startUpdating().
3333         This prevents a page requesting permission when it has just accessed navigator.geolocation (without calling navigator.geolocation.getCurrentPosition/watchPosition).
3334         Note: when Geolocation::haveSuitableCachedPosition(), WebGeolocationServiceBridgeImpl::startUpdating() is not called,
3335         so we attach the bridge if needed at requestGeolocationPermissionForFrame().
3336         https://bugs.webkit.org/show_bug.cgi?id=38323
3337         http://crbug.com/42789
3338
3339         * platform/chromium/GeolocationServiceChromium.h:
3340
3341 2010-05-12  Robin Qiu  <robin.qiu@torchmobile.com.cn>
3342
3343         Reviewed by Dirk Schulze.
3344
3345         Fix a bug in SVGPathSegList::getPathSegAtLength().
3346         This bug is just a misktake: almost all of the code is OK, but the
3347         parameter is not used at all, therefore, this function always returns
3348         "1".
3349         And make a modification to return the last path segment if the distance
3350         exceeds the actual path length.
3351         https://bugs.webkit.org/show_bug.cgi?id=37515
3352
3353         Test: svg/dom/svgpath-getPathSegAtLength.html
3354
3355         * svg/SVGPathSegList.cpp:
3356         (WebCore::SVGPathSegList::getPathSegAtLength):
3357
3358 2010-05-11  David Hyatt  <hyatt@apple.com>
3359
3360         Reviewed by Maciej Stachowiak.
3361
3362         https://bugs.webkit.org/show_bug.cgi?id=38976, fast/css/pseudo-cache-stale.html has incorrect results.
3363
3364         Make sure to trigger a relayout of any objects whose first-line styles change dynamically.
3365
3366         * dom/Element.cpp:
3367         (WebCore::Element::pseudoStyleCacheIsInvalid):
3368
3369 2010-05-11  Joseph Pecoraro  <joepeck@webkit.org>
3370
3371         Reviewed by Timothy Hatcher.
3372
3373         Web Inspector: Shorthand Properties Getting Deleted When Editing
3374         https://bugs.webkit.org/show_bug.cgi?id=38958
3375
3376         * inspector/front-end/DOMAgent.js:
3377         (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands): was getting regular values instead of shorthand values
3378
3379 2010-05-11  Tony Chang  <tony@chromium.org>
3380
3381         Reviewed by Darin Fisher.
3382
3383         [chromium] Remove subframe scrollbar routing (r58937)
3384         https://bugs.webkit.org/show_bug.cgi?id=38894
3385
3386         * page/chromium/EventHandlerChromium.cpp:
3387         (WebCore::EventHandler::passMousePressEventToSubframe):
3388
3389 2010-05-11  Simon Fraser  <simon.fraser@apple.com>
3390
3391         Reviewed by Maciej Stachowiak.
3392
3393         Body not redrawn, and filled with garbage on some composited pages
3394         https://bugs.webkit.org/show_bug.cgi?id=38951
3395         <rdar://problem/7891548>
3396         
3397         When the root layer becomes composited (for example, because a negative z-index
3398         descendant in its stacking context becomes composited), then it has to be made
3399         large enough to fill the viewport, because the page background draws into it.
3400
3401         Test: compositing/geometry/composited-html-size.html
3402
3403         * rendering/RenderLayerCompositor.cpp:
3404         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3405
3406 2010-05-11  Anders Carlsson  <andersca@apple.com>
3407
3408         Reviewed by Mark Rowe.
3409
3410         https://bugs.webkit.org/show_bug.cgi?id=38961
3411         Move some member variables around to reduce class sizes.
3412
3413         If a class inherits (directly or indirectly) from FastAllocBase, we don't want the first member variable
3414         of that class to also inherit (directly or indirectly) from FastAllocBase as this will add padding to the class
3415         and thus increasing its size.
3416
3417         * css/CSSParserValues.h:
3418         * css/CSSSelector.h:
3419         (WebCore::CSSSelector::CSSSelector):
3420         (WebCore::CSSSelector::RareData::RareData):
3421         * platform/graphics/FontCache.cpp:
3422         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
3423
3424 2010-05-11  Dumitru Daniliuc  <dumi@chromium.org>
3425
3426         Reviewed by Adam Barth.
3427
3428         Adding a function needed by the V8 code generator to turn on/off
3429         the binding for WorkerContext::openDatabaseSync().
3430         https://bugs.webkit.org/show_bug.cgi?id=38960
3431
3432         * bindings/generic/RuntimeEnabledFeatures.cpp:
3433         (WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled):
3434         * bindings/generic/RuntimeEnabledFeatures.h:
3435
3436 2010-05-11  MORITA Hajime  <morrita@google.com>
3437
3438         Reviewed by Dirk Schulze.
3439
3440         CSS SVG font doesn't recognize URL without element reference
3441         https://bugs.webkit.org/show_bug.cgi?id=37144
3442
3443         CachedFont::getSVGFontById() did assume that element reference (ID) is given.
3444         So fixed to handle an empty or missing element reference. In which case, 
3445         the first font element is returned if available.
3446         
3447         Test: svg/custom/svg-fonts-with-no-element-reference.html
3448
3449         * loader/CachedFont.cpp:
3450         (WebCore::CachedFont::getSVGFontById):
3451
3452 2010-05-11  Jer Noble  <jer.noble@apple.com>
3453
3454         No Review.
3455         
3456         Fix the Windows Debug Build: the correct VCProj variable to use when linking against
3457         JavaScriptCore is $(WebKitDLLConfigSuffix), not $(WebKitConfigSuffix), which expands
3458         to an empty string rather than "_debug".
3459         
3460         * WebCore.vcproj/QTMovieWin.vcproj:
3461
3462 2010-05-11  Jer Noble  <jer.noble@apple.com>
3463
3464         Darin Adler.
3465
3466         19 media tests are crashing on Windows Release
3467         https://bugs.webkit.org/show_bug.cgi?id=38950
3468         rdar://problem/7971658
3469
3470         Link against JavaScriptCore.lib instead of WTF.lib, so the free and malloc used by 
3471         QTMovieWin is always the free and malloc in JavaScriptCore.dll.
3472         
3473         * WebCore.vcproj/QTMovieWin.vcproj:
3474
3475 2010-05-11  Darin Adler  <darin@apple.com>
3476
3477         Reviewed by Beth Dakin.
3478
3479         Another refactoring patch in preparation for a fix to
3480         https://bugs.webkit.org/show_bug.cgi?id=38871
3481         REGRESSION: Crash clicking background NPR tab after few minutes of sitting idle
3482
3483         * dom/Document.cpp:
3484         (WebCore::Document::addMediaCanStartListener): Added.
3485         (WebCore::Document::removeMediaCanStartListener): Added.
3486
3487         * dom/Document.h: Added add/removeMediaCanStartListener.
3488
3489         * html/HTMLMediaElement.cpp:
3490         (WebCore::HTMLMediaElement::~HTMLMediaElement): Call removeMediaCanStartListener
3491         on the document instead of the page.
3492         (WebCore::HTMLMediaElement::willMoveToNewOwnerDocument): Call
3493         removeMediaCanStartListener on the current document.
3494         (WebCore::HTMLMediaElement::didMoveToNewOwnerDocument): Call
3495         addMediaCanStartListener on the new document.
3496         (WebCore::HTMLMediaElement::loadInternal): Call addMediaCanStartListener
3497         on the document instead of the page.
3498
3499         * plugins/PluginView.cpp:
3500         (WebCore::PluginView::startOrAddToUnstartedList): Call addMediaCanStartListener
3501         on the document instead of the page.
3502         (WebCore::PluginView::~PluginView): Call removeMediaCanStartListener
3503         on the document instead of the page, and do it in line instead of calling
3504         a function.
3505
3506         * plugins/PluginView.h: Removed unused removeFromUnstartedListIfNecessary.
3507
3508 2010-05-11  Brian Weinstein  <bweinstein@apple.com>
3509
3510         Reviewed by Steve Falkenburg and Jon Honeycutt.
3511         Patch by Gavin Barraclough.
3512
3513         REGRESSION (r57900-57919): 3% PLT Regression from moving strings into WTF.
3514         https://bugs.webkit.org/show_bug.cgi?id=38930
3515         <rdar://problem/7937188>
3516         
3517         Add the WTF strings into the WebCore vcproj, from their copied location in $(WebKitOutputDir).
3518
3519         No new tests because no change in behavior.
3520
3521         * WebCore.vcproj/WebCore.vcproj:
3522
3523 2010-05-11  Beth Dakin  <bdakin@apple.com>
3524
3525         Reviewed by Darin Adler.
3526
3527         Small re-factoring patch in preparation for fixing https://
3528         bugs.webkit.org/show_bug.cgi?id=38871 REGRESSION: Crash clicking 
3529         background NPR tab after few minutes of sitting idle
3530
3531         * page/Page.cpp:
3532         (WebCore::Page::takeAnyMediaCanStartListener):
3533         (WebCore::Page::setCanStartMedia):
3534         * page/Page.h:
3535
3536 2010-05-11  Alexey Proskuryakov  <ap@apple.com>
3537
3538         Reviewed by Brady Eidson.
3539
3540         https://bugs.webkit.org/show_bug.cgi?id=37989
3541         Safari (still) doesn't always send basic credentials preemptively
3542
3543         Test: http/tests/xmlhttprequest/basic-auth-default.html
3544
3545         After fetching credentials from WebCore storage, put them back right away. This will add
3546         default credentials for the directory, since this may be the first time we learn about its
3547         associated protection space.
3548
3549         * platform/network/cf/ResourceHandleCFNet.cpp:
3550         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
3551         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
3552         * platform/network/mac/ResourceHandleMac.mm:
3553         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
3554         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]):
3555
3556 2010-05-11  Kevin Watters  <kevinwatters@gmail.com>
3557
3558         Reviewed by Kevin Ollivier.
3559
3560         [wx] Create an NSFont on Mac builds that do not have built-in methods to do so.
3561         https://bugs.webkit.org/show_bug.cgi?id=38931
3562
3563         * platform/graphics/wx/FontPlatformData.h:
3564         (WebCore::FontPlatformData::nsFont):
3565         * platform/graphics/wx/FontPlatformDataWxMac.mm:
3566         (DegToRad):
3567         (OSXCreateNSFont):
3568         (WebCore::FontPlatformData::cacheNSFont):
3569         * platform/graphics/wx/SimpleFontDataWx.cpp:
3570         (WebCore::SimpleFontData::platformWidthForGlyph):
3571
3572 2010-05-11  Avi Drissman  <avi@chromium.org>
3573
3574         Reviewed by Darin Fisher.
3575
3576         [Chromium] Pipe RTL info into WebPopupMenuInfo
3577         https://bugs.webkit.org/show_bug.cgi?id=38749
3578
3579         * platform/chromium/PopupMenuChromium.cpp:
3580         (WebCore::PopupContainer::menuStyle):
3581         * platform/chromium/PopupMenuChromium.h:
3582
3583 2010-05-11  Mark Rowe  <mrowe@apple.com>
3584
3585         Fix the world.
3586
3587         In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
3588         The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
3589         that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
3590         in sync with build-webkit.  This led to WebCore and WebKit having different views of Document's vtable
3591         and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
3592         function in WebCore being called.
3593
3594         We fix this by bringing the FeatureDefines.xcconfig files in to sync.  Based on the ChangeLog message and
3595         other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
3596         has been reverted.
3597
3598         * Configurations/FeatureDefines.xcconfig:
3599
3600 2010-05-11  Dimitri Glazkov  <dglazkov@chromium.org>
3601
3602         Reviewed by Darin Adler.
3603
3604         REGRESSION(r58520): Implicit submission on forms with button type="submit" no longer works
3605         https://bugs.webkit.org/show_bug.cgi?id=38913
3606
3607         * Widened the check for a successful submit button to include all HTMLFormControlElements.
3608         * Clarified implicit submission code by:
3609             - introducing HTMLFormControlElement::canTriggerImplicitSubmission flag,
3610             - getting rid of static casting and checking for tag names.
3611
3612         * html/HTMLFormControlElement.h:
3613         (WebCore::HTMLFormControlElement::canTriggerImplicitSubmission): Added.
3614         * html/HTMLFormElement.cpp:
3615         (WebCore::HTMLFormElement::submitImplicitly): Renamed parameters for clarity, refactored code
3616             to use canTriggerImplicitSubmission.
3617         * html/HTMLFormElement.h: Renamed parameter for clarity.
3618         * html/HTMLInputElement.cpp:
3619         (WebCore::HTMLInputElement::defaultEventHandler):  Used canTriggerImplicitSubmission()
3620             instead of isTextField() for clarity.
3621         * html/HTMLInputElement.h:
3622         (WebCore::HTMLInputElement::canTriggerImplicitSubmission): Added.
3623         * html/HTMLIsIndexElement.h:
3624         (WebCore::HTMLIsIndexElement::canTriggerImplicitSubmission): Added.
3625
3626 2010-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>
3627
3628         Unreviewed, rolling out r59171.
3629         http://trac.webkit.org/changeset/59171
3630         https://bugs.webkit.org/show_bug.cgi?id=38933
3631
3632         "Broke the world" (Requested by bweinstein on #webkit).
3633
3634         * WebCore.vcproj/WebCore.vcproj:
3635
3636 2010-05-11  Brian Weinstein  <bweinstein@apple.com>
3637
3638         Reviewed by Steve Falkenburg.
3639         Patch by Gavin Barraclough.
3640
3641         REGRESSION (r57900-57919): 3% PLT Regression from moving strings into WTF.
3642         https://bugs.webkit.org/show_bug.cgi?id=38930
3643         <rdar://problem/7937188>
3644         
3645         Add the WTF strings into t