2010-12-02 Joseph Pecoraro <joepeck@webkit.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-12-02  Joseph Pecoraro  <joepeck@webkit.org>
2
3         Reviewed by Darin Adler.
4
5         Update ResourceLoaderSet Enumeration
6         https://bugs.webkit.org/show_bug.cgi?id=50405
7
8         Use size_t when working with Vectors and when comparing between size_t types.
9
10         * loader/DocumentLoader.cpp:
11         (WebCore::cancelAll):
12         (WebCore::setAllDefersLoading):
13
14 2010-12-02  Jian Li  <jianli@chromium.org>
15
16         Reviewed by Kenneth Russell.
17
18         Integer calculation issues in DataView constructor
19         https://bugs.webkit.org/show_bug.cgi?id=50354
20
21         Test: fast/canvas/webgl/data-view-crash.html
22
23         * html/canvas/DataView.cpp:
24         (WebCore::DataView::create):
25
26 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
27
28         Reviewed by Darin Adler.
29
30         Add AtomicString::fromUTF8
31         https://bugs.webkit.org/show_bug.cgi?id=45594
32
33         Use AtomicString::fromUTF8 directly in the libxml2 parser.
34
35         * dom/XMLDocumentParserLibxml2.cpp:
36         (WebCore::toAtomicString):
37
38 2010-12-02  Andy Estes  <aestes@apple.com>
39
40         Fix the Qt Linux Release minimal build.
41
42         * html/HTMLMarqueeElement.cpp: Include ExceptionCode.h
43
44 2010-12-02  Joseph Pecoraro  <joepeck@webkit.org>
45
46         Reviewed by Darin Adler.
47
48         Update ResourceLoaderSet Enumeration
49         https://bugs.webkit.org/show_bug.cgi?id=50405
50
51         * loader/DocumentLoader.cpp:
52         (WebCore::cancelAll): instead of copying the HashSet, use copyToVector.
53         (WebCore::setAllDefersLoading): instead of copying the HashSet, use copyToVector.
54
55 2010-12-02  Andy Estes  <aestes@apple.com>
56
57         Reviewed by Darin Adler.
58
59         Implement (non-EventListener) marquee IDL attributes from HTML5.
60         https://bugs.webkit.org/show_bug.cgi?id=49786
61
62         Test: fast/html/marquee-element.html
63
64         * html/HTMLMarqueeElement.cpp:
65         (WebCore::HTMLMarqueeElement::scrollAmount): If the content attribute
66         can be converted to a signed integer and is >= 0, return it.
67         Otherwise, return the default scrollAmount value.
68         (WebCore::HTMLMarqueeElement::setScrollAmount): Update the content
69         attribute if it is >= 0. Otherwise, raise INDEX_SIZE_ERR.
70         (WebCore::HTMLMarqueeElement::scrollDelay): Same as scrollAmount.
71         (WebCore::HTMLMarqueeElement::setScrollDelay): Same as setScrollAmount.
72         (WebCore::HTMLMarqueeElement::loop): If the content attribute can be
73         converted to a signed integer and is greater than 0 or equal to -1,
74         return it. Otherwise, return the default loop value.
75         (WebCore::HTMLMarqueeElement::setLoop): Update the content attribute if
76         it is greater than 0 or equal to -1. Otherwise, raise INDEX_SIZE_ERR.
77         * html/HTMLMarqueeElement.h:
78         * html/HTMLMarqueeElement.idl: Update the IDL to match what is in HTML5.
79         * rendering/style/RenderStyle.h:
80         (WebCore::InheritedFlags::initialMarqueeSpeed):
81
82 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
83
84         Reviewed by Andreas Kling.
85
86         [OpenVG] Remove "current path" of GraphicsContext
87         https://bugs.webkit.org/show_bug.cgi?id=50294
88
89         * platform/graphics/GraphicsContext.h:
90         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
91         (WebCore::GraphicsContext::fillPath):
92         (WebCore::GraphicsContext::strokePath):
93         (WebCore::GraphicsContext::clipPath):
94         * platform/graphics/openvg/PainterOpenVG.cpp:
95         (WebCore::PainterOpenVG::PainterOpenVG):
96         (WebCore::PainterOpenVG::~PainterOpenVG):
97         (WebCore::PainterOpenVG::drawPath):
98         * platform/graphics/openvg/PainterOpenVG.h:
99
100 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
101
102         Reviewed by Andreas Kling.
103
104         [WINCE] Remove "current path" of GraphicsContext
105         https://bugs.webkit.org/show_bug.cgi?id=50284
106
107         * platform/graphics/GraphicsContext.h:
108         * platform/graphics/wince/GraphicsContextWinCE.cpp:
109         (WebCore::GraphicsContext::fillPath):
110         (WebCore::GraphicsContext::strokePath):
111
112 2010-12-02  Johnny Ding  <jnd@chromium.org>
113
114         Reviewed by Adam Barth.
115
116         Set the right gesture status for URL redirections.
117         https://bugs.webkit.org/show_bug.cgi?id=47817
118
119         Tests: fast/frames/location-redirect-user-gesture.html
120                fast/frames/meta-refresh-user-gesture.html
121
122         * loader/NavigationScheduler.cpp:
123         (WebCore::ScheduledNavigation::clearUserGesture):
124         (WebCore::ScheduledRedirect::ScheduledRedirect):
125
126 2010-12-02  Chris Rogers  <crogers@google.com>
127
128         Reviewed by Kenneth Russell.
129
130         AudioContext needs createBuffer() method from ArrayBuffer
131         https://bugs.webkit.org/show_bug.cgi?id=50343
132
133         No new tests since audio API is not yet implemented.
134
135         * webaudio/AudioContext.cpp:
136         (WebCore::AudioContext::createBuffer):
137         * webaudio/AudioContext.h:
138         * webaudio/AudioContext.idl:
139
140 2010-12-02  Noel Gordon  <noel.gordon@gmail.com>
141
142         Reviewed by David Levin.
143
144         [chromium] Add canvas.toDataURL("image/jpeg", quality) support
145         https://bugs.webkit.org/show_bug.cgi?id=49365
146
147         Adds a libjpeg-based image encoder for Skia bitmaps.  Default encoding quality
148         is 92 to match Mozilla, also Safari, though the actual value used by Safari is
149         undocumented, and it appears to pre-blur images prior to compression.
150
151         The preMultipliedBGRAtoRGB() routine restores the un-premultiplied RGB colors
152         where there is non-zero alpha.  Again, this matches Firefox and Safari, but no
153         browser conforms to the HTML5 canvas standard here, I believe, considering the
154         result of canvas/philip/tests/toDataURL.jpeg.alpha.html; that test ignores the
155         alpha channel when extracting an "image/jpeg".toDataURL().  The correct answer
156         needs more investigation, bug http://webkit.org/b/40147.
157
158         Canvas toDataURL is covered by existing tests canvas/philip/tests/toDataURL.*,
159         and fast/canvas/*toDataURL* tests.
160
161         * WebCore.gypi:
162         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
163         (WebCore::V8HTMLCanvasElement::toDataURLCallback): don't set encoding quality
164         here, just pass the toDataURL parameters through to the canvas layer.
165         * platform/chromium/MIMETypeRegistryChromium.cpp:
166         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): implement
167         the supported mimeTypes for encoding in-place.
168         * platform/graphics/skia/ImageBufferSkia.cpp:
169         (WebCore::ImageBuffer::toDataURL): add jpeg encoding and quality support.
170         * platform/image-encoders/skia/JPEGImageEncoder.cpp: Added.
171         (WebCore::prepareOutput):
172         (WebCore::writeOutput):
173         (WebCore::finishOutput):
174         (WebCore::handleError):
175         (WebCore::preMultipliedBGRAtoRGB): FIXME: bug 40147.
176         (WebCore::JPEGImageEncoder::encode):
177         * platform/image-encoders/skia/JPEGImageEncoder.h: Added.
178
179 2010-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
180
181         Unreviewed, rolling out r73152.
182         http://trac.webkit.org/changeset/73152
183         https://bugs.webkit.org/show_bug.cgi?id=50401
184
185         the patch has broken chromium win layout tests (Requested by
186         loislo on #webkit).
187
188         * inspector/CodeGeneratorInspector.pm:
189         * inspector/Inspector.idl:
190         * inspector/front-end/Callback.js:
191         * inspector/front-end/DOMAgent.js:
192         (WebInspector.DOMNode):
193         * inspector/front-end/inspector.js:
194         (WebInspector.loaded.WebInspector.socket.onmessage):
195         (WebInspector.dispatch):
196         (WebInspector_syncDispatch):
197         (WebInspector.reportProtocolError):
198
199 2010-12-02  W. James MacLean  <wjmaclean@chromium.org>
200
201         Reviewed by James Robinson.
202
203         Scaled Resized images are blurred when sent to Skia
204         https://bugs.webkit.org/show_bug.cgi?id=42370
205
206         This patch modifies ImageSkia.cpp to fix the calculation of resampled
207         bitmap sizes so as to include the transform matrix of the canvas.
208         Includes new tests to catch a scrolling regression and a clipping regression.
209
210         Tests: svg/custom/image-rescale-clip.html
211                svg/custom/image-rescale-scroll.html
212                svg/custom/image-rescale.svg
213
214         * platform/graphics/skia/ImageSkia.cpp:
215         (WebCore::computeResamplingMode):
216         (WebCore::drawResampledBitmap):
217
218 2010-12-02  Erik Arvidsson  <arv@chromium.org>
219
220         Reviewed by Darin Adler.
221
222         Missing DOM property for incremental input attribute
223         https://bugs.webkit.org/show_bug.cgi?id=50335
224
225         Test: fast/forms/incremental-dom-property.html
226
227         * html/HTMLInputElement.idl: Added attribute
228
229 2010-12-02  John Knottenbelt  <jknotten@chromium.org>
230
231         Reviewed by Steve Block.
232
233         Move requestGeolocationPermissionForFrame to GeolocationClient
234         https://bugs.webkit.org/show_bug.cgi?id=50061
235
236         This change facilitates client-based geolocation implementation by
237         bringing together permission control into the geolocation client
238         interface.
239
240         * page/Chrome.h:
241         * page/ChromeClient.h:
242         * page/Geolocation.cpp:
243         (WebCore::Geolocation::disconnectFrame):
244         (WebCore::Geolocation::requestPermission):
245         * page/GeolocationClient.h:
246         * page/GeolocationController.cpp:
247         (WebCore::GeolocationController::requestPermission):
248         (WebCore::GeolocationController::cancelPermissionRequest):
249         * page/GeolocationController.h:
250         * platform/mock/GeolocationClientMock.cpp:
251         (WebCore::GeolocationClientMock::GeolocationClientMock):
252         (WebCore::GeolocationClientMock::setPermission):
253         (WebCore::GeolocationClientMock::requestPermission):
254         (WebCore::GeolocationClientMock::cancelPermissionRequest):
255         (WebCore::GeolocationClientMock::asyncUpdatePermission):
256         (WebCore::GeolocationClientMock::permissionTimerFired):
257         (WebCore::GeolocationClientMock::reset):
258         (WebCore::GeolocationClientMock::stopUpdating):
259         (WebCore::GeolocationClientMock::asyncUpdateController):
260         (WebCore::GeolocationClientMock::controllerTimerFired):
261         * platform/mock/GeolocationClientMock.h:
262
263 2010-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
264
265         Reviewed by Pavel Feldman.
266
267         Web Inspector: Inspector protocol cleanup task.
268
269         The patch has just small renames and adjustments for the protocol things.
270         'handler' keyword in idl file was replaced with 'domain'.
271         'domain' property was assigned for the each backend to frontend messages.
272         At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly.
273
274         https://bugs.webkit.org/show_bug.cgi?id=50337
275
276         * inspector/CodeGeneratorInspector.pm:
277         * inspector/Inspector.idl:
278         * inspector/front-end/inspector.js:
279         (WebInspector_syncDispatch):
280
281 2010-12-01  Andrey Kosyakov  <caseq@chromium.org>
282
283         Reviewed by Pavel Feldman.
284
285         Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
286         Re-implementing HAR export functionality that used to be in Resources
287         tab in Network tab.
288         https://bugs.webkit.org/show_bug.cgi?id=45663
289
290         * inspector/front-end/NetworkPanel.js:
291         (WebInspector.NetworkPanel.prototype._createTable):
292         (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
293         (WebInspector.NetworkPanel.prototype._contextMenu):
294         (WebInspector.NetworkPanel.prototype._exportAll):
295         (WebInspector.NetworkPanel.prototype._exportResource):
296         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
297         * inspector/front-end/networkPanel.css:
298         (.data-grid table.data tr.revealed.network-item):
299         (.data-grid.filter-other table.data tr.revealed.network-category-other):
300
301 2010-12-02  Dai Mikurube  <dmikurube@google.com>
302
303         Reviewed by Kent Tamura.
304
305         Reject named colors, accept only #rrggbb in <input type=color />
306         https://bugs.webkit.org/show_bug.cgi?id=50308
307
308         * html/ColorInputType.cpp: Modified to accept only simple colors like #xxxxxx.
309         (WebCore::isValidColorString):
310
311 2010-12-02  Vincent Scheib  <scheib@chromium.org>
312
313         Reviewed by Darin Fisher.
314
315         [chromium] histograms api updated in WebKitClient and added to ChromiumBridge
316         https://bugs.webkit.org/show_bug.cgi?id=50285
317
318         Test by loading "about:histograms" after navigating to accelerated pages.
319
320         * platform/chromium/ChromiumBridge.h: api update.
321
322 2010-12-02  Andras Becsi  <abecsi@webkit.org>
323
324         Unreviewed build fix.
325
326         [Qt][V8] Fix linking of generated sources.
327
328         No new tests needed.
329
330         * WebCore.pro: add missing V8ImageDataCustom.cpp.
331
332 2010-12-02  Nikolas Zimmermann  <nzimmermann@rim.com>
333
334         Reviewed by Adam Roben.
335
336         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedString/SVGAnimatedEnumeration
337         https://bugs.webkit.org/show_bug.cgi?id=50383
338
339         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(STRING|ENUMERATION) / DEFINE_ANIMATED_(STRING|ENUMERATION).
340         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
341
342         No functional changes, thus no new tests.
343
344         * svg/SVGAElement.cpp:
345         * svg/SVGAElement.h:
346         (WebCore::SVGAElement::isValid):
347         (WebCore::SVGAElement::target):
348         * svg/SVGAltGlyphElement.cpp:
349         * svg/SVGAltGlyphElement.h:
350         * svg/SVGAnimatedEnumeration.h:
351         * svg/SVGAnimatedString.h:
352         * svg/SVGClipPathElement.cpp:
353         * svg/SVGClipPathElement.h:
354         * svg/SVGComponentTransferFunctionElement.cpp:
355         * svg/SVGComponentTransferFunctionElement.h:
356         * svg/SVGCursorElement.cpp:
357         * svg/SVGCursorElement.h:
358         * svg/SVGFEBlendElement.cpp:
359         * svg/SVGFEBlendElement.h:
360         * svg/SVGFEColorMatrixElement.cpp:
361         * svg/SVGFEColorMatrixElement.h:
362         * svg/SVGFEComponentTransferElement.cpp:
363         * svg/SVGFEComponentTransferElement.h:
364         * svg/SVGFECompositeElement.cpp:
365         * svg/SVGFECompositeElement.h:
366         * svg/SVGFEConvolveMatrixElement.cpp:
367         * svg/SVGFEConvolveMatrixElement.h:
368         * svg/SVGFEDiffuseLightingElement.cpp:
369         * svg/SVGFEDiffuseLightingElement.h:
370         * svg/SVGFEDisplacementMapElement.cpp:
371         * svg/SVGFEDisplacementMapElement.h:
372         * svg/SVGFEGaussianBlurElement.cpp:
373         * svg/SVGFEGaussianBlurElement.h:
374         * svg/SVGFEImageElement.cpp:
375         * svg/SVGFEImageElement.h:
376         * svg/SVGFELightElement.cpp:
377         * svg/SVGFEMergeNodeElement.cpp:
378         * svg/SVGFEMergeNodeElement.h:
379         * svg/SVGFEMorphologyElement.cpp:
380         * svg/SVGFEMorphologyElement.h:
381         * svg/SVGFEOffsetElement.cpp:
382         * svg/SVGFEOffsetElement.h:
383         * svg/SVGFESpecularLightingElement.cpp:
384         * svg/SVGFESpecularLightingElement.h:
385         * svg/SVGFETileElement.cpp:
386         * svg/SVGFETileElement.h:
387         * svg/SVGFETurbulenceElement.cpp:
388         * svg/SVGFETurbulenceElement.h:
389         * svg/SVGFilterElement.cpp:
390         * svg/SVGFilterElement.h:
391         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
392         * svg/SVGFilterPrimitiveStandardAttributes.h:
393         * svg/SVGForeignObjectElement.cpp:
394         * svg/SVGForeignObjectElement.h:
395         * svg/SVGGradientElement.cpp:
396         * svg/SVGGradientElement.h:
397         * svg/SVGImageElement.cpp:
398         * svg/SVGImageElement.h:
399         * svg/SVGMPathElement.cpp:
400         * svg/SVGMPathElement.h:
401         * svg/SVGMarkerElement.cpp:
402         * svg/SVGMarkerElement.h:
403         * svg/SVGMaskElement.cpp:
404         * svg/SVGMaskElement.h:
405         * svg/SVGPatternElement.cpp:
406         * svg/SVGPatternElement.h:
407         * svg/SVGScriptElement.cpp:
408         * svg/SVGScriptElement.h:
409         * svg/SVGStyledElement.cpp:
410         * svg/SVGStyledElement.h:
411         (WebCore::SVGStyledElement::hasRelativeLengths):
412         (WebCore::SVGStyledElement::supportsMarkers):
413         (WebCore::SVGStyledElement::style):
414         (WebCore::SVGStyledElement::updateRelativeLengthsInformation):
415         (WebCore::SVGStyledElement::selfHasRelativeLengths):
416         (WebCore::SVGStyledElement::isStyled):
417         * svg/SVGTRefElement.cpp:
418         * svg/SVGTRefElement.h:
419         * svg/SVGTextContentElement.cpp:
420         * svg/SVGTextContentElement.h:
421         * svg/SVGTextPathElement.cpp:
422         * svg/SVGTextPathElement.h:
423         * svg/SVGUseElement.cpp:
424         * svg/SVGUseElement.h:
425
426 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
427
428         Reviewed by Andreas Kling.
429
430         [WX] Remove "current path" of GraphicsContext
431         https://bugs.webkit.org/show_bug.cgi?id=50286
432
433         * platform/graphics/GraphicsContext.h:
434         * platform/graphics/wx/GraphicsContextWx.cpp:
435         (WebCore::GraphicsContext::GraphicsContext):
436         (WebCore::GraphicsContext::fillPath):
437         (WebCore::GraphicsContext::strokePath):
438
439 2010-10-26  Martin Robinson  <mrobinson@igalia.com>
440
441         Reviewed by Xan Lopez.
442
443         [GTK] Text input controls do not react properly to CSS styling
444         https://bugs.webkit.org/show_bug.cgi?id=40855
445
446         Improve text input control rendering. Instead of using the GTK+ border
447         attributes of the control modify the padding, they modify the border.
448         Make this same choice for search inputs and text area inputs.
449
450         * platform/gtk/RenderThemeGtk.cpp:
451         (WebCore::setTextInputBorders): Added this helper which sets text input control
452         borders based on GTK+ theme settings.
453         (WebCore::RenderThemeGtk::adjustTextFieldStyle): Use the setTextInputBorders helper.
454         (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
455         (WebCore::RenderThemeGtk::adjustSearchFieldStyle): Ditto.
456         * platform/gtk/RenderThemeGtk.h:
457
458 2010-12-02  Andreas Kling  <kling@webkit.org>
459
460         Reviewed by Kenneth Rohde Christiansen.
461
462         [Qt] GraphicsContext::strokeRect() taints the context's lineWidth
463         https://bugs.webkit.org/show_bug.cgi?id=50269
464
465         Test: fast/canvas/canvas-lineWidth-intact-after-strokeRect.html
466
467         * platform/graphics/qt/GraphicsContextQt.cpp:
468         (WebCore::GraphicsContext::strokeRect): Restore the context's
469         original stroke thickness after painting.
470
471 2010-12-02  Renata Hodovan  <reni@webkit.org>
472
473         Reviewed by Andreas Kling.
474
475         [Qt] GraphicsContext::clip(path) should clip using winding fill 
476         https://bugs.webkit.org/show_bug.cgi?id=49912
477
478         GraphicsContext::clip(path) now uses winding fill and this function is called by
479         GraphicsContext::canvasClip(path).
480
481         No new test is needed.
482
483         * platform/graphics/qt/GraphicsContextQt.cpp:
484         (WebCore::GraphicsContext::clip):
485         (WebCore::GraphicsContext::canvasClip):
486
487 2010-12-01  Alexander Pavlov  <apavlov@chromium.org>
488
489         Reviewed by Yury Semikhatsky.
490
491         Web Inspector: Remove obsolete CSS backend API from InspectorDOMAgent
492         https://bugs.webkit.org/show_bug.cgi?id=50318
493
494         * CMakeLists.txt:
495         * GNUmakefile.am:
496         * WebCore.gypi:
497         * WebCore.order:
498         * WebCore.pro:
499         * WebCore.vcproj/WebCore.vcproj:
500         * WebCore.xcodeproj/project.pbxproj:
501         * inspector/Inspector.idl:
502         * inspector/InspectorCSSAgent.h:
503         * inspector/InspectorCSSStore.cpp: Removed.
504         * inspector/InspectorCSSStore.h: Removed.
505         * inspector/InspectorController.cpp:
506         (WebCore::InspectorController::InspectorController):
507         (WebCore::InspectorController::connectFrontend):
508         (WebCore::InspectorController::didCommitLoad):
509         * inspector/InspectorController.h:
510         * inspector/InspectorDOMAgent.cpp:
511         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
512         (WebCore::InspectorDOMAgent::unbind):
513         * inspector/InspectorDOMAgent.h:
514         (WebCore::InspectorDOMAgent::create):
515
516 2010-12-02  Csaba Osztrogonác  <ossy@webkit.org>
517
518         Unreviewed trivial buildfix after r73117.
519
520         * page/FrameView.cpp:
521         (WebCore::FrameView::calculateScrollbarModesForLayout):
522
523 2010-12-02  Yuqiang Xian  <yuqiang.xian@intel.com>
524
525         Reviewed by Pavel Feldman.
526
527         [V8] Speed up data property access for ImageData.
528         https://bugs.webkit.org/show_bug.cgi?id=49999
529
530         We create a normal V8 object which has a PixelArray as the backing storage,
531         and set the "data" property of the ImageData object to it. 
532         This way "data" becomes a pure JS property and we don't need to call through
533         the C++ bindings for ImageData "data" access. 
534         This eliminates big overhead in switching between JavaScript and native
535         contexts and performing object bindings.
536
537         No new tests. Relying on existing Canvas tests.
538
539         * WebCore.gypi:
540         * bindings/scripts/CodeGeneratorV8.pm:
541         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp:
542         (WebCore::toV8):
543         * bindings/v8/custom/V8ImageDataCustom.cpp: Added.
544         (WebCore::toV8):
545         * html/ImageData.idl:
546         * html/canvas/CanvasPixelArray.idl:
547
548 2010-12-02  Kent Tamura  <tkent@chromium.org>
549
550         Unreviewed. Run sort-Xcode-project-file.
551
552         * WebCore.xcodeproj/project.pbxproj:
553
554 2010-12-02  Mike Lawther  <mikelawther@chromium.org>
555
556         Reviewed by David Hyatt.
557
558         Clean up of iframe scrollbar mode code
559         https://bugs.webkit.org/show_bug.cgi?id=47797
560
561         Pull setChildNeedsLayout/setNeedsLayout calls out of scrollbar mode
562         calculation method and put back into main layout function. 
563         Early exit from the scrollbar calc when scrollbars are turned off. 
564
565         * page/FrameView.cpp:
566         (WebCore::FrameView::calculateScrollbarModesForLayout):
567         (WebCore::FrameView::layout):
568
569 2010-12-02  Hironori Bono  <hbono@chromium.org>
570
571         Reviewed by Darin Fisher.
572
573         [Chromium] Fix possible crashes in FontFallbackFont::determinePitch().
574         https://bugs.webkit.org/show_bug.cgi?id=25770
575
576         When all of "Arial", "Courier New", and "Times New Roman" fonts are corrupted,
577         FontCache::getLastResortFallbackFont() returns 0 and it causes this crash. To
578         avoid this crash, this change falls back to system fonts (Windows ensures they
579         are sane) as Win Safari does. Unfortunately, I don't have any ideas how I can
580         write a layout test for this issue because this crash happens on a PC some of
581         its system fonts are corrupted.
582
583         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
584         (WebCore::fontDataFromDescriptionAndLogFont):
585         (WebCore::FontCache::getLastResortFallbackFont):
586
587 2010-12-02  Dimitri Glazkov  <dglazkov@chromium.org>
588
589         Reviewed by Kent Tamura.
590
591         Provide means to store shadow DOM nodes on Element
592         https://bugs.webkit.org/show_bug.cgi?id=48697
593
594         Adds shadow DOM awareness to the standard Node attach/detach,
595         document and tree insertion and removal cycle.
596
597         No new tests, because the code is not yet used.
598
599         * dom/Element.cpp:
600         (WebCore::Element::insertedIntoDocument): Added logic to cascade down to shadow DOM, if present.
601         (WebCore::Element::removedFromDocument): Ditto.
602         (WebCore::Element::insertedIntoTree): Ditto.
603         (WebCore::Element::removedFromTree): Ditto.
604         (WebCore::Element::attach): Ditto.
605         (WebCore::Element::detach): Ditto.
606         (WebCore::Element::recalcStyle):
607         (WebCore::Element::shadowRoot): Added.
608         (WebCore::Element::setShadowRoot): Added.
609         (WebCore::Element::clearShadowRoot): Added.
610         * dom/Element.h: Added decls.
611         * dom/ElementRareData.h: Added a member to hold a RefPtr to the shadow DOM root for the element.
612
613 2010-12-02  Adam Barth  <abarth@webkit.org>
614
615         Reviewed by Eric Seidel.
616
617         Gray-scale JPEG images with a color profile are stretched horizonally
618         https://bugs.webkit.org/show_bug.cgi?id=49950
619
620         Turns out gray-scale JPEGs with color profiles have the same issue as
621         PNGs.  As with PNGs, we suppress now suppress the color profile for
622         gray-scale JPEGs.  Most importantly, this patch adds a test.
623
624         Test: fast/images/gray-scale-jpeg-with-color-profile.html
625
626         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
627         (WebCore::JPEGImageReader::decode):
628
629 2010-12-01  Geoffrey Garen  <ggaren@apple.com>
630
631         Build fix: Added a forwarding header.
632
633         * ForwardingHeaders/wtf/OSAllocator.h: Added.
634
635 2010-12-01  Jia Pu  <jpu@apple.com>
636
637         Reviewed by Darin Adler.
638
639         Support multiple correction candidates panel for misspelled word on Mac OS X.
640         https://bugs.webkit.org/show_bug.cgi?id=50137
641         <rdar://problem/8568059>
642
643         Test: platform/mac/editing/spelling/delete-autocorrected-word-1.html
644         Manual test: WebCore/manual-tests/autocorrection/dismiss-multiple-guesses.html
645                      WebCore/manual-tests/autocorrection/select-from-multiple-guesses.html
646
647         This patch is for supporting multiple correction suggestion panel on Mac OS X.
648         The behavior and implementation is similar to that of reversion candiate panel.
649
650         * WebCore.exp.in: Added and removed symbols.
651
652         * editing/CorrectionPanelInfo.h: Added new correction panel type, PanelTypeSpellingSuggestions.
653
654         * editing/Editor.cpp:
655         (WebCore::markerTypesForAutocorrection): Convenient function for getting marker types to
656           be added to autocorrected word.
657         (WebCore::boundingBoxForRange): Convenient function for calculating the bounding box of a range.
658         (WebCore::markerTypesForReplacement): Convenient function for getting marker types to
659           be added to word that has been replaced by various correction panel.
660         (WebCore::Editor::respondToChangedSelection): Added code to trigger timer for multiple
661           suggestion panel.
662         (WebCore::Editor::guessesForMisspelledSelection): Adopted new signature of EditorClient::getGuessesForWord().
663         (WebCore::Editor::markMisspellingsAfterTypingToWord): Adopted new signature of applyCorrectionPanelInfo().
664         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
665         (WebCore::Editor::correctionPanelTimerFired): Added code to handle new multiple suggestion panel.
666         (WebCore::Editor::handleCorrectionPanelResult): Replaced handleRejectedCorrection(), since
667           with new AppKit correction panel API, not only rejection, but also confirmation can be
668           handled in callback.
669         (WebCore::Editor::stopCorrectionPanelTimer): Moved the code that clears correction panel info
670           from dismissCorrectionPanel() to this function to fix a bug that would occur when deleting
671           autocorrected word.
672         (WebCore::Editor::dismissCorrectionPanel): Ditto.
673         (WebCore::Editor::applyCorrectionPanelInfo): Added code to handle new multiple suggestion panel.
674
675         * editing/Editor.h: Replaced handleRejectedCorrection() with handleCorrectionPanelResult().
676           Changed the signature of applyCorrectionPanelInfo() to hanlde new correction panel type.
677
678         * editing/TextCheckingHelper.cpp:
679         (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Adopted new EditorClient::getGuessesForWord().
680
681         * editing/TextCheckingHelper.h: Made paragraphRange() public.
682
683         * loader/EmptyClients.h:
684         (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature defined in base class.
685         (WebCore::EmptyEditorClient::getGuessesForWord): Ditto.
686
687         * manual-tests/autocorrection/dismiss-multiple-guesses.html: Added.
688
689         * manual-tests/autocorrection/select-from-multiple-guesses.html: Added.
690
691         * page/EditorClient.h:  Changed showCorrectionPanel() to allow passing multiple correction
692           candidates. Changed getGuessesForWord() to allow passing in contextual text for better
693           correction suggestions (for those spellcheckers that utilizes such contextual information).
694
695 2010-12-01  David Hyatt  <hyatt@apple.com>
696
697         Reviewed by James Robinson.
698
699         https://bugs.webkit.org/show_bug.cgi?id=50360
700         
701         Make sure to include the origin adjustment code that I added on Mac to keep truncation-rtl.html passing.
702
703         * platform/ScrollView.cpp:
704         (WebCore::ScrollView::updateScrollbars):
705
706 2010-12-01  David Hyatt  <hyatt@apple.com>
707
708         Reviewed by Dan Bernstein.
709
710         https://bugs.webkit.org/show_bug.cgi?id=46645
711
712         Generalize overflow section scrollOriginX code to be a point and to work in both horizontal
713         and vertical modes.
714
715         Not testable yet, since the rightmost/leftmost/topmost/lowestPosition functions are returning
716         horrendously wrong values in the vertical text case for overflow:auto objects.
717
718         * rendering/RenderLayer.cpp:
719         (WebCore::RenderLayer::RenderLayer):
720         (WebCore::RenderLayer::scrollToOffset):
721         (WebCore::RenderLayer::computeScrollDimensions):
722         (WebCore::RenderLayer::updateOverflowStatus):
723         * rendering/RenderLayer.h:
724         (WebCore::RenderLayer::scrolledContentOffset):
725         (WebCore::RenderLayer::scrollXOffset):
726         (WebCore::RenderLayer::scrollYOffset):
727         (WebCore::RenderLayer::scrollToXOffset):
728         (WebCore::RenderLayer::scrollToYOffset):
729
730 2010-12-01  Steve Falkenburg  <sfalken@apple.com>
731
732         Reviewed by Adam Roben.
733
734         WinCairo build should not use link-time code generation (LTCG)
735         https://bugs.webkit.org/show_bug.cgi?id=50353
736
737         * WebCore.vcproj/QTMovieWin.vcproj:
738         * WebCore.vcproj/WebCore.vcproj:
739
740 2010-12-01  David Hyatt  <hyatt@apple.com>
741
742         Reviewed by Darin Adler.
743
744         https://bugs.webkit.org/show_bug.cgi?id=46645
745         
746         Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept
747         recently added for horizontal RTL documents and applies it to writing modes as well.  Now the
748         scrollOrigin is a point, since you can start off locked to the bottom or locked to the right.
749         
750         This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and
751         makes them behave the same as the cross-platform code (allowing for cross-platform results to be
752         landed).
753
754         * page/FrameView.cpp:
755         (WebCore::FrameView::adjustViewSize):
756         * page/mac/WebCoreFrameView.h:
757         * platform/ScrollView.cpp:
758         (WebCore::ScrollView::ScrollView):
759         (WebCore::ScrollView::maximumScrollPosition):
760         (WebCore::ScrollView::minimumScrollPosition):
761         (WebCore::ScrollView::valueChanged):
762         (WebCore::ScrollView::updateScrollbars):
763         (WebCore::ScrollView::wheelEvent):
764         * platform/ScrollView.h:
765         (WebCore::ScrollView::scrollOrigin):
766         * platform/mac/ScrollViewMac.mm:
767         (WebCore::ScrollView::platformSetScrollPosition):
768         (WebCore::ScrollView::platformSetScrollOrigin):
769         * rendering/RenderBox.cpp:
770         (WebCore::RenderBox::paintRootBoxDecorations):
771         * rendering/RenderView.cpp:
772         (WebCore::RenderView::layout):
773         (WebCore::RenderView::docTop):
774         (WebCore::RenderView::docHeight):
775         (WebCore::RenderView::docLeft):
776         (WebCore::RenderView::docWidth):
777         * rendering/RenderView.h:
778
779 2010-11-30  Steve Block  <steveblock@google.com>
780
781         Reviewed by Jeremy Orlow.
782
783         Upstream recent changes to WebCore/platform/network/android
784         https://bugs.webkit.org/show_bug.cgi?id=50224
785
786         Android implementation changes only, no new tests.
787
788         * platform/network/NetworkingContext.h:
789         * platform/network/android/CookieJarAndroid.cpp:
790         (WebCore::setCookies):
791         (WebCore::cookies):
792         (WebCore::cookieRequestHeaderFieldValue):
793         (WebCore::cookiesEnabled):
794         * platform/network/android/ProxyServerAndroid.cpp: Added.
795         (WebCore::proxyServersForURL):
796         * platform/network/android/ResourceHandleAndroid.cpp:
797         (WebCore::ResourceHandle::start):
798         (WebCore::ResourceHandle::loadResourceSynchronously):
799         * platform/network/android/ResourceRequestAndroid.cpp:
800         (WebCore::initializeMaximumHTTPConnectionCountPerHost):
801
802 2010-12-01  Steve Falkenburg  <sfalken@apple.com>
803
804         Reviewed by Adam Roben.
805
806         vcproj changes can't be applied cleanly by the Windows EWS bot
807         https://bugs.webkit.org/show_bug.cgi?id=50328
808
809         * WebCore.vcproj/QTMovieWin.vcproj: Modified property svn:eol-style.
810         * WebCore.vcproj/QTMovieWinCommon.vsprops: Added property svn:eol-style.
811         * WebCore.vcproj/WebCore.sln: Modified property svn:eol-style.
812         * WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style.
813         * WebCore.vcproj/WebCore.vcproj: Modified property svn:eol-style.
814         * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added property svn:eol-style.
815         * WebCore.vcproj/WebCoreCG.vsprops: Added property svn:eol-style.
816         * WebCore.vcproj/WebCoreCURL.vsprops: Added property svn:eol-style.
817         * WebCore.vcproj/WebCoreCairo.vsprops: Added property svn:eol-style.
818         * WebCore.vcproj/WebCoreCommon.vsprops: Added property svn:eol-style.
819         * WebCore.vcproj/WebCoreGenerated.vcproj: Modified property svn:eol-style.
820         * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added property svn:eol-style.
821         * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added property svn:eol-style.
822         * WebCore.vcproj/WebCoreMediaQT.vsprops: Added property svn:eol-style.
823         * WebCore.vcproj/WebCorePthreads.vsprops: Added property svn:eol-style.
824         * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added property svn:eol-style.
825
826 2010-11-30  Vangelis Kokkevis  <vangelis@chromium.org>
827
828         Reviewed by Darin Fisher.
829
830         Adds accelerated compositing trigger flags to Settings to allow
831         ports to set them via command line flags, etc.
832         https://bugs.webkit.org/show_bug.cgi?id=50301
833
834         * page/Settings.cpp:
835         (WebCore::Settings::Settings):
836         (WebCore::Settings::setAcceleratedCompositingFor3DTransformsEnabled):
837         (WebCore::Settings::setAcceleratedCompositingForVideoEnabled):
838         (WebCore::Settings::setAcceleratedCompositingForPluginsEnabled):
839         (WebCore::Settings::setAcceleratedCompositingForCanvasEnabled):
840         (WebCore::Settings::setAcceleratedCompositingForAnimationEnabled):
841         * page/Settings.h:
842         (WebCore::Settings::acceleratedCompositingFor3DTransformsEnabled):
843         (WebCore::Settings::acceleratedCompositingForVideoEnabled):
844         (WebCore::Settings::acceleratedCompositingForPluginsEnabled):
845         (WebCore::Settings::acceleratedCompositingForCanvasEnabled):
846         (WebCore::Settings::acceleratedCompositingForAnimationEnabled):
847
848 2010-12-01  Darin Adler  <darin@apple.com>
849
850         Fixed warning seen on buildbot.
851
852         * platform/graphics/chromium/ContentLayerChromium.cpp:
853         (WebCore::ContentLayerChromium::SharedValues::SharedValues): Added #if.
854
855 2010-12-01  Ryosuke Niwa  <rniwa@webkit.org>
856
857         Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
858
859         chrome.dll!WebCore::RangeBoundaryPoint::toPosition ReadAV@NULL (cf0d0f28bc56f2591cc74f71b46036ea)
860         https://bugs.webkit.org/show_bug.cgi?id=47808
861
862         The crash was caused by moveParagraphWithClones' not copying the entire paragraph
863         when called by doApplyForSingleParagraph, which was induced by a bug in
864         cloneParagraphUnderNewElement which ended the cloning process early when the start node
865         and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
866         by calling traverseNextSibling(outerNode) instead of nextSibling().
867
868         Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
869
870         Tests: editing/execCommand/switch-multiple-list-items-crash.html
871                editing/execCommand/switch-multiple-list-items.html
872
873         * editing/CompositeEditCommand.cpp:
874         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
875         * editing/InsertListCommand.cpp:
876         (WebCore::InsertListCommand::doApply):
877
878 2010-12-01  Kevin Ollivier  <kevino@theolliviers.com>
879
880         [wx] Build fixes after recent trunk changes.
881
882         * platform/graphics/wx/ImageBufferWx.cpp:
883         (WebCore::ImageBuffer::ImageBuffer):
884         * platform/wx/LocalizedStringsWx.cpp:
885         (WebCore::platformDefaultLanguage):
886
887 2010-12-01  Sheriff Bot  <webkit.review.bot@gmail.com>
888
889         Unreviewed, rolling out r73047.
890         http://trac.webkit.org/changeset/73047
891         https://bugs.webkit.org/show_bug.cgi?id=50339
892
893         missing bug number (Requested by rniwa on #webkit).
894
895         * editing/CompositeEditCommand.cpp:
896         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
897         * editing/InsertListCommand.cpp:
898         (WebCore::InsertListCommand::doApply):
899
900 2010-12-01  Ryosuke Niwa  <rniwa@webkit.org>
901
902         Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
903
904         The crash was caused by moveParagraphWithClones' not copying the entire paragraph
905         when called by doApplyForSingleParagraph, which was induced by a bug in
906         cloneParagraphUnderNewElement which ended the cloning process early when the start node
907         and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
908         by calling traverseNextSibling(outerNode) instead of nextSibling().
909
910         Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
911
912         Tests: editing/execCommand/switch-multiple-list-items-crash.html
913                editing/execCommand/switch-multiple-list-items.html
914
915         * editing/CompositeEditCommand.cpp:
916         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
917         * editing/InsertListCommand.cpp:
918         (WebCore::InsertListCommand::doApply):
919
920 2010-12-01  Grace Kloba  <klobag@chromium.org>
921
922         Reviewed by Kenneth Russell.
923
924         [chromium] ContentLayerChromium shader should honor the platform Sk_x_SHIFT value instead of assuming BGRA color
925         https://bugs.webkit.org/show_bug.cgi?id=50189
926
927         * platform/graphics/chromium/ContentLayerChromium.cpp:
928         (WebCore::ContentLayerChromium::SharedValues::SharedValues):Use SK_B32_SHIFT to decide whether to use RGBA or BGRA shader for Skia port.
929
930 2010-12-01  Nico Weber  <thakis@chromium.org>
931
932         Reviewed by Dimitri Glazkov.
933
934         Fix clang warnings caused by -Wlogical-op-parentheses
935         https://bugs.webkit.org/show_bug.cgi?id=50324
936
937         * platform/graphics/mac/ComplexTextController.cpp:
938         (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
939
940 2010-12-01  Martin Robinson  <mrobinson@igalia.com>
941
942         Build fix for GTK+.
943
944         * platform/gtk/PopupMenuGtk.cpp:
945         (WebCore::PopupMenuGtk::typeAheadFind): Uncomment mistakenly commented line.
946
947 2010-12-01  Apelete Seketeli  <apelete@seketeli.org> and Martin Robinson  <mrobinson@igalia.com>
948
949         Reviewed by Xan Lopez.
950
951         [Gtk] Open menulists should support typeahead find
952         https://bugs.webkit.org/show_bug.cgi?id=27443
953
954         Added typeahead find support for open GTK+ menulists.
955
956         Test: platform/gtk/fast/forms/menulist-typeahead-find.html
957
958         * platform/gtk/PopupMenuGtk.cpp:
959         (WebCore::PopupMenuGtk::PopupMenuGtk): Initialize new members.
960         (WebCore::PopupMenuGtk::show): Track currently selected menu item
961         via a signal handler.
962         (WebCore::PopupMenuGtk::typeAheadFind): Added.
963         (WebCore::PopupMenuGtk::menuUnmapped): Reset typeahead find state
964         when menu is unmapped.
965         (WebCore::PopupMenuGtk::resetTypeAheadFindState): Added.
966         (WebCore::PopupMenuGtk::selectItemCallback): Added.
967         (WebCore::PopupMenuGtk::keyPressEventCallback): Added.
968         * platform/gtk/PopupMenuGtk.h: Added new members to track typeahead
969         find state.
970
971 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
972
973         Reviewed by Xan Lopez.
974
975         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedNumber
976         https://bugs.webkit.org/show_bug.cgi?id=50323
977
978         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_NUMBER / DEFINE_ANIMATED_NUMBER.
979         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
980
981         No functional changes, thus no new tests.
982
983         * svg/SVGAnimatedNumber.h:
984         * svg/SVGComponentTransferFunctionElement.cpp:
985         * svg/SVGComponentTransferFunctionElement.h:
986         * svg/SVGFECompositeElement.cpp:
987         * svg/SVGFECompositeElement.h:
988         * svg/SVGFEConvolveMatrixElement.cpp:
989         * svg/SVGFEConvolveMatrixElement.h:
990         * svg/SVGFEDiffuseLightingElement.cpp:
991         * svg/SVGFEDiffuseLightingElement.h:
992         * svg/SVGFEDisplacementMapElement.cpp:
993         * svg/SVGFEDisplacementMapElement.h:
994         * svg/SVGFEGaussianBlurElement.cpp:
995         * svg/SVGFEGaussianBlurElement.h:
996         * svg/SVGFELightElement.cpp:
997         * svg/SVGFELightElement.h:
998         * svg/SVGFEMorphologyElement.cpp:
999         * svg/SVGFEMorphologyElement.h:
1000         * svg/SVGFEOffsetElement.cpp:
1001         * svg/SVGFEOffsetElement.h:
1002         * svg/SVGFESpecularLightingElement.cpp:
1003         * svg/SVGFESpecularLightingElement.h:
1004         * svg/SVGFETurbulenceElement.cpp:
1005         * svg/SVGFETurbulenceElement.h:
1006         * svg/SVGPathElement.cpp:
1007         * svg/SVGPathElement.h:
1008         * svg/SVGStopElement.cpp:
1009         * svg/SVGStopElement.h:
1010         (WebCore::SVGStopElement::isGradientStop):
1011
1012 2010-12-01  Martin Robinson  <mrobinson@igalia.com>
1013
1014         Reviewed by Xan Lopez.
1015
1016         Sliders are not transformed after r50188
1017         https://bugs.webkit.org/show_bug.cgi?id=50317
1018
1019         Need to call updateLayerTransform during slider layout, as sliders
1020         may be transformed.
1021
1022         No new tests. This patch should make fast/forms/slider-transformed.html
1023         pass on the GTK+ bots.
1024
1025         * rendering/RenderSlider.cpp:
1026         (WebCore::RenderSlider::layout): Call updateLayerTransform here.
1027
1028 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
1029
1030         Reviewed by Yury Semikhatsky.
1031
1032         Web Inspector: do not make helpScreen.css lazily loaded.
1033         https://bugs.webkit.org/show_bug.cgi?id=50304
1034
1035         * inspector/front-end/HelpScreen.js:
1036         (WebInspector.HelpScreen):
1037         (WebInspector.HelpScreen.prototype._onBlur):
1038         * inspector/front-end/inspector.html:
1039
1040 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
1041
1042         Reviewed by Xan Lopez.
1043
1044         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLengthList/SVGNumberList/SVGTransformList
1045         https://bugs.webkit.org/show_bug.cgi?id=50322
1046
1047         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(LENGTH|NUMBER|TRANSFORM)_LIST / DEFINE_ANIMATED_(LENGTH|NUMBER|TRANSFORM).
1048         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
1049
1050         No functional changes, thus no new tests.
1051
1052         * svg/SVGAnimatedLengthList.h:
1053         * svg/SVGAnimatedNumberList.h:
1054         * svg/SVGAnimatedTransformList.h:
1055         * svg/SVGComponentTransferFunctionElement.cpp:
1056         * svg/SVGComponentTransferFunctionElement.h:
1057         * svg/SVGFEColorMatrixElement.cpp:
1058         * svg/SVGFEColorMatrixElement.h:
1059         * svg/SVGFEConvolveMatrixElement.cpp:
1060         * svg/SVGFEConvolveMatrixElement.h:
1061         * svg/SVGGradientElement.cpp:
1062         * svg/SVGGradientElement.h:
1063         (WebCore::SVGGradientElement::needsPendingResourceHandling):
1064         * svg/SVGPatternElement.cpp:
1065         * svg/SVGPatternElement.h:
1066         * svg/SVGPolygonElement.cpp:
1067         * svg/SVGPolylineElement.cpp:
1068         * svg/SVGStyledTransformableElement.cpp:
1069         * svg/SVGStyledTransformableElement.h:
1070         * svg/SVGTextElement.cpp:
1071         (WebCore::SVGTextElement::SVGTextElement):
1072         * svg/SVGTextElement.h:
1073         (WebCore::SVGTextElement::localCoordinateSpaceTransform):
1074         * svg/SVGTextPositioningElement.cpp:
1075         * svg/SVGTextPositioningElement.h:
1076         * svg/properties/SVGAnimatedPropertyMacros.h:
1077
1078 2010-12-01  Alexander Pavlov  <apavlov@chromium.org>
1079
1080         Reviewed by Yury Semikhatsky.
1081
1082         Web Inspector: name-only property appears in style declaration but not in the Styles pane
1083         https://bugs.webkit.org/show_bug.cgi?id=49663
1084
1085         Check that at least one property has been parsed from the user input.
1086
1087         * inspector/InspectorStyleSheet.cpp:
1088         (WebCore::InspectorStyle::setPropertyText):
1089
1090 2010-12-01  Andrey Kosyakov  <caseq@chromium.org>
1091
1092         Reviewed by Pavel Feldman.
1093
1094         Web Inspector: disable cookies tab in network resource view by default, enable for chromium
1095         https://bugs.webkit.org/show_bug.cgi?id=50249
1096
1097         * inspector/front-end/NetworkItemView.js:
1098         (WebInspector.NetworkItemView):
1099         (WebInspector.NetworkItemView.prototype.resize):
1100         * inspector/front-end/Settings.js:
1101
1102 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
1103
1104         Reviewed by Xan Lopez.
1105
1106         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLength
1107         https://bugs.webkit.org/show_bug.cgi?id=50316
1108
1109         Introduce DECLARE_ANIMATED_LENGTH / DEFINE_ANIMATED_LENGTH, splitting up the original DECLARE_ANIMATED_PROPERTY_NEW macro
1110         in a part that goes in the .cpp file and another that remains in the header. This avoids having to include SVGNames.h
1111         in all SVG*Element files.
1112
1113         No functional changes, thus no new tests.
1114
1115         * svg/SVGAnimatedLength.h:
1116         * svg/SVGCircleElement.cpp:
1117         * svg/SVGCircleElement.h:
1118         (WebCore::SVGCircleElement::isValid):
1119         * svg/SVGCursorElement.cpp:
1120         * svg/SVGCursorElement.h:
1121         (WebCore::SVGCursorElement::isValid):
1122         * svg/SVGEllipseElement.cpp:
1123         * svg/SVGEllipseElement.h:
1124         (WebCore::SVGEllipseElement::isValid):
1125         * svg/SVGFilterElement.cpp:
1126         * svg/SVGFilterElement.h:
1127         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1128         * svg/SVGFilterPrimitiveStandardAttributes.h:
1129         * svg/SVGForeignObjectElement.cpp:
1130         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
1131         * svg/SVGForeignObjectElement.h:
1132         (WebCore::SVGForeignObjectElement::isValid):
1133         * svg/SVGImageElement.cpp:
1134         * svg/SVGImageElement.h:
1135         (WebCore::SVGImageElement::isValid):
1136         * svg/SVGLineElement.cpp:
1137         * svg/SVGLineElement.h:
1138         (WebCore::SVGLineElement::isValid):
1139         (WebCore::SVGLineElement::supportsMarkers):
1140         * svg/SVGLinearGradientElement.cpp:
1141         * svg/SVGLinearGradientElement.h:
1142         * svg/SVGMarkerElement.cpp:
1143         (WebCore::SVGMarkerElement::SVGMarkerElement):
1144         * svg/SVGMarkerElement.h:
1145         * svg/SVGMaskElement.cpp:
1146         * svg/SVGMaskElement.h:
1147         (WebCore::SVGMaskElement::isValid):
1148         (WebCore::SVGMaskElement::needsPendingResourceHandling):
1149         * svg/SVGPatternElement.cpp:
1150         * svg/SVGPatternElement.h:
1151         (WebCore::SVGPatternElement::isValid):
1152         (WebCore::SVGPatternElement::needsPendingResourceHandling):
1153         * svg/SVGRadialGradientElement.cpp:
1154         * svg/SVGRadialGradientElement.h:
1155         * svg/SVGRectElement.cpp:
1156         * svg/SVGRectElement.h:
1157         (WebCore::SVGRectElement::isValid):
1158         * svg/SVGSVGElement.cpp:
1159         (WebCore::SVGSVGElement::SVGSVGElement):
1160         * svg/SVGSVGElement.h:
1161         (WebCore::SVGSVGElement::isValid):
1162         (WebCore::SVGSVGElement::setContainerSize):
1163         (WebCore::SVGSVGElement::containerSize):
1164         (WebCore::SVGSVGElement::hasSetContainerSize):
1165         (WebCore::SVGSVGElement::currentTranslate):
1166         (WebCore::SVGSVGElement::timeContainer):
1167         (WebCore::SVGSVGElement::isSVG):
1168         (WebCore::SVGSVGElement::rendererIsNeeded):
1169         * svg/SVGTextContentElement.cpp:
1170         * svg/SVGTextContentElement.h:
1171         (WebCore::SVGTextContentElement::isValid):
1172         (WebCore::SVGTextContentElement::isTextContent):
1173         * svg/SVGTextPathElement.cpp:
1174         * svg/SVGTextPathElement.h:
1175         * svg/SVGTextPositioningElement.h:
1176         * svg/SVGUseElement.cpp:
1177         * svg/SVGUseElement.h:
1178         (WebCore::SVGUseElement::isValid):
1179         (WebCore::SVGUseElement::setUpdatesBlocked):
1180         (WebCore::SVGUseElement::isPendingResource):
1181         * svg/properties/SVGAnimatedPropertyMacros.h:
1182
1183 2010-12-01  Anton D'Auria  <adauria@apple.com>
1184
1185         Reviewed by Kevin Decker.
1186
1187         Deny access to local and session storage in private browsing mode.
1188         https://bugs.webkit.org/show_bug.cgi?id=49329
1189
1190         * storage/Storage.cpp:
1191         (WebCore::Storage::length):
1192         (WebCore::Storage::key):
1193         (WebCore::Storage::getItem):
1194         (WebCore::Storage::contains):
1195
1196 2010-12-01  Philippe Normand  <pnormand@igalia.com>
1197
1198         Reviewed by Martin Robinson.
1199
1200         Volume control not correctly initialized
1201         https://bugs.webkit.org/show_bug.cgi?id=36299
1202
1203         Replaced the mute/volume Timers with g_timeouts which are (for
1204         now, at least) more reliable than Timers for one-shot-fire-now
1205         actions.
1206
1207         Test: media/video-volume.html
1208
1209         * platform/graphics/MediaPlayer.cpp:
1210         (WebCore::MediaPlayer::~MediaPlayer): Reset the raw pointers to 0
1211         when destructing the player.
1212         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1213         (WebCore::mediaPlayerPrivateVolumeChangeTimeoutCallback):
1214         (WebCore::mediaPlayerPrivateMuteChangeTimeoutCallback):
1215         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
1216         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange):
1217         (WebCore::MediaPlayerPrivateGStreamer::volumeChanged):
1218         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfMute):
1219         (WebCore::MediaPlayerPrivateGStreamer::muteChanged):
1220         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Set
1221         playbin2 volume/mute base on MediaPlayer related values.
1222         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1223
1224 2010-12-01  Patrick Gansterer  <paroga@webkit.org>
1225
1226         Reviewed by Andreas Kling.
1227
1228         Cleanup main CMakeLists.txt after r72664, r72672 and r72667
1229         https://bugs.webkit.org/show_bug.cgi?id=50232
1230
1231         * CMakeLists.txt: Removed obsolete dependencies.
1232
1233 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
1234
1235         Reviewed by Dirk Schulze.
1236
1237         Cleanup SVGPropertyTraits
1238         https://bugs.webkit.org/show_bug.cgi?id=50229
1239
1240         Move all template specializations for non-POD types (eg. SVGLength, SVGLengthList, etc.) from SVGPropertyTraits
1241         into the right SVG* classes, to avoid having to include a dozen SVG*.h files in SVGPropertyTraits.h, which is
1242         included by all DOM/JS/V8 binding files and SVGElement.h.
1243
1244         No new functionality, thus no new tests.
1245
1246         * GNUmakefile.am:
1247         * WebCore.gypi:
1248         * WebCore.pro:
1249         * WebCore.xcodeproj/project.pbxproj:
1250         * bindings/scripts/CodeGenerator.pm:
1251         * bindings/scripts/CodeGeneratorObjC.pm:
1252         * bindings/scripts/CodeGeneratorV8.pm:
1253         * svg/SVGAngle.h:
1254         * svg/SVGLength.h:
1255         * svg/SVGLengthList.h:
1256         * svg/SVGMarkerElement.h:
1257         * svg/SVGNumberList.h:
1258         * svg/SVGPatternElement.h:
1259         * svg/SVGPointList.h:
1260         * svg/SVGPreserveAspectRatio.h:
1261         * svg/SVGRect.h: Added.
1262         * svg/SVGSVGElement.h:
1263         * svg/SVGStringList.h:
1264         * svg/SVGSymbolElement.h:
1265         * svg/SVGTransformList.h:
1266         * svg/SVGViewElement.h:
1267         * svg/SVGViewSpec.h:
1268         * svg/properties/SVGListProperty.h:
1269         * svg/properties/SVGPropertyTraits.h:
1270         * svg/properties/SVGTransformListPropertyTearOff.h:
1271
1272 2010-11-30  Kent Tamura  <tkent@chromium.org>
1273
1274         Reviewed by Darin Adler.
1275
1276         Refactor HTMLInputElement: Move a part of HTMLInputElement::
1277         defaultEventHandler() to InputTypes
1278         https://bugs.webkit.org/show_bug.cgi?id=50097
1279
1280         Move all of keyboard-related event handling to InputType.
1281
1282         No new tests because this should not change any behavior.
1283
1284         * html/BaseButtonInputType.cpp:
1285         (WebCore::BaseButtonInputType::handleKeydownEvent):
1286         (WebCore::BaseButtonInputType::handleKeypressEvent):
1287         (WebCore::BaseButtonInputType::handleKeyupEvent):
1288         * html/BaseButtonInputType.h:
1289         * html/BaseCheckableInputType.cpp:
1290         (WebCore::BaseCheckableInputType::handleKeydownEvent):
1291         (WebCore::BaseCheckableInputType::handleKeypressEvent):
1292         * html/BaseCheckableInputType.h:
1293         * html/CheckboxInputType.cpp:
1294         (WebCore::CheckboxInputType::handleKeyupEvent):
1295         * html/CheckboxInputType.h:
1296         * html/HTMLInputElement.cpp:
1297         (WebCore::HTMLInputElement::defaultEventHandler):
1298          We remove !implicitSubmission check for callBaseClassEarly because
1299          implicitSubmission can not be true for keydown event and keypress
1300          event at this point.
1301         * html/InputType.cpp:
1302         (WebCore::InputType::shouldSubmitImplicitly):
1303          Returns true for a keypress event with "\r". Note that we don't overload
1304          this function for BUTTON, FILE, IMAGE, RESET, and SUBMIT because a
1305          keypress event with "\r" for these types returns from HTMLInputElement::defaultEventHandler()
1306          before implicit submission checking.
1307         (WebCore::InputType::handleKeypressEvent):
1308         (WebCore::InputType::handleKeyupEvent):
1309         * html/InputType.h:
1310         * html/RadioInputType.cpp:
1311         (WebCore::RadioInputType::handleKeydownEvent):
1312         (WebCore::RadioInputType::handleKeyupEvent):
1313         * html/RadioInputType.h:
1314         * html/TextFieldInputType.cpp:
1315         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
1316         * html/TextFieldInputType.h:
1317
1318 >>>>>>> .r73054
1319 2010-11-30  Patrick Gansterer  <paroga@webkit.org>
1320
1321         Reviewed by Andreas Kling.
1322
1323         Move CSS generator logic into main CMakeLists.txt file
1324         https://bugs.webkit.org/show_bug.cgi?id=50230
1325
1326         * CMakeLists.txt:
1327
1328 2010-11-30  Ojan Vafai  <ojan@chromium.org>
1329
1330         Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test
1331         https://bugs.webkit.org/show_bug.cgi?id=50288
1332
1333         2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
1334         Reviewed by Darin Adler.
1335         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
1336         https://bugs.webkit.org/show_bug.cgi?id=50182
1337         A display-isolated URL can only be displayed (e.g., put in an iframe,
1338         hyperlinked to) by documents from that scheme. In a sense, this is a
1339         generalization of some of the protections we give file URLs, but
1340         instead of lumping them all together into one "local" bucket, this
1341         patch creates a separate bucket for each scheme.
1342         For a while, I tried using a separate bucket for each origin. That
1343         would have played nicely with what Blob URLs are trying to do, but some
1344         "chrome" URL pages rely on being able to display other chrome URL
1345         pages, even in different origins. For example, the New Tab Page shows
1346         thumbnails from the "thumbnail" host.
1347         This patch also removes a bunch of unused code. I've also propagated
1348         the "deprecated" status of deprecatedCanDisplay to
1349         deprecatedShouldTreatURLAsLocal because that method has no other
1350         callers and is really asking for uppercase/lowercase bugs. I dream of
1351         someday removing these functions.
1352         page/SecurityOrigin.cpp:
1353         (WebCore::SecurityOrigin::canDisplay):
1354         (WebCore::SecurityOrigin::deprecatedCanDisplay):
1355         platform/SchemeRegistry.cpp:
1356         (WebCore::displayIsolatedURLSchemes):
1357         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
1358         (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
1359         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
1360         (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
1361         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
1362         platform/SchemeRegistry.h:
1363         2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
1364         Reviewed by Darin Adler.
1365         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
1366          https://bugs.webkit.org/show_bug.cgi?id=50182
1367         This patch adds a Chromium API for registering schemes as
1368         display-isolated. In a subsequent patch, I'll change the "chrome"
1369         scheme in Chrome to be display isolated instead of local. That will
1370         prevent file URLs from linking to chrome URLs.
1371         public/WebSecurityPolicy.h:
1372         src/WebSecurityPolicy.cpp:
1373         (WebKit::WebSecurityPolicy::registerURLSchemeAsDisplayIsolated):
1374
1375         * page/SecurityOrigin.cpp:
1376         (WebCore::SecurityOrigin::canDisplay):
1377         (WebCore::SecurityOrigin::deprecatedCanDisplay):
1378         * platform/SchemeRegistry.cpp:
1379         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
1380         (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
1381         (WebCore::SchemeRegistry::localURLSchemes):
1382         (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
1383         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
1384         * platform/SchemeRegistry.h:
1385
1386 2010-11-30  Chris Fleizach  <cfleizach@apple.com>
1387
1388         Reviewed by Beth Dakin.
1389
1390         WebKit duplicates AXValue and AXDescription on abbr
1391         https://bugs.webkit.org/show_bug.cgi?id=50260
1392
1393         stringValue() and accessibilityDescription() were returning the same value for static text with
1394         an aria-label. Static text elements should not have an accessibility description, they
1395         should only have a stringValue.
1396
1397         Test: platform/mac/accessibility/static-text-with-aria-label.html
1398
1399         * accessibility/AccessibilityRenderObject.cpp:
1400         (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
1401         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1402         (WebCore::AccessibilityRenderObject::text):
1403         * accessibility/AccessibilityRenderObject.h:
1404
1405 2010-11-30  Ryosuke Niwa  <rniwa@webkit.org>
1406
1407         Reviewed by Darin Adler.
1408
1409         [HTML5] Rename member variables of HTMLScriptElement
1410         https://bugs.webkit.org/show_bug.cgi?id=49705
1411
1412         Renamed m_wasCreatedByParser to m_wasInsertedByParser, m_requested to m_isExternalScript,
1413         m_isEvaluated to m_wasAlreadyStarted, and m_firedLoad to m_haveFiredLoad.
1414
1415         Also made ScriptElement's haveFiredLoadEvent and removed HTMLScriptElement's haveFiredLoadEvent.
1416         This effectively adds the same function to SVGScriptElement, which isn't currently used anywhere.
1417
1418         No new tests are added since this is a refactoring.
1419
1420         * dom/ScriptElement.cpp:
1421         (WebCore::ScriptElement::ScriptElement):
1422         (WebCore::ScriptElement::insertedIntoDocument):
1423         (WebCore::ScriptElement::childrenChanged):
1424         (WebCore::ScriptElement::finishParsingChildren):
1425         (WebCore::ScriptElement::requestScript):
1426         (WebCore::ScriptElement::evaluateScript):
1427         (WebCore::ScriptElement::executeScript):
1428         (WebCore::ScriptElement::ignoresLoadRequest):
1429         * dom/ScriptElement.h:
1430         (WebCore::ScriptElement::haveFiredLoadEvent):
1431         (WebCore::ScriptElement::setHaveFiredLoadEvent):
1432         (WebCore::ScriptElement::wasInsertedByParser):
1433         (WebCore::ScriptElement::wasAlreadyStarted):
1434         * html/HTMLScriptElement.cpp:
1435         (WebCore::HTMLScriptElement::HTMLScriptElement):
1436         (WebCore::HTMLScriptElement::create):
1437         (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren):
1438         * html/HTMLScriptElement.h:
1439         * svg/SVGScriptElement.cpp:
1440         (WebCore::SVGScriptElement::SVGScriptElement):
1441         (WebCore::SVGScriptElement::create):
1442         (WebCore::SVGScriptElement::svgAttributeChanged):
1443         (WebCore::SVGScriptElement::insertedIntoDocument):
1444         (WebCore::SVGScriptElement::dispatchLoadEvent):
1445         (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren):
1446         * svg/SVGScriptElement.h:
1447
1448 2010-11-30  Darin Adler  <darin@apple.com>
1449
1450         Rolled back most of the FileReaderLoader changes to fix 32-bit builds.
1451
1452         * fileapi/FileReaderLoader.cpp: Changed types back to unsigned from unsigned long long
1453         * fileapi/FileReaderLoader.h: Ditto.
1454
1455 2010-11-30  Dan Bernstein  <mitz@apple.com>
1456
1457         Reviewed by Darin Adler.
1458
1459         Text search should treat all matches as word-start matches when the target begins with a separator character
1460         https://bugs.webkit.org/show_bug.cgi?id=50302
1461
1462         * editing/TextIterator.cpp:
1463         (WebCore::SearchBuffer::SearchBuffer): Disable the AtWordStarts option if it was specified and
1464         the target string begins with one of the "separator" characters.
1465
1466 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
1467
1468         Reviewed by Dave Hyatt.
1469
1470         Web Inspector: [CRASH] on "Revert to this revision" of style with import.
1471         https://bugs.webkit.org/show_bug.cgi?id=50256
1472
1473         Rolled back one line from http://trac.webkit.org/changeset/36904 as agreed with
1474         David.
1475
1476         * css/CSSImportRule.cpp:
1477         (WebCore::CSSImportRule::insertedIntoParent):
1478
1479 2010-11-30  Martin Robinson  <mrobinson@igalia.com>
1480
1481         Reviewed by Xan Lopez.
1482
1483         [GTK] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
1484         https://bugs.webkit.org/show_bug.cgi?id=50283
1485
1486         Adjust the mask rectangle for Cairo shadows, so that the origin
1487         is not affected by the scale of the transformation matrix.
1488
1489         * platform/graphics/ContextShadow.h: Make this Qt-only member global.
1490         * platform/graphics/cairo/ContextShadowCairo.cpp:
1491         (WebCore::ContextShadow::beginShadowLayer): Save the original layer area.
1492         (WebCore::ContextShadow::endShadowLayer): If the target context has a scale
1493         transform, make sure not to scale the blur distance when blitting the shadow.
1494
1495 2010-11-30  Darin Adler  <darin@apple.com>
1496
1497         Reviewed by Alexey Proskuryakov.
1498
1499         Make ProgressEvent 64-bit instead of 32-bit
1500         https://bugs.webkit.org/show_bug.cgi?id=50289
1501
1502         * dom/ProgressEvent.cpp:
1503         (WebCore::ProgressEvent::ProgressEvent): Changed arguments to unsigned long long.
1504         (WebCore::ProgressEvent::initProgressEvent): Ditto.
1505
1506         * dom/ProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
1507         Made isProgressEvent override private.
1508
1509         * dom/ProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
1510
1511         * fileapi/FileReader.cpp: Removed unneeded includes.
1512         Used static on const so we'd get an error if the same constant was in a header.
1513         (WebCore::FileReader::didReceiveData): Removed unneeded WTF prefix.
1514         (WebCore::FileReader::fireEvent): Got rid of local variables that would narrow
1515         bytes loaded and total bytes to 32-bit.
1516
1517         * fileapi/FileReaderLoader.cpp:
1518         (WebCore::FileReaderLoader::didReceiveResponse): Restructured code a bit and
1519         added comments. Also added handling for when ArrayBuffer::create returns 0.
1520         (WebCore::FileReaderLoader::didReceiveData): Fixed handling of case where more
1521         data arrives than is expected so it won't overrun the buffer. Also broke an
1522         assertion into two and improved a comment.
1523
1524         * fileapi/FileReaderLoader.h: Changed bytesLoaded and totalBytes to unsigned long long.
1525
1526         * fileapi/FileWriter.cpp:
1527         (WebCore::FileWriter::fireEvent): Removed narrowing casts in call to
1528         ProgressEvent::create.
1529
1530         * html/canvas/ArrayBuffer.cpp:
1531         (WebCore::ArrayBuffer::tryAllocate): Added a comment because the code here seems wrong.
1532
1533         * xml/XMLHttpRequest.cpp:
1534         (WebCore::XMLHttpRequest::didSendData): Removed narrowing casts in call to
1535         XMLHttpRequestProgressEvent::create.
1536         (WebCore::XMLHttpRequest::didReceiveData): Removed narrowing casts in call to
1537         dispatchProgressEvent.
1538
1539         * xml/XMLHttpRequestProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
1540         Made isXMLHttpRequestProgressEvent override private.
1541
1542         * xml/XMLHttpRequestProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
1543
1544         * xml/XMLHttpRequestProgressEventThrottle.cpp:
1545         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Changed types to
1546         unsigned long long.
1547
1548         * xml/XMLHttpRequestProgressEventThrottle.h: Changed types to unsigned long long.
1549
1550 2010-11-30  Yael Aharon  <yael.aharon@nokia.com>
1551
1552         Reviewed by Darin Adler.
1553
1554         Progress and meter elements should take a form in their constructor like any other form control.
1555         https://bugs.webkit.org/show_bug.cgi?id=50195
1556
1557         Tests: fast/dom/HTMLMeterElement/meter-element-form.html
1558                fast/dom/HTMLProgressElement/progress-element-form.html
1559
1560         * html/HTMLMeterElement.cpp:
1561         (WebCore::HTMLMeterElement::HTMLMeterElement):
1562         (WebCore::HTMLMeterElement::create):
1563         * html/HTMLMeterElement.h:
1564         * html/HTMLProgressElement.h:
1565         * html/HTMLTagNames.in:
1566
1567 2010-11-30  Tony Chang  <tony@chromium.org>
1568
1569         Reviewed by Adam Barth.
1570
1571         [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn
1572         https://bugs.webkit.org/show_bug.cgi?id=49036
1573
1574         No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html
1575
1576         In http://codereview.chromium.org/11574, the forked chromium test
1577         plugin changed how it testGetIntIdentifier to work around a change
1578         caused by a silverlight specific plugin fix:
1579         http://codereview.chromium.org/11569/diff/1/2
1580
1581         It's not clear to me that this change is needed anymore since
1582         silverlight has had multiple releases, testing without this patch
1583         works on a test windows build, and safari win seems to run silverlight
1584         without this either.  Since there's no test for this behavior, I'm
1585         rolling it out so we can match the upstream test.
1586
1587         * bindings/v8/V8NPUtils.cpp:
1588         (WebCore::convertV8ObjectToNPVariant):
1589
1590 2010-11-30  Chris Guillory  <chris.guillory@google.com>
1591
1592         Reviewed by Chris Fleizach.
1593
1594         Computing style on a stale node while sending pending accessibility notification.
1595         https://bugs.webkit.org/show_bug.cgi?id=50162
1596
1597         Retain node pointer members of AccessibilityImageMapLink.
1598
1599         Test: accessibility/image-map-title-causes-crash.html
1600
1601         * accessibility/AccessibilityImageMapLink.cpp:
1602         (WebCore::AccessibilityImageMapLink::parentObject):
1603         (WebCore::AccessibilityImageMapLink::anchorElement):
1604         (WebCore::AccessibilityImageMapLink::url):
1605         (WebCore::AccessibilityImageMapLink::elementRect):
1606         * accessibility/AccessibilityImageMapLink.h:
1607         (WebCore::AccessibilityImageMapLink::areaElement):
1608         (WebCore::AccessibilityImageMapLink::mapElement):
1609         (WebCore::AccessibilityImageMapLink::node):
1610         * dom/Document.cpp:
1611         (WebCore::Document::clearAXObjectCache):
1612
1613 2010-11-30  James Robinson  <jamesr@chromium.org>
1614
1615         Reviewed by Tony Chang.
1616
1617         Build fix - add parens in foo || bar && baz to make gcc happy
1618         https://bugs.webkit.org/show_bug.cgi?id=50276
1619
1620         gcc 4.4 warns that statements of the form "foo || bar && baz".  It wants
1621         parens around the "bar && baz" part to make it clear which way the logical
1622         operators bind.
1623
1624         * editing/TextIterator.cpp:
1625         (WebCore::SearchBuffer::search):
1626
1627 2010-11-30  Daniel Bates  <dbates@rim.com>
1628
1629         Reviewed by David Hyatt.
1630
1631         Focused <area> should use CSS properties of <area> instead of associated <img>
1632         https://bugs.webkit.org/show_bug.cgi?id=49888
1633
1634         Fixes an issue where the CSS properties of an <area> were not used when
1635         the <area> was focused.
1636
1637         Currently, when focusing an <area> (say by pressing option + tab in Mac
1638         Safari) we use the CSS style information for the <img> associated with
1639         the <area>. Instead, we should use the CSS style information for the
1640         focused <area>. In particular, this will make the us honor the outline-
1641         color property of a focused <area> when drawing its focus ring.
1642
1643         Tests: fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map.html
1644                fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map.html
1645                fast/images/imagemap-focus-ring-outline-color.html
1646
1647         * rendering/RenderImage.cpp:
1648         (WebCore::RenderImage::paintFocusRing): Use the style information of
1649         the focused <area> when drawing the focus ring for it.
1650
1651 2010-11-30  Tony Chang  <tony@chromium.org>
1652
1653         Reviewed by James Robinson.
1654
1655         [chromium] enable WebCore compiler warnings on Linux take 3
1656         https://bugs.webkit.org/show_bug.cgi?id=50258
1657
1658         * WebCore.gyp/WebCore.gyp:
1659
1660 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
1661
1662         Reviewed by Chris Fleizach.
1663
1664         [GTK] Implement ROLE_COMBO_BOX
1665         https://bugs.webkit.org/show_bug.cgi?id=25678
1666
1667         Implement the remaining bits for combo boxes.
1668
1669         This patch finishes the implementation, from the point of view of
1670         the Atk library, of those objects exposed to ATK as combo boxes,
1671         and their related elements (menus and menu items). It therefore
1672         implements the proper interfaces for each type of object related
1673         to combo boxes (AtkSelection for the combo box, AtkText for every
1674         menu item and AtkAction for the combo box, the menu and the menu
1675         items), takes care of emitting the proper signals when focus or a
1676         given a selection changes and adds a new unit test to check all
1677         this new stuff.
1678
1679         Make possible to ask an AccessibleMenuListOption for a sensible
1680         string representation, so far only available through the private
1681         and MSAA related method nameForMSAA. Just moved the implementation
1682         of that method to an overriden version of stringValue(), which is
1683         platform independent, and called that from nameForMSAA().
1684
1685         * accessibility/AccessibilityMenuListOption.h:
1686         * accessibility/AccessibilityMenuListOption.cpp:
1687         (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to
1688         stringValue(), which holds from now on that used to be here.
1689         (WebCore::AccessibilityMenuListOption::stringValue): New, override
1690         of AccessibilityObject::stringValue() to return a proper string.
1691
1692         Emit the missing signals when a selection is made.
1693
1694         * accessibility/gtk/AXObjectCacheAtk.cpp:
1695         (WebCore::AXObjectCache::postPlatformNotification): Emit the usual
1696         'focus' signals when a selection is made over the combo box.
1697
1698         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1699         (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED
1700         Atk states are added to the state set when needed.
1701         (listObjectForSelection): New, returns the proper list object (the
1702         one holding the list of available options as its children) for an
1703         specific AtkObject implementing AtkSelection. This is needed
1704         because sometimes the selectable options are not directly children
1705         of the AtkSelection object (i.e. a combo box has a 'menu' object
1706         as its only child of it, holding the list of options as children).
1707         (optionFromList): Use listObjectForSelection() to get the actual
1708         object holding the list of children as the available options.
1709         (optionFromSelection): Add support for combo boxes.
1710         (webkit_accessible_selection_add_selection): Ditto.
1711         (webkit_accessible_selection_clear_selection): Ditto.
1712         (webkit_accessible_selection_get_selection_count): Ditto.
1713         (webkit_accessible_selection_is_child_selected): Ditto.
1714         (webkit_accessible_selection_remove_selection): Ditto.
1715         (webkit_accessible_text_get_text): Makes sure stringValue() is
1716         considered to get the result substring when it was already
1717         considered when checking the maximum text length for the object.
1718         (getInterfaceMaskFromObject): Make sure the AtkSelection interface
1719         is implemented for the combo boxes, that the AtkText is
1720         implemented for the menu items and that the AtkAction interface is
1721         now implemented for every object (WebCore will decide what to do).
1722
1723         Avoid a segfault crash when using this from unit tests.
1724
1725         * platform/gtk/PopupMenuGtk.cpp:
1726         (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow
1727         before calling gdk_window_get_origin() over it.
1728
1729 2010-11-30  Andreas Kling  <kling@webkit.org>
1730
1731         Reviewed by Tor Arne Vestbø.
1732
1733         [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform
1734
1735         Stash the transform in a const reference (QPainter::transform() returns one)
1736         instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect.
1737
1738         * platform/graphics/qt/GraphicsContextQt.cpp:
1739         (WebCore::GraphicsContext::fillPath):
1740         (WebCore::GraphicsContext::strokePath):
1741         (WebCore::GraphicsContext::fillRect):
1742
1743 2010-11-30  Vangelis Kokkevis  <vangelis@chromium.org>
1744
1745         Reviewed by Simon Fraser.
1746
1747         Provide more fine grained control to ports over when to turn on 
1748         accelerated compositing.
1749         https://bugs.webkit.org/show_bug.cgi?id=49998
1750
1751         The RenderLayerCompositor now checks with the chrome client whether
1752         3d transforms, video, plugins, canvas and animation require
1753         switching over to the composited path. Layers that overlap composited
1754         content will still turn into composited layers regardless of the
1755         setting.
1756
1757         * css/MediaQueryEvaluator.cpp:
1758         (WebCore::transform_3dMediaFeatureEval):
1759         * page/ChromeClient.h:
1760         (WebCore::ChromeClient::allowedCompositingTriggers):
1761         * rendering/RenderLayer.cpp:
1762         (WebCore::RenderLayer::canRender3DTransforms):
1763         (WebCore::RenderLayer::updateTransform):
1764         (WebCore::RenderLayer::currentTransform):
1765         * rendering/RenderLayer.h:
1766         * rendering/RenderLayerBacking.cpp:
1767         (WebCore::RenderLayerBacking::updateLayerTransform):
1768         * rendering/RenderLayerCompositor.cpp:
1769         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
1770         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
1771         (WebCore::RenderLayerCompositor::canRender3DTransforms):
1772         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1773         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
1774         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
1775         (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
1776         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
1777         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
1778         * rendering/RenderLayerCompositor.h:
1779
1780 2010-11-30  Xan Lopez  <xlopez@igalia.com>
1781
1782         Reviewed by Martin Robinson.
1783
1784         [GTK] Plug leak in SoupCache
1785         https://bugs.webkit.org/show_bug.cgi?id=50142
1786
1787         Free the cache file contents when we don't need them anymore.
1788
1789         * platform/network/soup/cache/webkit/soup-cache.c:
1790         (webkit_soup_cache_load):
1791
1792 2010-11-30  Andras Becsi  <abecsi@webkit.org>
1793
1794         Reviewed by Csaba Osztrogonác.
1795
1796         [Qt][V8] Make QtWebKit with V8 build on Linux.
1797         https://bugs.webkit.org/show_bug.cgi?id=50244
1798
1799         No new tests needed.
1800
1801         * WebCore.pri: add missing idl file
1802         * WebCore.pro: enable Linux build
1803         * bindings/scripts/CodeGeneratorV8.pm: add missing headers
1804         * bindings/v8/ScriptControllerQt.cpp: fix instantiation
1805         (WebCore::ScriptController::qtScriptEngine):
1806         * bindings/v8/V8GCController.cpp: fix guard
1807         (WebCore::V8GCController::checkMemoryUsage):
1808         * inspector/CodeGeneratorInspector.pm: add missing header
1809         * loader/ResourceLoadScheduler.cpp: ditto
1810         * loader/cache/MemoryCache.cpp: ditto
1811         * loader/loader.cpp: ditto
1812
1813 2010-11-30  David Hyatt  <hyatt@apple.com>
1814
1815         Reviewed by Simon Fraser.
1816         
1817         https://bugs.webkit.org/show_bug.cgi?id=50183
1818         
1819         Code got commented out by accident during render tree refactoring last year.  Put the code back in, since
1820         it hurts performance to have that line commented out.
1821
1822         In order to put this code back in, I had to fix some bugs with preferred width computations and
1823         overflow: scroll.  Make the pref widths computation create the scrollbar if it doesn't exist yet.
1824
1825         Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values.  Otherwise
1826         the scrollbar inflates the width beyond the fixed size that was specified.
1827         
1828         For table cells, there is an additional wrinkle.  Make sure not to include the scrollbar size as part of the minimum
1829         intrinsic width so that we don't incorrectly grow.
1830
1831         * rendering/RenderBlock.cpp:
1832         (WebCore::RenderBlock::layoutPositionedObjects):
1833         (WebCore::RenderBlock::computePreferredLogicalWidths):
1834         * rendering/RenderFlexibleBox.cpp:
1835         (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
1836
1837 2010-11-30  Vitaly Repeshko  <vitalyr@chromium.org>
1838
1839         Unreviewed.
1840
1841         Attempt to fix windows debug chromium build.
1842
1843         * html/TimeInputType.cpp: Added include providing isfinite.
1844
1845 2010-11-30  Darin Adler  <darin@apple.com>
1846
1847         Reviewed by Jon Honeycutt.
1848
1849         DOM binding code generator scripts import unused File::stat Perl module
1850         https://bugs.webkit.org/show_bug.cgi?id=50250
1851
1852         * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat".
1853         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
1854         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
1855         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
1856
1857 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
1858
1859         Reviewed by Yury Semikhatsky.
1860
1861         Web Inspector: implement "Revert to this revision" in resources panel.
1862         https://bugs.webkit.org/show_bug.cgi?id=50107
1863
1864         * inspector/Inspector.idl:
1865         * inspector/InspectorCSSAgent.cpp:
1866         (WebCore::InspectorCSSAgent::setStyleSheetText2):
1867         * inspector/InspectorCSSAgent.h:
1868         * inspector/InspectorStyleSheet.cpp:
1869         (WebCore::InspectorStyleSheet::reparseStyleSheet):
1870         * inspector/front-end/CSSStyleModel.js:
1871         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
1872         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
1873         (WebInspector.CSSStyleModel.prototype._onRevert):
1874         * inspector/front-end/Resource.js:
1875         (WebInspector.Resource.prototype.get contentTimestamp):
1876         (WebInspector.Resource.prototype.setInitialContent):
1877         (WebInspector.Resource.prototype.isLocallyModified):
1878         (WebInspector.Resource.prototype.setContent.else.finished):
1879         (WebInspector.Resource.prototype.setContent):
1880         (WebInspector.Resource.prototype.revertToThis.callback):
1881         (WebInspector.Resource.prototype.revertToThis):
1882         (WebInspector.Resource.prototype.get baseRevision):
1883         (WebInspector.Resource.prototype._innerRequestContent):
1884         * inspector/front-end/ResourcesPanel.js:
1885         (WebInspector.ResourcesPanel.prototype._showResourceView):
1886         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
1887         (WebInspector.ResourceRevisionTreeElement):
1888         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
1889         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
1890         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
1891         * inspector/front-end/ScriptsPanel.js:
1892         (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
1893         (WebInspector.ScriptsPanel.prototype.editScriptSource):
1894         * inspector/front-end/SourceView.js:
1895         (WebInspector.SourceView.prototype._editLine):
1896         (WebInspector.SourceView.prototype._editLineComplete):
1897         (WebInspector.SourceView.prototype._revertEditLine):
1898
1899 2010-11-30  Adam Roben  <aroben@apple.com>
1900
1901         Clean up WebCore.vcproj's bindings filter
1902
1903         I added files that we compile (via an all-in-one file) but weren't in
1904         the .vcproj, removed files that no longer exist, and added the scripts
1905         we use.
1906
1907         Fixes <http://webkit.org/b/50248> WebCore.vcproj's bindings filter is
1908         out-of-date
1909
1910         Reviewed by Darin Adler.
1911
1912         * WebCore.vcproj/WebCore.vcproj:
1913
1914 2010-11-30  Adam Roben  <aroben@apple.com>
1915
1916         Move JSIDB* files to the DerivedSources filter
1917
1918         This correctly reflects their location on disk. (They were formerly
1919         listed under bindings/js.)
1920
1921         * WebCore.vcproj/WebCore.vcproj:
1922
1923 2010-11-30  Xiaomei Ji  <xji@chromium.org>
1924
1925         Reviewed by David Hyatt.
1926
1927         Remove clampNegativeToZero in adjustScrollPositionWithinRange.
1928         https://bugs.webkit.org/show_bug.cgi?id=50203
1929
1930         * platform/ScrollView.cpp:
1931         (WebCore::ScrollView::adjustScrollPositionWithinRange):
1932
1933 2010-11-30  Adam Roben  <aroben@apple.com>
1934
1935         Remove duplicate files from WebCore.vcproj
1936
1937         Rubber-stamped by Steve Falkenburg.
1938
1939         * WebCore.vcproj/WebCore.vcproj:
1940
1941 2010-11-30  Adam Roben  <aroben@apple.com>
1942
1943         Let VS do its thang with WebCore.vcproj
1944
1945         I just removed and readded AnimationBase.cpp.
1946
1947         Rubber-stamped by Steve Falkenburg.
1948
1949         * WebCore.vcproj/WebCore.vcproj:
1950
1951 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
1952
1953         Reviewed by Chris Fleizach.
1954
1955         ASSERT failing for combo boxes when selection changes
1956         https://bugs.webkit.org/show_bug.cgi?id=50062
1957
1958         Don't call listBoxOnChange for elements using menu lists.
1959
1960         Test: fast/forms/select-option-accesskey-crash.html
1961
1962         * dom/SelectElement.cpp:
1963         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
1964         to decide whether to call menuListOnChange() or listBoxOnChange()
1965         instead of always calling listBoxOnChange().
1966
1967 2010-11-30  Andreas Kling  <kling@webkit.org>
1968
1969         Reviewed by Dirk Schulze.
1970
1971         GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument.
1972         https://bugs.webkit.org/show_bug.cgi?id=48516
1973
1974         No new tests, this is refactoring only.
1975
1976         fillPath() -> fillPath(const Path&)
1977         strokePath() -> strokePath(const Path&)
1978         clipPath(WindRule) -> clipPath(const Path&, WindRule)
1979
1980         drawPath() was only used by CG, so made it PLATFORM(CG) specific.
1981
1982         The Qt, CG and Cairo implementations are best-effort.
1983         For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods.
1984
1985         * WebCore.exp.in:
1986         * html/canvas/CanvasRenderingContext2D.cpp:
1987         (WebCore::CanvasRenderingContext2D::fill):
1988         (WebCore::CanvasRenderingContext2D::stroke):
1989         * inspector/InspectorController.cpp:
1990         (WebCore::drawOutlinedQuad):
1991         * mathml/RenderMathMLRoot.cpp:
1992         (WebCore::RenderMathMLRoot::paint):
1993         * mathml/RenderMathMLSquareRoot.cpp:
1994         (WebCore::RenderMathMLSquareRoot::paint):
1995         * platform/graphics/GraphicsContext.h:
1996         * platform/graphics/GraphicsContextPrivate.h:
1997         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1998         (WebCore::GraphicsContext::fillPath):
1999         (WebCore::GraphicsContext::strokePath):
2000         (WebCore::GraphicsContext::clipPath):
2001         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
2002         * platform/graphics/cg/GraphicsContextCG.cpp:
2003         (WebCore::GraphicsContext::drawEllipse):
2004         (WebCore::addConvexPolygonToPath):
2005         (WebCore::GraphicsContext::drawConvexPolygon):
2006         (WebCore::GraphicsContext::clipConvexPolygon):
2007         (WebCore::GraphicsContext::drawPath):
2008         (WebCore::GraphicsContext::fillPath):
2009         (WebCore::GraphicsContext::strokePath):
2010         (WebCore::GraphicsContext::fillRoundedRect):
2011         (WebCore::GraphicsContext::clipPath):
2012         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
2013         (WebCore::GraphicsContext::strokePath):
2014         (WebCore::GraphicsContext::fillPath):
2015         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
2016         (WebCore::GraphicsContext::fillPath):
2017         (WebCore::GraphicsContext::strokePath):
2018         (WebCore::GraphicsContext::clipPath):
2019         * platform/graphics/qt/GraphicsContextQt.cpp:
2020         (WebCore::GraphicsContext::restorePlatformState):
2021         (WebCore::GraphicsContext::fillPath):
2022         (WebCore::GraphicsContext::strokePath):
2023         (WebCore::GraphicsContext::clipPath):
2024         (WebCore::GraphicsContext::strokeRect):
2025         (WebCore::GraphicsContext::translate):
2026         (WebCore::GraphicsContext::rotate):
2027         (WebCore::GraphicsContext::scale):
2028         (WebCore::GraphicsContext::concatCTM):
2029         * platform/graphics/skia/GraphicsContextSkia.cpp:
2030         (WebCore::GraphicsContext::clipPath):
2031         (WebCore::GraphicsContext::fillPath):
2032         (WebCore::GraphicsContext::strokePath):
2033         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2034         (WebCore::GraphicsContext::fillPath):
2035         (WebCore::GraphicsContext::strokePath):
2036         (WebCore::GraphicsContext::clipPath):
2037         * platform/graphics/wx/GraphicsContextWx.cpp:
2038         (WebCore::GraphicsContext::clipPath):
2039         (WebCore::GraphicsContext::fillPath):
2040         (WebCore::GraphicsContext::strokePath):
2041         * rendering/RenderBoxModelObject.cpp:
2042         (WebCore::RenderBoxModelObject::paintBorder):
2043         (WebCore::RenderBoxModelObject::paintBoxShadow):
2044         * rendering/RenderEmbeddedObject.cpp:
2045         (WebCore::RenderEmbeddedObject::paintReplaced):
2046         * rendering/RenderObject.cpp:
2047         (WebCore::RenderObject::drawBoxSideFromPath):
2048         * rendering/RenderSVGResource.h:
2049         (WebCore::RenderSVGResource::postApplyResource):
2050         * rendering/RenderSVGResourceClipper.cpp:
2051         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
2052         * rendering/RenderSVGResourceFilter.cpp:
2053         (WebCore::RenderSVGResourceFilter::postApplyResource):
2054         * rendering/RenderSVGResourceFilter.h:
2055         * rendering/RenderSVGResourceGradient.cpp:
2056         (WebCore::RenderSVGResourceGradient::applyResource):
2057         * rendering/RenderSVGResourceGradient.h:
2058         * rendering/RenderSVGResourcePattern.cpp:
2059         (WebCore::RenderSVGResourcePattern::postApplyResource):
2060         * rendering/RenderSVGResourcePattern.h:
2061         * rendering/RenderSVGResourceSolidColor.cpp:
2062         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
2063         * rendering/RenderSVGResourceSolidColor.h:
2064         * rendering/SVGRenderSupport.cpp:
2065         (WebCore::SVGRenderSupport::finishRenderSVGContent):
2066         * rendering/svg/RenderSVGPath.cpp:
2067         (WebCore::RenderSVGPath::fillAndStrokePath):
2068         * rendering/svg/SVGInlineTextBox.cpp:
2069         (WebCore::SVGInlineTextBox::releasePaintingResource):
2070         (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting):
2071         (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
2072         * rendering/svg/SVGInlineTextBox.h:
2073         * svg/SVGFont.cpp:
2074         (WebCore::Font::drawTextUsingSVGFont):
2075
2076 2010-11-30  Alexey Proskuryakov  <ap@apple.com>
2077
2078         Reviewed by Darin Adler and Geoff Garen.
2079
2080         https://bugs.webkit.org/show_bug.cgi?id=44152
2081         <rdar://problem/8324423> CSSOM should match DOM in discarding wrapper-less parents.
2082
2083         We have existing behaviors where parent objects in detached subtrees are not preserved:
2084         - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making
2085         its children parentNode attribute null;
2086         - relationship between a <style> or <link> node and its stylesheet is immediately broken
2087         when the node is removed from document (in this case, regardless of wrapper existence).
2088
2089         Both match Firefox. For consistency, CSSOM should do the same. In fact, it already partially
2090         does - CSSRule.parentRule gets zeroed out when the parent rule is destroyed.
2091
2092         Tests: fast/dom/StyleSheet/detached-parent-rule-without-wrapper.html
2093                fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html
2094
2095         * css/StyleSheet.cpp: (WebCore::StyleSheet::~StyleSheet): Clear out child rule parent.
2096
2097         * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::insertedIntoDocument): Keep
2098         the new assertion from firing. This function was adding a rule to style sheet, without
2099         telling the rule about it.
2100
2101 2010-11-30  Steve Falkenburg  <sfalken@apple.com>
2102
2103         Reviewed by Adam Roben.
2104
2105         All projects on Windows should use cmd files for build events
2106         https://bugs.webkit.org/show_bug.cgi?id=50213
2107
2108         * WebCore.vcproj/QTMovieWinCommon.vsprops:
2109         * WebCore.vcproj/QTMovieWinPostBuild.cmd: Added.
2110         * WebCore.vcproj/QTMovieWinPreBuild.cmd: Added.
2111         * WebCore.vcproj/WebCoreCommon.vsprops:
2112         * WebCore.vcproj/WebCorePostBuild.cmd: Added.
2113         * WebCore.vcproj/WebCorePreBuild.cmd: Added.
2114
2115 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
2116
2117         Unreviewed, rolling out r72914.
2118         http://trac.webkit.org/changeset/72914
2119         https://bugs.webkit.org/show_bug.cgi?id=50241
2120
2121         "pfeldman has a revision management patch both for CSS and JS"
2122         (Requested by apavlov on #webkit).
2123
2124         * English.lproj/localizedStrings.js:
2125         * inspector/InspectorStyleSheet.cpp:
2126         (WebCore::InspectorStyleSheet::reparseStyleSheet):
2127         * inspector/front-end/CSSStyleModel.js:
2128         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2129         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2130         (WebInspector.CSSStyleSheet.prototype.getText):
2131         (WebInspector.CSSStyleSheet.prototype.setText):
2132         * inspector/front-end/ResourcesPanel.js:
2133         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
2134         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
2135
2136 2010-11-25  Satish Sampath  <satish@chromium.org>
2137
2138         Reviewed by Kent Tamura.
2139
2140         Fix rendering of speech button when setting the attribute dynamically.
2141         https://bugs.webkit.org/show_bug.cgi?id=50077
2142
2143         * html/HTMLInputElement.cpp:
2144         (WebCore::HTMLInputElement::parseMappedAttribute):
2145         * rendering/RenderTextControlSingleLine.cpp:
2146         (WebCore::RenderTextControlSingleLine::speechAttributeChanged):
2147         * rendering/RenderTextControlSingleLine.h:
2148
2149 2010-11-30  Alexander Pavlov  <apavlov@chromium.org>
2150
2151         Reviewed by Yury Semikhatsky.
2152
2153         Web Inspector: Enable switching between revisions of stylesheets
2154         https://bugs.webkit.org/show_bug.cgi?id=50227
2155
2156         Drive-by fix: styleSheetChanged() call needed after a stylesheet reparsing on setStyleSheetText2().
2157
2158         * English.lproj/localizedStrings.js:
2159         * inspector/InspectorStyleSheet.cpp:
2160         (WebCore::InspectorStyleSheet::reparseStyleSheet):
2161         * inspector/front-end/CSSStyleModel.js:
2162         (WebInspector.CSSStyleModel.prototype.setStyleSheetText):
2163         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2164         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2165         (WebInspector.CSSStyleSheet.prototype.getText):
2166         * inspector/front-end/ResourcesPanel.js:
2167         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
2168         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
2169         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
2170
2171 2010-11-30  John Knottenbelt  <jknotten@chromium.org>
2172
2173         Reviewed by David Levin.
2174
2175         V8 binding for DOMTimeStamp should be Number, not Date
2176         https://bugs.webkit.org/show_bug.cgi?id=49963
2177
2178         Test: fast/dom/domtimestamp-is-number.html
2179
2180         * bindings/scripts/CodeGeneratorV8.pm:
2181
2182 2010-11-30  Renata Hodovan  <reni@inf.u-szeged.hu>
2183
2184         Reviewed by Andreas Kling.
2185
2186         [Qt] Leak with GraphicsContext::takeOwnershipOfPlatformContext()
2187         https://bugs.webkit.org/show_bug.cgi?id=49916
2188
2189         Change the order of calling QPainter::device() and QPainter::end(), so device() will return with a valid device.
2190         No new test is needed.
2191
2192         * platform/graphics/qt/GraphicsContextQt.cpp:
2193         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2194
2195 2010-11-30  Patrick Gansterer  <paroga@webkit.org>
2196
2197         Reviewed by Andreas Kling.
2198
2199         Move generator logic into main CMakeLists.txt file
2200         https://bugs.webkit.org/show_bug.cgi?id=49885
2201
2202         Also make the generator calls more portable.
2203
2204         * CMakeLists.txt:
2205
2206 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
2207
2208         Unreviewed, rolling out r72902.
2209         http://trac.webkit.org/changeset/72902
2210         https://bugs.webkit.org/show_bug.cgi?id=50062
2211
2212         This change is causing layout test failures on the Tests bots
2213         for the mac platform.
2214
2215         * dom/SelectElement.cpp:
2216         (WebCore::SelectElement::accessKeySetSelectedIndex):
2217
2218 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
2219
2220         Unreviewed, rolling out r72764.
2221         http://trac.webkit.org/changeset/72764
2222         https://bugs.webkit.org/show_bug.cgi?id=50215
2223
2224         This change is causing assertion failures on the debug bots.
2225         (Requested by mrobinson on #webkit).
2226
2227         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2228         (webkit_accessible_get_name):
2229         (webkit_accessible_detach):
2230
2231 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
2232
2233         Reviewed by Yury Semikhatsky.
2234
2235         Web Inspector: make copy(node) work in console.
2236         https://bugs.webkit.org/show_bug.cgi?id=50180
2237
2238         * inspector/front-end/InjectedScript.js:
2239         (injectedScriptConstructor.):
2240
2241 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
2242
2243         Reviewed by Darin Adler.
2244
2245         ASSERT failing for combo boxes when selection changes
2246         https://bugs.webkit.org/show_bug.cgi?id=50062
2247
2248         Don't call listBoxOnChange for elements using menu lists.
2249
2250         Test: accessibility/select-menulist-crash.html
2251
2252         * dom/SelectElement.cpp:
2253         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
2254         to decide whether to call menuListOnChange() or listBoxOnChange()
2255         instead of always calling listBoxOnChange().
2256
2257 2010-11-30  Helder Correia  <helder@sencha.com>
2258
2259         Reviewed by Kenneth Rohde Christiansen.
2260
2261         [Qt] Path stroke shadow has incorrect behavior when using ctx.scale(x,y)
2262         https://bugs.webkit.org/show_bug.cgi?id=50198
2263
2264         Handle the special case when scaling is used and translate the shadow
2265         offset accordingly. The correct behavior is ensured in ContextShadow
2266         already, the issue only happens when using a non-blur shadow.
2267
2268         Test: fast/canvas/canvas-scale-strokePath-shadow.html
2269
2270         * platform/graphics/qt/GraphicsContextQt.cpp:
2271         (WebCore::GraphicsContext::strokePath):
2272
2273 2010-11-30  Helder Correia  <helder@sencha.com>
2274
2275         Reviewed by Kenneth Rohde Christiansen.
2276
2277         [Qt] Path filling should keep shadow offset after context scaling
2278         https://bugs.webkit.org/show_bug.cgi?id=50194
2279
2280         Handle the special case when scaling is used and translate the shadow
2281         offset accordingly. The correct behavior is ensured in ContextShadow
2282         already, the issue only happens when using a non-blur shadow.
2283
2284         Test: fast/canvas/canvas-scale-fillPath-shadow.html
2285
2286         * platform/graphics/qt/GraphicsContextQt.cpp:
2287         (WebCore::GraphicsContext::fillPath):
2288
2289 2010-11-30  Yury Semikhatsky  <yurys@chromium.org>
2290
2291         Reviewed by Pavel Feldman.
2292
2293         Web Inspector: make ScriptCallStack and ScriptArguments reference counted
2294         https://bugs.webkit.org/show_bug.cgi?id=50156
2295
2296         No new tests. This refactoring is covered with existing inspector tests.
2297
2298         * bindings/js/JSConsoleCustom.cpp:
2299         (WebCore::JSConsole::profile):
2300         (WebCore::JSConsole::profileEnd):
2301         * bindings/js/ScriptCallStackFactory.cpp:
2302         (WebCore::createScriptCallStack):
2303         (WebCore::createScriptArguments):
2304         * bindings/js/ScriptCallStackFactory.h:
2305         * bindings/scripts/CodeGeneratorJS.pm:
2306         * bindings/scripts/CodeGeneratorV8.pm:
2307         * bindings/scripts/test/JS/JSTestObj.cpp:
2308         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
2309         * bindings/scripts/test/V8/V8TestObj.cpp:
2310         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
2311         * bindings/v8/ScriptCallStackFactory.cpp:
2312         (WebCore::createScriptCallStack):
2313         (WebCore::createScriptArguments):
2314         * bindings/v8/ScriptCallStackFactory.h:
2315         * bindings/v8/V8ConsoleMessage.cpp:
2316         (WebCore::V8ConsoleMessage::handler):
2317         (WebCore::V8ConsoleMessage::dispatchNow):
2318         * bindings/v8/V8ConsoleMessage.h:
2319         * bindings/v8/custom/V8ConsoleCustom.cpp:
2320         (WebCore::V8Console::traceCallback):
2321         (WebCore::V8Console::assertCallback):
2322         (WebCore::V8Console::profileCallback):
2323         (WebCore::V8Console::profileEndCallback):
2324         * inspector/ConsoleMessage.cpp:
2325         (WebCore::ConsoleMessage::ConsoleMessage):
2326         * inspector/ConsoleMessage.h:
2327         * inspector/InspectorController.cpp:
2328         (WebCore::InspectorController::addMessageToConsole):
2329         (WebCore::InspectorController::startGroup):
2330         * inspector/InspectorController.h:
2331         * inspector/ScriptArguments.cpp:
2332         (WebCore::ScriptArguments::create):
2333         * inspector/ScriptArguments.h:
2334         * inspector/ScriptCallFrame.h:
2335         * inspector/ScriptCallStack.cpp:
2336         (WebCore::ScriptCallStack::create):
2337         (WebCore::ScriptCallStack::at):
2338         (WebCore::ScriptCallStack::size):
2339         * inspector/ScriptCallStack.h:
2340         * page/Console.cpp:
2341         (WebCore::Console::addMessage):
2342         (WebCore::Console::debug):
2343         (WebCore::Console::error):
2344         (WebCore::Console::info):
2345         (WebCore::Console::log):
2346         (WebCore::Console::dir):
2347         (WebCore::Console::dirxml):
2348         (WebCore::Console::trace):
2349         (WebCore::Console::assertCondition):
2350         (WebCore::Console::count):
2351         (WebCore::Console::markTimeline):
2352         (WebCore::Console::profile):
2353         (WebCore::Console::profileEnd):
2354         (WebCore::Console::timeEnd):
2355         (WebCore::Console::group):
2356         (WebCore::Console::groupCollapsed):
2357         (WebCore::Console::warn):
2358         * page/Console.h:
2359
2360 2010-11-29  Dan Bernstein  <mitz@apple.com>
2361
2362         Build fix for non-ICU platforms after r72887.
2363
2364         * editing/TextIterator.cpp:
2365         (WebCore::SearchBuffer::prependContext):
2366
2367 2010-11-29  Dan Bernstein  <mitz@apple.com>
2368
2369         Reviewed by Darin Adler.
2370
2371         WebCore part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
2372         https://bugs.webkit.org/show_bug.cgi?id=50038
2373
2374         Test: editing/text-iterator/findString.html
2375
2376         * GNUmakefile.am: Added FindOptions.h.
2377         * WebCore.exp.in: Export the new methods that take FindOptions.
2378         * WebCore.gypi: Added FindOptions.h.
2379         * WebCore.pro: Added FindOptions.h and TextBoundaries.{cpp,h}.
2380         * WebCore.vcproj/WebCore.vcproj: Added FindOptions.h.
2381         * WebCore.xcodeproj/project.pbxproj: Added FindOptions.h and TextBoundaries.cpp.
2382         * editing/Editor.cpp:
2383         (WebCore::Editor::firstVisibleRange): Changed to use FindOptions.
2384         (WebCore::Editor::lastVisibleRange): Ditto.
2385         (WebCore::Editor::nextVisibleRange): Ditto.
2386         (WebCore::Editor::findString): Ditto.
2387         (WebCore::Editor::countMatchesForText): Ditto.
2388         * editing/Editor.h: Added a version of findString() that takes FindOptions. Changed
2389         countMatchesForText() to take FindOptions. Made nextVisibleRange() private and changed it
2390         and firstVisibleRange() and lastVisibleRange() to take FindOptions.
2391         * editing/FindOptions.h: Added.
2392         * editing/TextIterator.cpp:
2393         Augmented SearchBuffer with an optional prefix, which is not searched, but provides context
2394         for determining word boundaries.
2395         (WebCore::isSeparator): Added. Identifies a class of characters used to determine where
2396         “words” are embedded in a word.
2397         (WebCore::SearchBuffer::SearchBuffer): Changed to take FindOptions. Added initialization of
2398         m_options, m_prefixLength and m_needsMoreContext.
2399         (WebCore::SearchBuffer::append): Adjust m_prefixLength as part of the prefix gets pushed out
2400         of the buffer.
2401         (WebCore::SearchBuffer::needsMoreContext): Added.
2402         (WebCore::SearchBuffer::prependContext): Added.
2403         (WebCore::SearchBuffer::isWordStartMatch): Added.
2404         (WebCore::SearchBuffer::search): Changed to account for the context prefix. When searching
2405         only for word prefix matches, maintains enough context before a tentative match when moving
2406         it to the beginning of the buffer. Reject matches that are not at word starts if requested.
2407         Adjust m_prefixLength when pushing characters out of the buffer.
2408         (WebCore::findPlainText): Changed to work with FindOptions. Feed the search buffer with context
2409         if and as long as it requires more of it.
2410         * editing/TextIterator.h: Added a version of findPlainText() that takes FindOptions.
2411         * editing/visible_units.cpp: Moved {end,start}Of{First,Last}WordBoundary to TextBoundaries.cpp.
2412         * page/Page.cpp:
2413         (WebCore::Page::findString): Changed to work with FindOptions.
2414         (WebCore::Page::markAllMatchesForText): Ditto.
2415         * page/Page.h: Added FindOptions-based findString() and markAllMatchesForText().
2416         * platform/text/TextBoundaries.cpp:
2417         (WebCore::endOfFirstWordBoundaryContext): Moved here from visible_units.cpp.
2418         (WebCore::startOfLastWordBoundaryContext): Ditto.
2419         * platform/text/TextBoundaries.h:
2420
2421 2010-11-29  Dai Mikurube  <dmikurube@google.com>
2422
2423         Reviewed by Kent Tamura.
2424
2425         when empty, clicking "down" on outer-spin-button returns "max value"
2426         https://bugs.webkit.org/show_bug.cgi?id=45491
2427
2428         Modified stepping-up/down from renderer
2429         - to clamp steps,
2430         - to handle empty values (described below), and
2431         - to apply them for range type inputs.
2432
2433         Stepping-up/down for empty values are handled "the empty as 0."
2434         For example :
2435         * If 0 is in-range, and matches to step value
2436           "down" -> -step
2437           "up" -> +step
2438           If -step or +step is out of range, new value should be 0.
2439
2440         * If 0 is smaller than the minimum value
2441           "down" -> the minimum value
2442           "up" -> the minimum value
2443
2444         * If 0 is larger than the maximum value
2445           "down" -> the maximum value
2446           "up" -> the maximum value
2447
2448         * If 0 is in-range, but not matched to step value
2449           "down" -> smaler matched value nearest to 0.
2450             e.g. <input type=number min=-100 step=3> -> -1
2451           "up" -> larger matched value nearest to 0.
2452             e.g. <input type=number min=-100 step=3> -> 2
2453
2454         As for date/datetime-local/month/time/week types, the empty is assumed as "current local date/time".
2455         As for datetime type, the empty is assumed as "current date/time in UTC".
2456
2457         As for range input types, changed stepping from renderer to use stepUpFromRenderer().
2458         It was calculated with stepUp() from RangeInputType::handleKeydownEvent().
2459
2460         Test: fast/forms/input-stepup-stepdown-from-renderer.html
2461
2462         * html/BaseDateAndTimeInputType.cpp:
2463         (WebCore::BaseDateAndTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
2464         * html/BaseDateAndTimeInputType.h:
2465         * html/DateTimeInputType.cpp:
2466         (WebCore::DateTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current UTC time
2467         * html/DateTimeInputType.h:
2468         * html/HTMLInputElement.cpp:
2469         (WebCore::HTMLInputElement::stepUpFromRenderer): Modified it to clamp steps, support empty values and support range type inputs
2470         * html/HTMLInputElement.h:
2471         (WebCore::HTMLInputElement::isRangeControl):
2472         * html/InputType.cpp:
2473         (WebCore::InputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns 0
2474         * html/InputType.h:
2475         * html/MonthInputType.cpp:
2476         (WebCore::MonthInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local month
2477         * html/MonthInputType.h:
2478         * html/RangeInputType.cpp:
2479         (WebCore::RangeInputType::handleKeydownEvent): Added comments and modified it to use stepUpFromRenderer()
2480         * html/TimeInputType.cpp:
2481         (WebCore::TimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
2482         * html/TimeInputType.h:
2483         * manual-tests/input-type-datetime-default-value.html: Added manual tests for default values of date/time inputs since they are "the current local/UTC time", which cannot be tested automatically.
2484
2485 2010-11-29  Adam Barth  <abarth@webkit.org>
2486
2487         Reviewed by Darin Adler.
2488
2489         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
2490         https://bugs.webkit.org/show_bug.cgi?id=50182
2491
2492         A display-isolated URL can only be displayed (e.g., put in an iframe,
2493         hyperlinked to) by documents from that scheme.  In a sense, this is a
2494         generalization of some of the protections we give file URLs, but
2495         instead of lumping them all together into one "local" bucket, this
2496         patch creates a separate bucket for each scheme.
2497
2498         For a while, I tried using a separate bucket for each origin.  That
2499         would have played nicely with what Blob URLs are trying to do, but some
2500         "chrome" URL pages rely on being able to display other chrome URL
2501         pages, even in different origins.  For example, the New Tab Page shows
2502         thumbnails from the "thumbnail" host.
2503
2504         This patch also removes a bunch of unused code.  I've also propagated
2505         the "deprecated" status of deprecatedCanDisplay to
2506         deprecatedShouldTreatURLAsLocal because that method has no other
2507         callers and is really asking for uppercase/lowercase bugs.  I dream of
2508         someday removing these functions.
2509
2510         * page/SecurityOrigin.cpp:
2511         (WebCore::SecurityOrigin::canDisplay):
2512         (WebCore::SecurityOrigin::deprecatedCanDisplay):
2513         * platform/SchemeRegistry.cpp:
2514         (WebCore::displayIsolatedURLSchemes):
2515         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
2516         (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
2517         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
2518         (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
2519         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
2520         * platform/SchemeRegistry.h:
2521
2522 2010-11-29  Sergio Villar Senin  <svillar@igalia.com>
2523
2524         Reviewed by Martin Robinson.
2525
2526         [GTK] Leaks in SoupCache code
2527         https://bugs.webkit.org/show_bug.cgi?id=50161
2528
2529         Fixes some memory leaks in SoupCache code.
2530
2531         * platform/network/soup/cache/soup-http-input-stream.c:
2532         (send_async_finished): Added a missing g_object_unref.
2533         * platform/network/soup/cache/webkit/soup-cache.c:
2534         (get_cacheability): Added soup_header_free_param_list.
2535         (webkit_soup_cache_entry_set_freshness): Ditto.
2536         (webkit_soup_cache_send_response): Ditto.
2537         (webkit_soup_cache_has_response): Ditto.
2538
2539 2010-11-29  Jian Li  <jianli@chromium.org>
2540
2541         Reviewed by David Levin.
2542
2543         Add send(ArrayBuffer) to XMLHttpRequest per XMLHttpRequest Level 2 spec
2544         https://bugs.webkit.org/show_bug.cgi?id=50199
2545
2546         Test: http/tests/xmlhttprequest/send-array-buffer.html
2547
2548         * bindings/js/JSXMLHttpRequestCustom.cpp:
2549         (WebCore::JSXMLHttpRequest::send):
2550         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2551         (WebCore::V8XMLHttpRequest::sendCallback):
2552         * xml/XMLHttpRequest.cpp:
2553         (WebCore::XMLHttpRequest::send):
2554         * xml/XMLHttpRequest.h:
2555
2556 2010-11-29  James Robinson  <jamesr@chromium.org>
2557
2558         [chromium] REGRESSION(72470): Crash in skia on some images
2559         https://bugs.webkit.org/show_bug.cgi?id=50201
2560
2561         Reverts r72470
2562
2563         * platform/graphics/skia/ImageSkia.cpp:
2564         (WebCore::computeResamplingMode):
2565         (WebCore::drawResampledBitmap):
2566
2567 2010-11-29  Dmitry Titov  <dimich@chromium.org>
2568
2569         Reviewed by David Levin.
2570
2571         Crash when iframe transfers from one page to another and has child frames.
2572         https://bugs.webkit.org/show_bug.cgi?id=50200
2573
2574         * page/Frame.cpp:
2575         (WebCore::Frame::transferChildFrameToNewDocument):
2576         avoid overriding 'didTransfer' which has the result of previous check.
2577
2578 2010-11-19  Ryosuke Niwa  <rniwa@webkit.org>
2579
2580         Reviewed by David Hyatt.
2581
2582         up arrow doesn't work with RTL text with word wrapping
2583         https://bugs.webkit.org/show_bug.cgi?id=41987
2584
2585         The bug was caused by positionForPoint's not returning the correct affinity when the x coordiate
2586         is to the left of the first line, and startOfLine's incorrectly moving position to the previous candidate.
2587
2588         Fixed the bug by returning upstream VisiblePosition in positionForPoint if the first inline text box's offset
2589         is greater than 0.  Also removed the code added by http://trac.webkit.org/changeset/23608 since this changeset
2590         does not add any test, and the problem described in the changelog reproduces regardless of the code's presence.
2591
2592         Tests: editing/selection/click-left-of-rtl-wrapping-text.html
2593                editing/selection/modify-up-on-rtl-wrapping-text.html
2594
2595         * editing/visible_units.cpp:
2596         (WebCore::startOfLine):
2597         * rendering/RenderText.cpp:
2598         (WebCore::RenderText::positionForPoint):
2599
2600 2010-11-29  Ilya Sherman  <isherman@chromium.org>
2601
2602         Reviewed by Kent Tamura.
2603
2604         Ensure that option elements are rendered with normal font weight on Windows/Linux
2605         https://bugs.webkit.org/show_bug.cgi?id=50055
2606
2607         * WebCore.gyp/WebCore.gyp: include themeChromiumSkia.css
2608         * css/themeChromiumSkia.css: Added.
2609         (option): font-weight: normal !important;
2610         * rendering/RenderThemeChromiumSkia.cpp:
2611         (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): include themeChromiumSkia.css
2612
2613 2010-11-29  Brent Fulgham  <bfulgham@webkit.org>
2614
2615         Unreviewed build fix.
2616
2617         * WebCore.vcproj/WebCoreCairo.vsprops: Provide missing WIN_CAIRO
2618           definition so that proper targets are build.
2619         * platform/graphics/win/cairo/FontPlatformData.h:
2620         (WebCore::FontPlatformData::orientation): Add missing implementation.
2621
2622 2010-11-29  Chris Rogers  <crogers@google.com>
2623
2624         Reviewed by Kenneth Russell.
2625
2626         Switch web audio code to use FloatPoint3D instead of Vector3
2627         https://bugs.webkit.org/show_bug.cgi?id=50186
2628
2629         No new tests since audio API is not yet implemented.
2630
2631         * platform/audio/Cone.cpp:
2632         (WebCore::ConeEffect::gain):
2633         * platform/audio/Cone.h:
2634         * platform/graphics/FloatPoint3D.h:
2635         (WebCore::FloatPoint3D::isZero):
2636         (WebCore::operator*):
2637         (WebCore::FloatPoint3D::distanceTo):
2638         * webaudio/AudioListener.h:
2639         (WebCore::AudioListener::setPosition):
2640         (WebCore::AudioListener::position):
2641         (WebCore::AudioListener::setOrientation):
2642         (WebCore::AudioListener::orientation):
2643         (WebCore::AudioListener::setUpVector):
2644         (WebCore::AudioListener::upVector):
2645         (WebCore::AudioListener::setVelocity):
2646         (WebCore::AudioListener::velocity):
2647         * webaudio/AudioPannerNode.cpp:
2648         (WebCore::AudioPannerNode::AudioPannerNode):
2649         (WebCore::AudioPannerNode::getAzimuthElevation):
2650         (WebCore::AudioPannerNode::dopplerRate):
2651         (WebCore::AudioPannerNode::distanceConeGain):
2652         * webaudio/AudioPannerNode.h:
2653         (WebCore::AudioPannerNode::position):
2654         (WebCore::AudioPannerNode::setPosition):
2655         (WebCore::AudioPannerNode::orientation):
2656         (WebCore::AudioPannerNode::setOrientation):
2657         (WebCore::AudioPannerNode::velocity):
2658         (WebCore::AudioPannerNode::setVelocity):
2659
2660 2010-11-29  Xiaomei Ji  <xji@chromium.org>
2661
2662         Reviewed by David Hyatt.
2663
2664         Right-to-left pages should be scrollable to reveal left overflow.
2665         https://bugs.webkit.org/show_bug.cgi?id=23556
2666
2667         For RTL page, save left layout overflow and include it into the document
2668         size during layout. Use the left layout overflow when scroll and paint
2669         the page. Behavior on LTR page should be untouched since left layout 
2670         overflow is set as 0 for LTR page.
2671
2672         Tests: fast/dom/horizontal-scrollbar-in-rtl-doesnt-fire-onscroll.html
2673                fast/dom/horizontal-scrollbar-in-rtl.html
2674                fast/dom/horizontal-scrollbar-when-dir-change.html
2675                fast/dom/left-overflow-in-ltr.html
2676                fast/dom/right-overflow-in-rtl.html
2677
2678         * page/FrameView.cpp:
2679         (WebCore::FrameView::adjustViewSize): Save negative of left layout overflow as scroll X origin. And includes left layout overflow into document size.
2680         * page/mac/WebCoreFrameView.h: Add methods for setting and getting scroll X origin.
2681         * platform/ScrollView.cpp:
2682         (WebCore::ScrollView::ScrollView):
2683         (WebCore::ScrollView::maximumScrollPosition): Minus scroll X origin from maximum horizontal scroll position.
2684         (WebCore::ScrollView::minimumScrollPosition):
2685         (WebCore::ScrollView::adjustScrollPositionWithinRange):
2686         (WebCore::ScrollView::valueChanged):
2687         (WebCore::ScrollView::setScrollPosition):
2688         (WebCore::ScrollView::updateScrollbars):
2689         (WebCore::ScrollView::wheelEvent):
2690         * platform/ScrollView.h:
2691         * platform/mac/ScrollViewMac.mm:
2692         (WebCore::ScrollView::platformSetContentsSize):
2693         (WebCore::ScrollView::platformSetScrollPosition):
2694         (WebCore::ScrollView::platformSetScrollOriginX):
2695         * rendering/RenderBox.cpp:
2696         (WebCore::RenderBox::styleDidChange):
2697         (WebCore::RenderBox::paintRootBoxDecorations): Include left layout overflow into canvas size.
2698         * rendering/RenderView.cpp:
2699         (WebCore::RenderView::layout): Save left layout overflow.
2700         (WebCore::RenderView::docLeft):
2701         (WebCore::RenderView::docWidth): Include left layout overflow into doc width for RTL page.
2702         * rendering/RenderView.h:
2703
2704 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
2705
2706         Reviewed by Ojan Vafai.
2707
2708         bunch of pixel failures after http://trac.webkit.org/changeset/72839/
2709         https://bugs.webkit.org/show_bug.cgi?id=50188
2710         
2711         We need to call updateLayerTransform() for reflections, and
2712         table rows as well.
2713
2714         * rendering/RenderReplica.cpp:
2715         (WebCore::RenderReplica::layout):
2716         * rendering/RenderTableRow.cpp:
2717         (WebCore::RenderTableRow::layout):
2718         * rendering/RenderTableSection.cpp:
2719         (WebCore::RenderTableSection::layoutRows):
2720
2721 2010-11-29  Xiaomei Ji  <xji@chromium.org>
2722
2723         Reviewed by David Hyatt.
2724
2725         Fix tab overflow problem when alignment is not left.
2726         https://bugs.webkit.org/show_bug.cgi?id=25459
2727
2728         I checked WordPad in Windows, TextEdit in Mac, OpenOffice, and Google doc. 
2729         In all of them, (when the writing mode is horizontal) when the alignment is not
2730         left alignment, the length of tab is computed based on the tab's position
2731         relative to the left start of line, not based on the tab's position relative 
2732         to the left edge of the document.
2733
2734         WebKit should follow the same.
2735
2736         The m_xPos in each TextRun should be relative to the left start of the line, 
2737         not left start of its containing block (in right alignment and center alignment,
2738         left start of the line is not the same as left start of the containing block).
2739         So, when the text is drawn, the width of tab is consistent with the width 
2740         computed in RenderBlock::computeInlineDirectionPositionsForLine().
2741
2742         I did not test vertical writing mode, but I think the same rule should apply.
2743
2744         Test: fast/dom/tab-in-right-alignment.html
2745
2746         * platform/graphics/TextRun.h:
2747         * rendering/InlineTextBox.cpp:
2748         (WebCore::InlineTextBox::textPos):
2749         * rendering/InlineTextBox.h:
2750
2751 2010-11-29  Mikhail Naganov  <mnaganov@chromium.org>
2752
2753         Reviewed by Pavel Feldman.
2754
2755         WebInspector: Request JSON-serialized heap snapshot from JS engine.
2756         This simplifies heap snapshots interaction and API. Instead of
2757         having objects representing snapshot entities, the whole snapshot
2758         is transferred to WebInspector and parsed there.
2759
2760         https://bugs.webkit.org/show_bug.cgi?id=49974
2761
2762         * bindings/js/ScriptHeapSnapshot.h:
2763         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
2764         (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
2765         (WebCore::ScriptHeapSnapshot::writeJSON):
2766         (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
2767         * bindings/v8/ScriptHeapSnapshot.cpp:
2768         (WebCore::ScriptHeapSnapshot::writeJSON):
2769         * bindings/v8/ScriptHeapSnapshot.h:
2770         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
2771         * inspector/Inspector.idl:
2772         * inspector/InspectorProfilerAgent.cpp:
2773         (WebCore::InspectorProfilerAgent::getProfile):
2774         * inspector/front-end/HeapSnapshotView.js:
2775         (WebInspector.HeapSnapshotEdgesIterator):
2776         (WebInspector.HeapSnapshotEdgesIterator.prototype.get done):
2777         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement):
2778         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden):
2779         (WebInspector.HeapSnapshotEdgesIterator.prototype.get name):
2780         (WebInspector.HeapSnapshotEdgesIterator.prototype.next):
2781         (WebInspector.HeapSnapshotEdgesIterator.prototype.get node):
2782         (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex):
2783         (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex):
2784         (WebInspector.HeapSnapshotEdgesIterator.prototype._getType):
2785         (WebInspector.HeapSnapshotNodeWrapper):
2786         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges):
2787         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount):
2788         (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount):
2789         (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden):
2790         (WebInspector.HeapSnapshotNodeWrapper.prototype.get name):
2791         (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize):
2792         (WebInspector.HeapSnapshotNodeWrapper.prototype._getName):
2793         (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges):
2794         (WebInspector.HeapSnapshotNodeWrapper.prototype._getType):
2795         (WebInspector.HeapSnapshot):
2796         (WebInspector.HeapSnapshot.prototype._init):
2797         (WebInspector.HeapSnapshot.prototype.get rootEdges):
2798         (WebInspector.HeapSnapshotView.prototype.snapshotLoaded):
2799         (WebInspector.HeapSnapshotView.prototype._loadProfile.processLoadedSnapshot):
2800         (WebInspector.HeapSnapshotView.prototype._loadProfile):
2801         (WebInspector.HeapSnapshotView.prototype._convertSnapshot):
2802         (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers):
2803         (WebInspector.HeapSnapshotView.prototype._prepareProfile):
2804         (WebInspector.HeapSnapshotView.prototype._sortData):
2805         * inspector/front-end/ProfilesPanel.js:
2806         (WebInspector.ProfilesPanel):
2807         (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
2808         (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
2809         * inspector/front-end/inspector.js:
2810         (WebInspector.addHeapSnapshotChunk):
2811         (WebInspector.finishHeapSnapshot):
2812
2813 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
2814
2815         Reviewed by Dave Hyatt.
2816
2817         layer()->currentTransform() is stale when layout changes the box size
2818         https://bugs.webkit.org/show_bug.cgi?id=50175
2819         
2820         RenderLayer::updateTransform() is fairly expensive, so we
2821         have to avoid calling it from RenderBox::applyLayerTransformToRect()
2822         every time. This requires that we update the layer's transform
2823         during layout, instead of from updateLayerPositions() which is too late.
2824         
2825         So call updateLayerTransform() from the various layout methods
2826         on renderers that can be transformed, and remove it from 
2827         updateLayerPositions().
2828
2829         Test: fast/overflow/overflow-update-transform.html
2830
2831         * rendering/RenderBlock.cpp:
2832         (WebCore::RenderBlock::layoutBlock):
2833         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
2834         * rendering/RenderBox.cpp:
2835         (WebCore::RenderBox::applyLayerTransformToRect):
2836         (WebCore::RenderBox::updateLayerTransform):
2837         * rendering/RenderBox.h:
2838         * rendering/RenderEmbeddedObject.cpp:
2839         (WebCore::RenderEmbeddedObject::layout):
2840         * rendering/RenderFlexibleBox.cpp:
2841         (WebCore::RenderFlexibleBox::layoutBlock):
2842         * rendering/RenderIFrame.cpp:
2843         (WebCore::RenderIFrame::layout):
2844         * rendering/RenderLayer.cpp:
2845         (WebCore::RenderLayer::updateLayerPositions):
2846         * rendering/RenderReplaced.cpp:
2847         (WebCore::RenderReplaced::layout):
2848         * rendering/RenderTable.cpp:
2849         (WebCore::RenderTable::layout):
2850
2851 2010-11-29  Chris Rogers  <crogers@google.com>
2852
2853         Reviewed by Kenneth Russell.
2854
2855         Add remaining custom JSC web audio bindings
2856         https://bugs.webkit.org/show_bug.cgi?id=50172
2857
2858         No new tests since audio API is not yet implemented.
2859
2860         * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added.
2861         (WebCore::JSAudioBufferSourceNode::setBuffer):
2862         * bindings/js/JSConvolverNodeCustom.cpp: Added.
2863         (WebCore::JSConvolverNode::setBuffer):
2864         * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added.
2865         (WebCore::JSJavaScriptAudioNode::markChildren):
2866         * webaudio/AudioBufferSourceNode.idl:
2867         * webaudio/ConvolverNode.idl:
2868
2869 2010-11-29  Yael Aharon  <yael.aharon@nokia.com>
2870
2871         Reviewed by Darin Adler.
2872
2873         HTMLFormElement.elements doesn't include fieldsets
2874         https://bugs.webkit.org/show_bug.cgi?id=48193
2875
2876         Add fieldset and keygen to the list of form collection elements, by making them enumeratable.
2877         This patch does not add object element to the list. A separate bug will do that.
2878
2879         Test: fast/forms/form-collection-elements.html
2880
2881         * html/HTMLFieldSetElement.h:
2882         (WebCore::HTMLFieldSetElement::isEnumeratable):
2883         * html/HTMLKeygenElement.h:
2884         (WebCore::HTMLKeygenElement::isEnumeratable):
2885
2886 2010-11-29  Xan Lopez  <xlopez@igalia.com>
2887
2888         Reviewed by Martin Robinson.
2889
2890         Get distcheck going.
2891
2892         * GNUmakefile.am:
2893
2894 2010-11-29  Alexey Proskuryakov  <ap@apple.com>
2895
2896         Reviewed by Darin Adler.
2897
2898         https://bugs.webkit.org/show_bug.cgi?id=50181
2899         CSS style declarations don't GC protect parents
2900
2901         Test: fast/dom/StyleSheet/gc-declaration-parent-rule.html
2902
2903         * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::markChildren):
2904         Protect the parent rule.
2905
2906 2010-11-29  Ilya Tikhonovsky  <loislo@chromium.org>
2907
2908         Reviewed by Pavel Feldman.
2909
2910         Web Inspector: UI fix. In Timeline, Paint events "Location" value is displayed
2911         in a confusing manner. The format string should be changed from %d x %d
2912         pattern to (%d, %d).
2913
2914         https://bugs.webkit.org/show_bug.cgi?id=50178
2915
2916         * English.lproj/localizedStrings.js:
2917         * inspector/front-end/TimelinePanel.js:
2918         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2919
2920 2010-11-29  Darin Adler  <darin@apple.com>
2921
2922         Reviewed by Andreas Kling.
2923
2924         Remove a couple unneeded overflow checks
2925         https://bugs.webkit.org/show_bug.cgi?id=49816
2926
2927         * platform/text/TextCodecUTF16.cpp:
2928         (WebCore::TextCodecUTF16::encode): Use an ASSERT instead of
2929         an overflow check with CRASH.
2930
2931 2010-11-29  Tony Chang  <tony@chromium.org>
2932
2933         Unreviewed, disable warnings again on chromium linux
2934
2935         * WebCore.gyp/WebCore.gyp:
2936
2937 2010-11-29  Cosmin Truta  <ctruta@chromium.org>
2938
2939         Reviewed by Nikolas Zimmermann.
2940
2941         getBoundingClientRect: Do not truncate the coordinates to integers
2942         https://bugs.webkit.org/show_bug.cgi?id=48110
2943
2944         Remove the float-to-int coordinate conversions inside getBoundingClientRect,
2945         to comply with the CSSOM View Module API.
2946
2947         Tests: fast/dom/Element/getBoundingClientRect.html
2948                fast/dom/Range/getBoundingClientRect.html
2949                svg/zoom/page/zoom-getBoundingClientRect.xhtml
2950                svg/zoom/page/zoom-zoom-coords.xhtml
2951
2952         * dom/ClientRect.cpp:
2953         (WebCore::ClientRect::ClientRect): Added overload to allow a FloatRect argument.
2954         * dom/ClientRect.h:
2955         (WebCore::ClientRect::create): Ditto.
2956         * dom/Element.cpp:
2957         (Element::getBoundingClientRect): Removed conversion from FloatRect to IntRect.
2958         * dom/Range.cpp:
2959         (WebCore::Range::getBoundingClientRect): Ditto.
2960         * rendering/RenderObject.h:
2961         (adjustIntRectForAbsoluteZoom): Removed.
2962         (adjustFloatRectForAbsoluteZoom): Added.
2963         * rendering/style/RenderStyle.h:
2964         (adjustFloatForAbsoluteZoom): Added.
2965
2966 2010-11-29  Dimitri Glazkov  <dglazkov@chromium.org>
2967
2968         Reviewed by Darin Adler.
2969
2970         Converge means of querying a parent node into one way, which is Node::parentNode.
2971         https://bugs.webkit.org/show_bug.cgi?id=49686
2972
2973         A follow-up to r72259, which explicitly forbids further use of Node::parent by
2974         making it private.
2975
2976         No change in behavior, so no new tests.
2977
2978         * dom/Document.cpp:
2979         (WebCore::Document::styleForElementIgnoringPendingStylesheets): Changed to use parentNode.
2980         (WebCore::Document::hoveredNodeDetached): Ditto.
2981         (WebCore::Document::activeChainNodeDetached): Ditto.
2982         * dom/Node.h: Made Node::parent private.
2983         * page/SpatialNavigation.cpp:
2984         (WebCore::canBeScrolledIntoView): Changed to use parentNode.
2985         * xml/XSLTProcessorQt.cpp:
2986         (WebCore::XSLTProcessor::transformToString): Ditto.
2987
2988 2010-11-29  Tony Chang  <tony@chromium.org>
2989
2990         Reviewed by James Robinson.
2991
2992         [chromium] try to enable WebCore compiler warnings on linux
2993         https://bugs.webkit.org/show_bug.cgi?id=50168
2994
2995         * WebCore.gyp/WebCore.gyp:
2996         * platform/graphics/chromium/FontLinux.cpp:
2997         (WebCore::TextRunWalker::setPadding):
2998         (WebCore::TextRunWalker::setGlyphXPositions):
2999         (WebCore::glyphIndexForXPositionInScriptRun):
3000
3001 2010-11-29  Alexey Proskuryakov  <ap@apple.com>
3002
3003         Reviewed by Darin Adler.
3004
3005         https://bugs.webkit.org/show_bug.cgi?id=50165
3006         CSS style rules don't GC protect parents
3007
3008         Tests: fast/dom/StyleSheet/gc-parent-rule.html
3009                fast/dom/StyleSheet/gc-parent-stylesheet.html
3010
3011         * bindings/js/JSCSSRuleCustom.cpp: (WebCore::JSCSSRule::markChildren): Mark parents. The code
3012         is super naive compared to what we have for nodes - but CSSOM has shallow hierarchies, so
3013         it should be OK.
3014
3015         * css/CSSRule.idl: Added CustomMarkFunction.
3016
3017 2010-11-29  Gavin Peters  <gavinp@chromium.org>
3018
3019         Reviewed by Adam Barth.
3020
3021         Web page can prevent WebKit from loading subresources on other
3022         pages (cache poisoning)
3023         https://bugs.webkit.org/show_bug.cgi?id=35404
3024
3025         Tests: http/tests/misc/unloadable-script.html
3026                loader/reload-subresource-when-type-changes.html
3027
3028         * loader/cache/MemoryCache.cpp:
3029         (WebCore::MemoryCache::requestResource):
3030
3031 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
3032
3033         Reviewed by Dan Bernstein.
3034
3035         Crash in WebCore::CSSStyleSelector::loadPendingImages
3036         https://bugs.webkit.org/show_bug.cgi?id=50149
3037         
3038         Null-check style->boxReflect() when loading pending style images.
3039
3040         Test: fast/reflections/pending-reflection-mask-crash.html
3041
3042         * css/CSSStyleSelector.cpp:
3043         (WebCore::CSSStyleSelector::loadPendingImages):
3044
3045 2010-11-29  Pavel Feldman  <pfeldman@chromium.org>
3046
3047         Reviewed by Yury Semikhatsky.
3048
3049         Web Inspector: crash upon inspecting user style sheet.
3050         https://bugs.webkit.org/show_bug.cgi?id=50109
3051
3052         * inspector/InspectorStyleSheet.cpp:
3053         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
3054
3055 2010-11-29  Patrick Gansterer  <paroga@webkit.org>
3056
3057         Reviewed by Adam Roben.
3058
3059         [WINCE] Implement WebCore::directoryName
3060         https://bugs.webkit.org/show_bug.cgi?id=50031
3061
3062         Also fix handling of paths without path separator.
3063
3064         * platform/wince/FileSystemWinCE.cpp:
3065         (WebCore::reverseFindPathSeparator):
3066         (WebCore::makeAllDirectories):
3067         (WebCore::pathGetFileName):
3068         (WebCore::directoryName):
3069
3070 2010-11-29  Patrick Gansterer  <paroga@webkit.org>
3071
3072         Reviewed by Adam Roben.
3073
3074         Simplify directoryName in FileSystemWin.cpp
3075         https://bugs.webkit.org/show_bug.cgi?id=50028
3076
3077         * platform/win/FileSystemWin.cpp:
3078         (WebCore::directoryName):
3079
3080 2010-11-24  Dimitri Glazkov  <dglazkov@chromium.org>
3081
3082         Reviewed by Darin Adler.
3083
3084         REGRESSION (r71934): Main search field at Apple tech specs does not accept typing
3085         https://bugs.webkit.org/show_bug.cgi?id=49868
3086
3087         The problem here was that the inner text element of search input was first laid out as
3088         disabled and thus with a 0-height. This would prevent a hit test to ever reach it, even
3089         if it's enabled.
3090
3091         Test: fast/forms/disabled-search-input.html
3092
3093         * rendering/RenderBlock.cpp:
3094         (WebCore::RenderBlock::hasLineIfEmpty): Removed a check for textarea that is no longer necessary.
3095         * rendering/TextControlInnerElements.cpp:
3096         (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty): Added an override to ensure that
3097             an empty inner text element is always one-line high.
3098
3099 2010-11-29  W. James MacLean  <wjmaclean@chromium.org>
3100
3101        Reviewed by Dirk Schulze.
3102
3103        Large input numbers cause overflow during SVG parsing, leading to crash
3104        https://bugs.webkit.org/show_bug.cgi?id=49546
3105
3106        Values outside the range supported by float lead to Infinity() or NaN()
3107        during parsing, leading to subsequent crashes. Modified
3108        parser to verify number is in the supported range, and return false if not.
3109
3110        Tests: svg/custom/svg-parse-overflow-1.html
3111               svg/custom/svg-parse-overflow-2.html
3112               svg/custom/svg-parse-overflow-3.html
3113               svg/custom/svg-parse-overflow-4.html
3114               svg/custom/svg-parse-overflow-5.html
3115
3116        * svg/SVGParserUtilities.cpp:
3117        (WebCore::isValidRange):
3118        (WebCore::genericParseNumber):
3119
3120 2010-11-29  Yury Semikhatsky  <yurys@chromium.org>
3121
3122         Reviewed by Pavel Feldman.
3123
3124         Web Inspector: display name of an object constructor as the object's type
3125         https://bugs.webkit.org/show_bug.cgi?id=50063
3126
3127         Name of the function that has created given object is used as the object's
3128         type when it's displayed in the inspector front-end(in case of V8). Before
3129         this change, it was always a value of the object's constructor.name property
3130         which is confusing in some cases(see the test).
3131
3132         Removed check for jsEngine from the InjectedScript.js, all VM-specific code
3133         is now encapsulated on the bindings layer.
3134
3135         Test: inspector/console-object-constructor-name.html
3136
3137         * bindings/js/JSInjectedScriptHostCustom.cpp:
3138         (WebCore::InjectedScriptHost::createInjectedScript):
3139         (WebCore::JSInjectedScriptHost::constructorName):
3140         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3141         (WebCore::InjectedScriptHost::createInjectedScript):
3142         (WebCore::V8InjectedScriptHost::constructorNameCallback):
3143         * inspector/InjectedScriptHost.idl:
3144         * inspector/front-end/InjectedScript.js:
3145         (injectedScriptConstructor.):
3146
3147 2010-11-29  Jeremy Moskovich  <jeremy@chromium.org>
3148
3149         Reviewed by Eric Seidel.
3150
3151         https://bugs.webkit.org/show_bug.cgi?id=24346
3152
3153         Remove temporary workaround to load Gears plugin.
3154
3155         * html/HTMLObjectElement.cpp:
3156         (WebCore::HTMLObjectElement::rendererIsNeeded):
3157
3158 2010-11-29  Yael Aharon  <yael.aharon@nokia.com>
3159
3160         Reviewed by Antonio Gomes.
3161
3162         Spatial Navigation: Store more information in FocusCandidate
3163         https://bugs.webkit.org/show_bug.cgi?id=50153
3164
3165         More information should be stored in FocusCandidate, to avoid
3166         recalculating it when running the spatial navigation algorithm.
3167
3168         No new tests, since this is code refactoring only.
3169
3170         * page/FocusController.cpp:
3171         (WebCore::updateFocusCandidateIfNeeded):
3172         (WebCore::FocusController::findFocusCandidateInContainer):
3173         (WebCore::FocusController::advanceFocusDirectionallyInContainer):
3174         * page/SpatialNavigation.cpp:
3175         (WebCore::FocusCandidate::FocusCandidate):
3176         (WebCore::canBeScrolledIntoView):
3177         * page/SpatialNavigation.h:
3178         (WebCore::FocusCandidate::FocusCandidate):
3179
3180 2010-11-29  Dimitri Glazkov  <dglazkov@chromium.org>
3181
3182         Reviewed by Darin Adler.
3183
3184         Use the right focusable check to avoid multiple focus/blur events being fired from inside of the shadow DOM.
3185         https://bugs.webkit.org/show_bug.cgi?id=49977
3186
3187         * editing/SelectionController.cpp:
3188         (WebCore::SelectionController::setFocusedNodeIfNeeded): Added a FIXME to remove redundant code.
3189         * page/EventHandler.cpp:
3190         (WebCore::EventHandler::dispatchMouseEvent): Changed to use isMouseFocusable, which is what shadow DOM elements
3191             override, and added a FIXME to convert to use shadow DOM-aware traversal instead of render tree traversal.
3192
3193         Test: fast/events/shadow-boundary-crossing-2.html
3194
3195 2010-11-29  Adam Roben  <aroben@apple.com>
3196
3197         Windows build fix after r72715
3198
3199         * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag to fix an
3200         XML syntax error.
3201
3202 2010-11-29  Bernhard Bauer  <bauerb@chromium.org>
3203
3204         Reviewed by Jeremy Orlow.
3205
3206         Remove databaseFileName from IDBFactoryBackendImpl
3207         https://bugs.webkit.org/show_bug.cgi?id=50150
3208
3209         No new tests, since functionality is unchanged.
3210
3211         * storage/IDBFactoryBackendImpl.cpp:
3212         (WebCore::openSQLiteDatabase):
3213         * storage/IDBFactoryBackendImpl.h:
3214
3215 2010-11-29  Philippe Normand  <pnormand@igalia.com>
3216
3217         Reviewed by Xan Lopez.
3218
3219         [GStreamer] take video sink ownership with gst_object API
3220         https://bugs.webkit.org/show_bug.cgi?id=49011
3221
3222         Use gst_object_ref_sink instead of g_object_ref_sink to avoid
3223         possible leaks.
3224
3225         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3226         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
3227
3228 2010-11-29  Jan Erik Hanssen  <jhanssen@sencha.com>
3229
3230         Reviewed by Kenneth Rohde Christiansen.
3231
3232         QtWebKit asserts when selecting elided text.
3233         https://bugs.webkit.org/show_bug.cgi?id=45391
3234
3235         Ensure that the length passed to fromRawDataWithoutRef() does
3236         not exceed the length of the string.
3237
3238         * platform/graphics/qt/FontQt.cpp:
3239         (WebCore::Font::selectionRectForSimpleText):
3240
3241 2010-11-26  Alexander Pavlov  <apavlov@chromium.org>
3242
3243         Reviewed by Pavel Feldman.
3244
3245         Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored"
3246         https://bugs.webkit.org/show_bug.cgi?id=31614
3247
3248         * English.lproj/localizedStrings.js:
3249         * inspector/front-end/Color.js:
3250         (WebInspector.Color.prototype.toString):
3251         (WebInspector.Color.prototype._parse.this.rgba.set 0):
3252         (WebInspector.Color.prototype._parse.set WebInspector):
3253         (WebInspector.Color.prototype._parse):
3254         * inspector/front-end/StylesSidebarPane.js:
3255         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat):
3256         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
3257
3258 2010-11-29  Helder Correia  <helder@sencha.com>
3259
3260         Reviewed by Kenneth Rohde Christiansen.
3261
3262         [Qt] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
3263         https://bugs.webkit.org/show_bug.cgi?id=50141
3264
3265         Don't apply scaling transformation to shadow offsets.
3266
3267         Test: fast/canvas/canvas-scale-fillRect-shadow.html
3268
3269         * platform/graphics/ContextShadow.h:
3270         * platform/graphics/qt/ContextShadowQt.cpp:
3271         (WebCore::ContextShadow::beginShadowLayer):
3272         (WebCore::ContextShadow::endShadowLayer):
3273         * platform/graphics/qt/GraphicsContextQt.cpp:
3274         (WebCore::GraphicsContext::fillRect):
3275
3276 2010-11-28  Dimitri Glazkov  <dglazkov@chromium.org>
3277
3278         Reviewed by Darin Adler.
3279
3280         Default event handlers should also be using event retargeting.
3281         https://bugs.webkit.org/show_bug.cgi?id=49986
3282
3283         Test: fast/events/shadow-boundary-crossing-2.html
3284
3285         * dom/EventContext.cpp:
3286         (WebCore::EventContext::defaultEventHandler): Added.
3287         * dom/EventContext.h: Added decl.
3288         * dom/Node.cpp:
3289         (WebCore::Node::dispatchGenericEvent): Changed to use event retargeting for
3290             default event handlers.
3291
3292 2010-11-23  MORITA Hajime  <morrita@google.com>
3293
3294         Reviewed by Kent Tamura.
3295
3296         REGRESSION: Text on <input type="search"> is not spellchecked.
3297         https://bugs.webkit.org/show_bug.cgi?id=49651
3298
3299         TextControlInnerElement::isSpellCheckingEnabled() didn't consider 
3300         non-root shadow elelements and always went false for <input type="search>.
3301         This change unifies shadow and host handling into Element::isSpellCheckingEnabled().
3302         
3303         Test: editing/spelling/spellcheck-attribute.html
3304         
3305         * dom/Element.cpp:
3306         (WebCore::Element::isSpellCheckingEnabled):
3307         * rendering/TextControlInnerElements.cpp:
3308         * rendering/TextControlInnerElements.h:
3309
3310 2010-11-28  Antonio Gomes  <agomes@rim.com>
3311
3312         Reviewed by Kenneth Rohde Christiansen.
3313
3314         Spatial Navigation: use isSpatialNaviagtionEnabled from SpatialNavigation.h in HTMLInputElement::defaultEventHandler
3315         https://bugs.webkit.org/show_bug.cgi?id=50131
3316
3317         For all isSpatialNavigationEnabled calls throughout WebCore, we decided to use the static method in
3318         SpatialNavigation.h instead of directly checking from the one in Settings.h. Reason: in a soon future,
3319         there  will be a isCaretBrowsing check incorporated into this method (and probably renaming it accordingly)
3320         to avoid feature conflicts (spatial navigation x caret browsing).
3321
3322         No new tests needed.
3323
3324         * html/HTMLInputElement.cpp:
3325         (WebCore::HTMLInputElement::defaultEventHandler):
3326
3327 2010-11-27  Benjamin Kalman  <kalman@chromium.org>
3328
3329         Reviewed by Darin Adler.
3330
3331         Move Position::EditingBoundaryCrossingRule to a new header file
3332         https://bugs.webkit.org/show_bug.cgi?id=49630
3333
3334         * GNUmakefile.am:
3335         * WebCore.exp.in:
3336         * WebCore.gypi:
3337         * WebCore.pro:
3338         * WebCore.vcproj/WebCore.vcproj:
3339         * WebCore.xcodeproj/project.pbxproj:
3340         * dom/Position.cpp:
3341         (WebCore::downstreamIgnoringEditingBoundaries):
3342         (WebCore::upstreamIgnoringEditingBoundaries):
3343         * dom/Position.h:
3344         * editing/DeleteSelectionCommand.cpp:
3345         (WebCore::DeleteSelectionCommand::doApply):
3346         * editing/EditingBoundary.h: Added.
3347         * editing/visible_units.cpp:
3348         (WebCore::startOfParagraph):
3349         (WebCore::endOfParagraph):
3350         (WebCore::isStartOfParagraph):
3351         (WebCore::isEndOfParagraph):
3352         * editing/visible_units.h:
3353         * rendering/RenderObject.cpp:
3354         (WebCore::RenderObject::createVisiblePosition):
3355
3356 2010-11-26  Rob Buis  <rwlbuis@gmail.com>
3357
3358         Reviewed by Simon Fraser.
3359
3360         Percentage z offset in transform-origin should make the property invalid
3361         https://bugs.webkit.org/show_bug.cgi?id=48704
3362
3363         Discard transform-origin property when parsing invalid Z value.
3364
3365         Test: fast/css/transform-origin-parsing.html
3366
3367         * css/CSSParser.cpp:
3368         (WebCore::CSSParser::parseTransformOriginShorthand):
3369         (WebCore::CSSParser::parseTransformOrigin):
3370         * css/CSSParser.h:
3371
3372 2010-11-26  Dan Bernstein  <mitz@apple.com>
3373
3374         Reviewed by Antti Koivisto.
3375
3376         <rdar://problem/8681368> Avoid unnecessary calls to CTFontGetPlatformFont()
3377         https://bugs.webkit.org/show_bug.cgi?id=50096
3378
3379         No new test, since functionality is unchanged.
3380
3381         * platform/graphics/chromium/CrossProcessFontLoading.mm:
3382         (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
3383         * platform/graphics/cocoa/FontPlatformData.h:
3384         (WebCore::FontPlatformData::FontPlatformData): Ditto.
3385         (WebCore::FontPlatformData::operator==): Removed comparison of font IDs.
3386         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
3387         (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
3388         (WebCore::FontPlatformData::FontPlatformData): Updated.
3389         (WebCore::FontPlatformData::operator=): Removed copying of font ID.
3390         (WebCore::FontPlatformData::setFont): Removed setting of font ID.
3391         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
3392         (WebCore::initializeATSUStyle): Call CTFontGetPlatformFont() here if necessary.
3393         * platform/graphics/mac/FontCustomPlatformData.cpp:
3394         (WebCore::FontCustomPlatformData::fontPlatformData): Updated for FontPlatformData change.
3395         (WebCore::createFontCustomPlatformData): Updated for FontCustomPlatformData change.
3396         * platform/graphics/mac/FontCustomPlatformData.h:
3397         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Removed ATSUFontID argument and
3398         data member.
3399         * platform/graphics/mac/SimpleFontDataATSUI.mm:
3400         (WebCore::SimpleFontData::checkShapesArabic): Call CTFontGetPlatformFont() here if necessary.
3401
3402 2010-11-26  François Sausset  <sausset@gmail.com>
3403
3404         Reviewed by Daniel Bates.
3405
3406         MathML: code cleaning needed in MathMLInlineContainerElement.cpp
3407         https://bugs.webkit.org/show_bug.cgi?id=50069
3408
3409         Unnecessary namespace was removed and style was adjusted.
3410
3411         * mathml/MathMLInlineContainerElement.cpp:
3412         (WebCore::MathMLInlineContainerElement::createRenderer):
3413
3414 2010-11-26  Andrei Popescu  <andreip@google.com>
3415
3416         Reviewed by Jeremy Orlow.
3417
3418         IDBDatabase and IDBObjectStore remove* methods should be renamed to delete*
3419         https://bugs.webkit.org/show_bug.cgi?id=50113
3420
3421         Modified exisiting layout tests to cover this change.
3422
3423         * storage/IDBDatabase.cpp:
3424         (WebCore::IDBDatabase::deleteObjectStore):
3425         * storage/IDBDatabase.h:
3426         * storage/IDBDatabase.idl:
3427         * storage/IDBDatabaseBackendImpl.cpp:
3428         (WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
3429         (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
3430         * storage/IDBDatabaseBackendImpl.h:
3431         * storage/IDBDatabaseBackendInterface.h:
3432         * storage/IDBObjectStore.cpp:
3433         (WebCore::IDBObjectStore::deleteFunction):
3434         (WebCore::IDBObjectStore::deleteIndex):
3435         * storage/IDBObjectStore.h:
3436         * storage/IDBObjectStore.idl:
3437         * storage/IDBObjectStoreBackendImpl.cpp:
3438         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
3439         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
3440         (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
3441         (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
3442         * storage/IDBObjectStoreBackendImpl.h:
3443         * storage/IDBObjectStoreBackendInterface.h:
3444
3445 2010-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
3446
3447         Unreviewed, rolling out r72701.
3448         http://trac.webkit.org/changeset/72701
3449         https://bugs.webkit.org/show_bug.cgi?id=50114
3450
3451         REGRESSION: bad transform matrix on content layer (Requested
3452         by backer on #webkit).
3453
3454         * WebCore.gypi:
3455         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3456         (WebCore::Canvas2DLayerChromium::updateContents):
3457         * platform/graphics/chromium/Canvas2DLayerChromium.h:
3458         * platform/graphics/chromium/ContentLayerChromium.cpp:
3459         (WebCore::ContentLayerChromium::cleanupResources):
3460         (WebCore::ContentLayerChromium::updateContents):
3461         (WebCore::ContentLayerChromium::updateTextureRect):
3462         (WebCore::ContentLayerChromium::draw):
3463         * platform/graphics/chromium/ContentLayerChromium.h:
3464         * platform/graphics/chromium/ImageLayerChromium.cpp:
3465         (WebCore::ImageLayerChromium::updateContents):
3466         * platform/graphics/chromium/ImageLayerChromium.h:
3467         * platform/graphics/chromium/LayerChromium.h:
3468         (WebCore::LayerChromium::contentsDirty):
3469         (WebCore::LayerChromium::updateContents):
3470         (WebCore::LayerChromium::draw):
3471         * platform/graphics/chromium/LayerRendererChromium.cpp:
3472         (WebCore::LayerRendererChromium::LayerRendererChromium):
3473         (WebCore::LayerRendererChromium::prepareToDrawLayers):
3474         (WebCore::LayerRendererChromium::drawLayers):
3475         (WebCore::LayerRendererChromium::updateLayersRecursive):
3476         (WebCore::LayerRendererChromium::useRenderSurface):
3477         (WebCore::LayerRendererChromium::drawLayer):
3478         (WebCore::LayerRendererChromium::initializeSharedObjects):
3479         (WebCore::LayerRendererChromium::cleanupSharedObjects):
3480         * platform/graphics/chromium/LayerRendererChromium.h:
3481         * platform/graphics/chromium/LayerTexture.cpp: Removed.
3482         * platform/graphics/chromium/LayerTexture.h: Removed.
3483         * platform/graphics/chromium/PluginLayerChromium.cpp:
3484         (WebCore::PluginLayerChromium::updateContents):
3485         * platform/graphics/chromium/PluginLayerChromium.h:
3486         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
3487         (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
3488         (WebCore::RenderSurfaceChromium::cleanupResources):
3489         (WebCore::RenderSurfaceChromium::prepareContentsTexture):
3490         * platform/graphics/chromium/RenderSurfaceChromium.h:
3491         * platform/graphics/chromium/TextureManager.cpp: Removed.
3492         * platform/graphics/chromium/TextureManager.h: Removed.
3493         * platform/graphics/chromium/VideoLayerChromium.cpp:
3494         (WebCore::VideoLayerChromium::updateContents):
3495         * platform/graphics/chromium/VideoLayerChromium.h:
3496         * platform/graphics/chromium/WebGLLayerChromium.cpp:
3497         (WebCore::WebGLLayerChromium::updateContents):
3498         * platform/graphics/chromium/WebGLLayerChromium.h:
3499
3500 2010-11-26  Jeremy Orlow  <jorlow@chromium.org>
3501
3502         Unreviewed build fix.
3503
3504         * storage/IDBIndex.cpp:
3505         (WebCore::IDBIndex::openCursor):
3506         (WebCore::IDBIndex::openKeyCursor):
3507         * storage/IDBObjectStore.cpp:
3508         (WebCore::IDBObjectStore::openCursor):
3509
3510 2010-11-26  Sergio Villar Senin  <svillar@igalia.com>
3511
3512         Reviewed by Xan Lopez.
3513
3514         [GTK] SoupCache should not ignore loader's conditional requests
3515         https://bugs.webkit.org/show_bug.cgi?id=50101
3516
3517         SoupCache must not handle WebKit loader conditional requests and
3518         thus should never return its own cached response if any. This was
3519         causing frequent resource load failures as WebCore was trying to
3520         revalidate its own resources and was not getting any expected
3521         result.
3522
3523         * platform/network/soup/cache/webkit/soup-cache.c:
3524         (webkit_soup_cache_has_response): check the presence of
3525         conditional request headers when deciding whether the cache has a
3526         valid response for a given request.
3527
3528 2010-11-26  Jeremy Orlow  <jorlow@chromium.org>
3529
3530         Reviewed by Steve Block.
3531
3532         Make IDBKeyRange match the spec
3533         https://bugs.webkit.org/show_bug.cgi?id=50105
3534
3535         Remove flags and instead add two booleans for being open.
3536         Change left to lower and right to upper everywhere.
3537
3538         * storage/IDBIndexBackendImpl.cpp:
3539         (WebCore::IDBIndexBackendImpl::openCursorInternal):
3540         * storage/IDBKey.cpp:
3541         (WebCore::IDBKey::lowerCursorWhereFragment):
3542         (WebCore::IDBKey::upperCursorWhereFragment):
3543         * storage/IDBKey.h:
3544         * storage/IDBKeyRange.cpp:
3545         (WebCore::IDBKeyRange::IDBKeyRange):
3546         (WebCore::IDBKeyRange::only):
3547         (WebCore::IDBKeyRange::lowerBound):
3548         (WebCore::IDBKeyRange::upperBound):
3549         (WebCore::IDBKeyRange::bound):
3550         (WebCore::IDBKeyRange::lowerWhereClauseComparisonOperator):
3551         (WebCore::IDBKeyRange::upperWhereClauseComparisonOperator):
3552         * storage/IDBKeyRange.h:
3553         (WebCore::IDBKeyRange::create):
3554         (WebCore::IDBKeyRange::lower):
3555         (WebCore::IDBKeyRange::upper):
3556         (WebCore::IDBKeyRange::lowerOpen):
3557         (WebCore::IDBKeyRange::upperOpen):
3558         * storage/IDBKeyRange.idl:
3559         * storage/IDBObjectStoreBackendImpl.cpp:
3560         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
3561
3562 2010-11-25  Jeremy Orlow  <jorlow@chromium.org>
3563
3564         Reviewed by Steve Block.
3565
3566         Convert open*Cursor and createIndex over to using OptionsObject
3567         https://bugs.webkit.org/show_bug.cgi?id=50093
3568
3569         Add IDBKeyRange to OptionsObject's parsing abilities. Switch
3570         more APIs over to using it.
3571
3572         * bindings/v8/OptionsObject.cpp:
3573         (WebCore::OptionsObject::getKeyDOMStringList):
3574         (WebCore::OptionsObject::getKeyKeyRange):
3575         * bindings/v8/OptionsObject.h:
3576         * storage/IDBIndex.cpp:
3577         (WebCore::IDBIndex::openCursor):
3578         (WebCore::IDBIndex::openKeyCursor):
3579         * storage/IDBIndex.h:
3580         (WebCore::IDBIndex::openCursor):
3581         (WebCore::IDBIndex::openKeyCursor):
3582         * storage/IDBIndex.idl: