2010-12-04 Daniel Bates <dbates@rim.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-12-04  Daniel Bates  <dbates@rim.com>
2
3         Reviewed by Darin Adler.
4
5         Add support for lower-armenian and upper-armenian
6         https://bugs.webkit.org/show_bug.cgi?id=49641
7
8         Implement support for list-style-types lower-armenian and upper-armenian
9         for lowercase Armenian and uppercase Armenian numerals, respectively.
10
11         Tests: fast/lists/w3-css3-lower-armenian.html
12                fast/lists/w3-css3-upper-armenian.html
13
14         * css/CSSPrimitiveValueMappings.h:
15         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added enum values LowerArmenian
16         and UpperArmenian.
17         * css/CSSValueKeywords.in: Added "upper-armenian" and "lower-armenian".
18         * inspector/front-end/SourceCSSTokenizer.re2js: Ditto.
19         * rendering/RenderListMarker.cpp:
20         (WebCore::effectiveListMarkerType): Added enum values LowerArmenian
21         and UpperArmenian.
22         (WebCore::listMarkerSuffix): Ditto.
23         (WebCore::listMarkerText): Ditto.
24         (WebCore::RenderListMarker::paint): Ditto.
25         (WebCore::RenderListMarker::computePreferredLogicalWidths): Ditto.
26         (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
27         * rendering/style/RenderStyleConstants.h: Ditto.
28
29 2010-12-04  Dan Bernstein  <mitz@apple.com>
30
31         Reviewed by Sam Weinig.
32
33         WebCore part of <rdar://problem/8145955> Add text search API for counting/marking/highlighting matches in a range
34         https://bugs.webkit.org/show_bug.cgi?id=50530
35
36         * WebCore.exp.in: Export Range version of countMatchesForText().
37         * editing/Editor.cpp:
38         (WebCore::isFrameInRange): Added this helper method.
39         (WebCore::Editor::countMatchesForText): Added a Range parameter and restricted the result to
40         matches that occur in the range.
41         * editing/Editor.h:
42
43 2010-12-04  Gavin Peters  <gavinp@chromium.org>
44
45         Reviewed by Adam Barth.
46
47         Implement onload events for <link rel=prefetch>
48         https://bugs.webkit.org/show_bug.cgi?id=50187
49
50         Tests: fast/dom/HTMLLinkElement/link-and-subresource-test.html
51                fast/dom/HTMLLinkElement/prefetch-onload.html
52
53         * html/HTMLLinkElement.cpp:
54         (WebCore::HTMLLinkElement::HTMLLinkElement):
55         (WebCore::HTMLLinkElement::~HTMLLinkElement):
56         (WebCore::HTMLLinkElement::parseMappedAttribute):
57         (WebCore::HTMLLinkElement::process):
58         (WebCore::HTMLLinkElement::onloadTimerFired):
59         (WebCore::HTMLLinkElement::notifyFinished):
60         * html/HTMLLinkElement.h:
61         * loader/cache/CachedResource.cpp:
62         (WebCore::CachedResource::data):
63
64 2010-12-04  Xan Lopez  <xlopez@igalia.com>
65
66         Reviewed by Martin Robinson.
67
68         [GTK] Drop GdkDrawable usage, it's deprecated in GTK+3.x and we can use GdkWindow
69         https://bugs.webkit.org/show_bug.cgi?id=50451
70
71         GdkDrawable has been removed in GTK+3.x. To cope with this we can
72         actually stop using it altogether, since GdkWindow is just a
73         typedef for it and that seems to be good enough for us.
74
75         * platform/graphics/GraphicsContext.h: s/GdkDrawable/GdkWindow/.
76         * platform/graphics/cairo/GraphicsContextCairo.cpp:
77         (WebCore::GraphicsContext::gdkWindow): ditto.
78         * platform/gtk/GtkVersioning.h: declare GDK_WINDOW_XWINDOW for GTK 3.x builds.
79         * platform/gtk/PlatformScreenGtk.cpp:
80         (WebCore::screenAvailableRect): s/GdkDrawable/GdkWindow/.
81         * platform/gtk/WidgetGtk.cpp:
82         (WebCore::gdkWindow): ditto.
83         (WebCore::Widget::setCursor): ditto.
84         * platform/gtk/WidgetRenderingContextGtk2.cpp: ditto.
85
86 2010-12-03  Dimitri Glazkov  <dglazkov@chromium.org>
87
88         Reviewed by Darin Adler.
89
90         REGRESSION(r71934): input event fires twice when editing text inside a text input.
91         https://bugs.webkit.org/show_bug.cgi?id=50477
92
93         Now that events escape the shadow DOM boundary, the input event is fired twice
94         for each input, once triggered by editing, once triggered by value change.
95
96         Test: fast/forms/text-input-event.html
97
98         * dom/InputElement.cpp:
99         (WebCore::InputElement::setValueFromRenderer): Added a check to ensure editable fields
100             don't fire an extra input event.
101
102 2010-12-03  Sheriff Bot  <webkit.review.bot@gmail.com>
103
104         Unreviewed, rolling out r73302.
105         http://trac.webkit.org/changeset/73302
106         https://bugs.webkit.org/show_bug.cgi?id=50499
107
108         Causes crashes in debug LayoutTests (Requested by xan_ on
109         #webkit).
110
111         * accessibility/AccessibilityRenderObject.cpp:
112         (WebCore::AccessibilityRenderObject::renderParentObject):
113         (WebCore::AccessibilityRenderObject::addChildren):
114         * accessibility/AccessibilityRenderObject.h:
115         * accessibility/chromium/AccessibilityObjectChromium.cpp:
116         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
117
118 2010-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
119
120         Reviewed by Pavel Feldman.
121
122         Web Inspector: Inspector protocol cleanup task.
123
124         The patch has just small renames and adjustments for the protocol things.
125         'handler' keyword in idl file was replaced with 'domain'.
126         'domain' property was assigned for the each backend to frontend messages.
127         At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly.
128
129         https://bugs.webkit.org/show_bug.cgi?id=50337
130
131         * inspector/CodeGeneratorInspector.pm:
132         * inspector/Inspector.idl:
133         * inspector/front-end/inspector.js:
134         (WebInspector_syncDispatch):
135
136 2010-12-03  Alexander Pavlov  <apavlov@chromium.org>
137
138         Reviewed by Yury Semikhatsky.
139
140         Web Inspector: Duplicate "!important" for !important properties displayed in the Styles pane
141         https://bugs.webkit.org/show_bug.cgi?id=50460
142
143         * inspector/front-end/StylesSidebarPane.js:
144         * inspector/front-end/inspector.css:
145
146 2010-12-03  Xan Lopez  <xlopez@igalia.com>
147
148         Unreviewed build fix.
149
150         The JS code generator includes headers unconditionally, so we need
151         to generate them unconditionally and disable the feature. The
152         WebAudio files hadn't been added to our sources list.
153
154         * GNUmakefile.am:
155
156 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
157
158         Unreviewed build fix.
159
160         Try to fix EFL build after r73273.
161
162         * CMakeLists.txt:
163
164 2010-12-03  Chris Guillory  <chris.guillory@google.com>
165
166         Reviewed by Chris Fleizach.
167
168         Include the FrameView widget of a RenderWidget in the accessibility tree.
169         https://bugs.webkit.org/show_bug.cgi?id=49106
170
171         Include render widget children in the accessibility tree for not mac webkit ports.
172
173         * accessibility/AccessibilityRenderObject.cpp:
174         (WebCore::AccessibilityRenderObject::renderParentObject):
175         (WebCore::AccessibilityRenderObject::addChildren):
176         (WebCore::AccessibilityRenderObject::addRenderWidgetChildren):
177         * accessibility/AccessibilityRenderObject.h:
178         * accessibility/chromium/AccessibilityObjectChromium.cpp:
179         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
180
181 2010-11-30  Abhishek Arya  <inferno@chromium.org>
182
183         Reviewed by Dave Hyatt.
184
185         Don't clone an anonymous block, instead create a new one in splitBlocks. Also,
186         when beforeChild is not in one of our children, then do the processing first
187         to get its anonymous container before calling splitBlocks.
188         https://bugs.webkit.org/show_bug.cgi?id=49928
189
190         Tests: fast/multicol/span/anonymous-before-child-parent-crash.html
191                fast/multicol/span/anonymous-split-block-crash.html
192
193         * rendering/RenderBlock.cpp:
194         (WebCore::RenderBlock::splitBlocks):
195         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
196
197 2010-12-03  Mark Rowe  <mrowe@apple.com>
198
199         Reviewed by Eric Seidel.
200
201         Animated GIF animates much more slowly in Safari than Firefox
202         <rdar://problem/7689300> / <http://webkit.org/b/26455>
203
204         Adopt Firefox's behavior for frame duration clamping. Images that specify a frame duration
205         of <= 10ms are treated as having a frame duration of 100ms, while all other images use the
206         frame duration that they specify.
207
208         ImageIO currently implements its own clamping of frame durations (<rdar://problem/7689297>)
209         which will result in this change having no observable effect on platforms where it is used
210         until an updated version of ImageIO becomes available.
211
212         * platform/graphics/ImageSource.cpp:
213         (WebCore::ImageSource::frameDurationAtIndex): Update the formatting of the comment and style
214         of the code to match that in ImageSourceCG.
215         * platform/graphics/cg/ImageSourceCG.cpp:
216         (WebCore::ImageSource::frameDurationAtIndex):
217
218 2010-12-03  Chris Rogers  <crogers@google.com>
219
220         Unreviewed build fix.
221
222         Fix M_E compile error on Chromium Win
223         https://bugs.webkit.org/show_bug.cgi?id=50479
224
225         * platform/audio/AudioUtilities.cpp:
226         (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
227
228 2010-12-03  Chris Rogers  <crogers@google.com>
229
230         Unreviewed build fix.
231
232         Try to fix GTK build due to recent web audio makefile changes (disable ENABLE_WEB_AUDIO explicitly)
233         https://bugs.webkit.org/show_bug.cgi?id=50478
234
235         * GNUmakefile.am:
236
237 2010-12-03  Simon Fraser  <simon.fraser@apple.com>
238
239         Reviewed by Dirk Schulze.
240
241         Clean up some text-related code on GraphicsContext
242         https://bugs.webkit.org/show_bug.cgi?id=50464
243
244         Save 8 bytes in GraphicsContextState by rearranging the
245         data members to reduce padding.
246
247         * platform/graphics/GraphicsContextPrivate.h:
248         (WebCore::GraphicsContextState::GraphicsContextState):
249
250 2010-12-03  Simon Fraser  <simon.fraser@apple.com>
251
252         Another Chromium build fix.
253
254         * platform/graphics/skia/GraphicsContextSkia.cpp:
255         (WebCore::GraphicsContext::setPlatformTextDrawingMode):
256
257 2010-12-03  Simon Fraser  <simon.fraser@apple.com>
258
259         Fix Chromium build.
260
261         * platform/graphics/skia/PlatformContextSkia.h:
262
263 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
264
265         Reviewed by Andreas Kling.
266
267         [CMake] Remove WebCore_IDL_PURE_FILES
268         https://bugs.webkit.org/show_bug.cgi?id=50445
269
270         * CMakeLists.txt:
271
272 2010-12-03  Jia Pu  <jpu@apple.com>
273
274         Reviewed by Darin Adler.
275
276         Need to move all code that applies correction into correction panel callback.
277         https://bugs.webkit.org/show_bug.cgi?id=50426
278         <rdar://problem/8720832>
279
280         No new test, since there's no behavioral change.
281
282         This patch is to prepare WebKit to work with upcoming AppKit changes. The main changes are:
283         1. Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult().
284         2. Added more user dictionary learning code.
285         3. Removed m_ prefix in all member variables of CorrectionPanelInfo.
286
287         * editing/CorrectionPanelInfo.h: Remove m_ prefix on member variables. Added ReasonForDismissingCorrectionPanel enum type.
288
289         * editing/Editor.cpp: Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult().
290           Adopted new member variable naming in class CorrectionPanelInfo.
291         (WebCore::Editor::respondToChangedSelection):
292         (WebCore::Editor::~Editor):
293         (WebCore::Editor::markMisspellingsAfterTypingToWord):
294         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
295         (WebCore::Editor::correctionPanelTimerFired):
296         (WebCore::Editor::handleCorrectionPanelResult):
297         (WebCore::Editor::startCorrectionPanelTimer):
298         (WebCore::Editor::stopCorrectionPanelTimer):
299         (WebCore::Editor::handleCancelOperation):
300         (WebCore::Editor::dismissCorrectionPanel):
301         (WebCore::Editor::applyCorrectionPanelInfo):
302
303         * editing/Editor.h: Changed signature of dismissCorrectionPanel to use ReasonForDismissingCorrectionPanel.
304
305         * loader/EmptyClients.h: Ditto.
306         (WebCore::EmptyEditorClient::dismissCorrectionPanel):
307
308         * page/EditorClient.h: Ditto.
309
310 2010-12-03  Pavel Feldman  <pfeldman@chromium.org>
311
312         Reviewed by Yury Semikhatsky.
313
314         Web Inspector: reveal in elements panel does not switch the panel itself.
315         https://bugs.webkit.org/show_bug.cgi?id=50408
316
317         * inspector/front-end/ElementsTreeOutline.js:
318         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
319         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
320         * inspector/front-end/ObjectPropertiesSection.js:
321         (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
322
323 2010-12-03  Simon Fraser  <simon.fraser@apple.com>
324
325         Reviewed by Nikolas Zimmermann.
326
327         Clean up some text-related code on GraphicsContext
328         https://bugs.webkit.org/show_bug.cgi?id=50464
329
330         Use defined types for textDrawingMode and it's associated flags.
331
332         * html/canvas/CanvasRenderingContext2D.cpp:
333         (WebCore::CanvasRenderingContext2D::drawTextInternal):
334         * platform/graphics/GraphicsContext.cpp:
335         (WebCore::GraphicsContext::textDrawingMode):
336         (WebCore::GraphicsContext::setTextDrawingMode):
337         (WebCore::GraphicsContext::setPlatformTextDrawingMode):
338         * platform/graphics/GraphicsContext.h:
339         * platform/graphics/GraphicsContextPrivate.h:
340         (WebCore::GraphicsContextState::GraphicsContextState):
341         * platform/graphics/cairo/FontCairo.cpp:
342         (WebCore::drawGlyphsShadow):
343         (WebCore::Font::drawGlyphs):
344         * platform/graphics/cg/GraphicsContextCG.cpp:
345         (WebCore::GraphicsContext::setPlatformTextDrawingMode):
346         * platform/graphics/chromium/FontLinux.cpp:
347         (WebCore::Font::drawGlyphs):
348         (WebCore::Font::drawComplexText):
349         * platform/graphics/gtk/FontGtk.cpp:
350         (WebCore::drawGlyphsShadow):
351         (WebCore::Font::drawComplexText):
352         * platform/graphics/mac/FontMac.mm:
353         (WebCore::Font::drawGlyphs):
354         * platform/graphics/openvg/PainterOpenVG.cpp:
355         (WebCore::PlatformPainterState::PlatformPainterState):
356         (WebCore::PainterOpenVG::textDrawingMode):
357         (WebCore::PainterOpenVG::setTextDrawingMode):
358         (WebCore::PainterOpenVG::drawText):
359         * platform/graphics/qt/FontQt.cpp:
360         (WebCore::drawTextCommon):
361         * platform/graphics/skia/PlatformContextSkia.cpp:
362         (WebCore::PlatformContextSkia::State::State):
363         (WebCore::PlatformContextSkia::getTextDrawingMode):
364         (WebCore::PlatformContextSkia::setTextDrawingMode):
365         * platform/graphics/skia/SkiaFontWin.cpp:
366         (WebCore::windowsCanHandleTextDrawing):
367         (WebCore::paintSkiaText):
368         * platform/graphics/texmap/TextureMapper.h:
369         (WebCore::TextureMapper::setTextDrawingMode):
370         (WebCore::TextureMapper::textDrawingMode):
371         (WebCore::TextureMapper::TextureMapper):
372         * platform/graphics/win/FontCGWin.cpp:
373         (WebCore::drawGDIGlyphs):
374         (WebCore::Font::drawGlyphs):
375         * platform/graphics/wince/GraphicsContextWinCE.cpp:
376         (WebCore::GraphicsContext::drawText):
377         * rendering/InlineTextBox.cpp:
378         (WebCore::updateGraphicsContext):
379         * rendering/RenderSVGResourceGradient.cpp:
380         (WebCore::RenderSVGResourceGradient::applyResource):
381         * rendering/RenderSVGResourcePattern.cpp:
382         (WebCore::RenderSVGResourcePattern::applyResource):
383         * rendering/RenderSVGResourceSolidColor.cpp:
384         (WebCore::RenderSVGResourceSolidColor::applyResource):
385         * svg/SVGFont.cpp:
386         (WebCore::Font::drawTextUsingSVGFont):
387
388 2010-12-03  Chris Rogers  <crogers@google.com>
389
390         Reviewed by Kenneth Russell.
391
392         First steps to adding web audio files to build systems
393         https://bugs.webkit.org/show_bug.cgi?id=49952
394
395         No new tests since audio API is not yet implemented.
396
397         * CMakeLists.txt:
398         * DerivedSources.make:
399         * ForwardingHeaders/wtf/Complex.h: Added.
400         * GNUmakefile.am:
401         * WebCore.gyp/WebCore.gyp:
402         * WebCore.gypi:
403         * WebCore.pri:
404         * WebCore.pro:
405         * bindings/js/JSDOMWindowCustom.cpp:
406         (WebCore::JSDOMWindow::audioContext):
407         * features.pri:
408         * page/DOMWindow.idl:
409         * platform/audio/HRTFElevation.cpp:
410
411 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
412
413         Reviewed by David Levin.
414
415         Use String::adopt in TextCodecWinCE::decode
416         https://bugs.webkit.org/show_bug.cgi?id=50319
417
418         * platform/text/wince/TextCodecWinCE.cpp:
419         (WebCore::TextCodecWinCE::decode):
420
421 2010-12-03  Brady Eidson  <beidson@apple.com>
422
423         Reviewed by Anders Carlsson.
424
425         Groundwork for <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191
426         WebKit2 Authentication Support
427
428         * WebCore.exp.in:
429
430         Expose the AuthenticationClient for WK2 platforms (Windows already does this):
431         * platform/network/mac/AuthenticationChallenge.h:
432         * platform/network/mac/AuthenticationMac.mm:
433         (-[WebCoreAuthenticationClientAsChallengeSender client]):
434         (WebCore::AuthenticationChallenge::authenticationClient):
435
436         * platform/network/qt/AuthenticationChallenge.h:
437         (WebCore::AuthenticationChallenge::authenticationClient):
438
439 2010-12-03  Ryosuke Niwa  <rniwa@webkit.org>
440
441         Reviewed by Darin Adler.
442
443         REGRESSION: Crash when deleting text after textarea's value is modified on input event
444         https://bugs.webkit.org/show_bug.cgi?id=49962
445
446         The crash was caused by TypingCommand::deleteKeyPressed's reusing a typing command for
447         textarea's shadow DOM after its input event handler rewrote the value set by the typing command.
448         Because the reused typing command's ending selection was pointing at a shadow node
449         that has been detached from the document when the event handler set the new value,
450         rootEditableElement of the ending selection was null and caused the crash.
451
452         Fixed the bug by updating the ending selection of the last typing command when it differsfrom
453         that of the current selection held by the SelectionController in TypingCommand::deleteKeyPressed.
454         Also fixed similar bugs in forwardDeleteKeyPressed and insertText, and insertTextRunWithoutNewlines.
455
456         Tests: editing/input/set-value-on-input-and-delete.html
457                editing/input/set-value-on-input-and-forward-delete.html
458                editing/input/set-value-on-input-and-type-input.html
459                editing/input/set-value-on-input-and-type-textarea.html
460
461         * editing/InsertTextCommand.h: Added TypingCommand as a friend because it needs to update selection.
462         * editing/TypingCommand.cpp:
463         (WebCore::TypingCommand::deleteKeyPressed): Updates the last typing command's selection as needed.
464         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
465         (WebCore::TypingCommand::insertText): Ditto.
466         (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection): Added.
467         (WebCore::TypingCommand::insertTextRunWithoutNewlines): Updates InsertTextCommand's selection as needed.
468         * editing/TypingCommand.h:
469
470 2010-12-03  Daniel Cheng  <dcheng@chromium.org>
471
472         Reviewed by Tony Chang.
473
474         Dragging and dropping into an empty document crashes WebKit.
475         https://bugs.webkit.org/show_bug.cgi?id=48793
476
477         Remove the assert and update callers to check for a null return value.
478
479         Test: manual-tests/drop-in-empty-doc.html
480
481         * manual-tests/drop-in-empty-doc.html: Added.
482         * manual-tests/resources/drop-in-empty-doc.xhtml: Added.
483         * page/DragController.cpp:
484         (WebCore::elementUnderMouse):
485         (WebCore::DragController::tryDocumentDrag):
486         (WebCore::DragController::concludeEditDrag):
487
488 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
489
490         Reviewed by Andreas Kling.
491
492         Move Inspector generator logic into main CMakeLists.txt file
493         https://bugs.webkit.org/show_bug.cgi?id=50445
494
495         * CMakeLists.txt:
496
497 2010-12-03 Patrick Gansterer <paroga@webkit.org>
498
499         Reviewed by Andreas Kling.
500
501         Move StringWx.cpp into wtf directory
502         https://bugs.webkit.org/show_bug.cgi?id=50060
503
504         * WebCore.gypi:
505         * platform/text/wx/StringWx.cpp: Removed.
506
507 2010-12-03  Dimitri Glazkov  <dglazkov@chromium.org>
508
509         Reviewed by Darin Adler.
510
511         REGRESSION(r72783): DOMActivate fires multiple times from input type=file
512         https://bugs.webkit.org/show_bug.cgi?id=50396
513
514         Test: fast/events/shadow-boundary-crossing-2.html
515
516         * dom/EventContext.cpp: Reverted changes made in r72783.
517         * dom/EventContext.h: Ditto.
518         * dom/Node.cpp:
519         (WebCore::Node::containsIncludingShadowDOM): Added.
520         (WebCore::Node::dispatchGenericEvent): Reverted changes made in r72783.
521         * dom/Node.h: Added decl.
522         * html/HTMLLabelElement.cpp:
523         (WebCore::HTMLLabelElement::defaultEventHandler): Reverted changes made in r72783.
524
525 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
526
527         Reviewed by Andreas Kling.
528
529         Move StringBrew.cpp into wtf directory
530         https://bugs.webkit.org/show_bug.cgi?id=50058
531
532         * platform/text/brew/StringBrew.cpp: Removed.
533
534 2010-12-03  Patrick Gansterer  <paroga@webkit.org>
535
536         Reviewed by Andreas Kling.
537
538         Move StringHaiku.cpp into wtf directory
539         https://bugs.webkit.org/show_bug.cgi?id=50057
540
541         * platform/text/haiku/StringHaiku.cpp: Removed.
542
543 2010-12-03  Jessie Berlin  <jberlin@apple.com>
544
545         Reviewed by Sam Weinig.
546
547         Need a WebKit2 Equivalent of WebSecurityOrigin
548         https://bugs.webkit.org/show_bug.cgi?id=50170
549
550         * WebCore.exp.in:
551         Export the symbol for SecurityOrigin::createFromDatabaseIdentifier.
552
553 2010-12-03  Andras Becsi  <abecsi@inf.u-szeged.hu>
554
555         Unreviewed build fix after r73254.
556
557         [Qt][V8] Add missing headers to $headerIncludes rather than $implIncludes
558         because headers are needed by the generated .h files.
559
560         No new tests needed.
561
562         * bindings/scripts/CodeGeneratorV8.pm:
563
564 2010-12-03  Nikolas Zimmermann  <nzimmermann@rim.com>
565
566         Reviewed by Dirk Schulze.
567
568         1336 files in WebCore rebuild when you touch SVGNames
569         https://bugs.webkit.org/show_bug.cgi?id=42025
570
571         Remove global SVGNames.h dependency, as SVGAnimatedPropertyMacros.h included it.
572         This requires to add the SVGNames.h include to lots of cpp files.
573
574         No functional changes, thus no new tests.
575
576         * css/CSSCursorImageValue.cpp:
577         * css/CSSFontFaceSource.cpp:
578         * dom/Node.cpp:
579         * loader/cache/CachedFont.cpp:
580         * rendering/RenderSVGResourceClipper.cpp:
581         * rendering/RenderSVGResourceFilter.cpp:
582         * rendering/RenderSVGTransformableContainer.cpp:
583         * rendering/RenderSVGViewportContainer.cpp:
584         * rendering/SVGRenderTreeAsText.cpp:
585         * rendering/SVGResources.cpp:
586         * rendering/svg/RenderSVGTextPath.cpp:
587         * rendering/svg/SVGRootInlineBox.cpp:
588         * svg/SVGAnimateElement.cpp:
589         * svg/SVGAnimateMotionElement.cpp:
590         * svg/SVGAnimateTransformElement.cpp:
591         * svg/SVGDefsElement.cpp:
592         * svg/SVGFEBlendElement.cpp:
593         * svg/SVGFEDisplacementMapElement.cpp:
594         * svg/SVGFEMergeElement.cpp:
595         * svg/SVGFEMergeNodeElement.cpp:
596         * svg/SVGFEOffsetElement.cpp:
597         * svg/SVGFETileElement.cpp:
598         * svg/SVGFETurbulenceElement.cpp:
599         * svg/SVGFont.cpp:
600         * svg/SVGGElement.cpp:
601         * svg/SVGImageElement.cpp:
602         * svg/SVGLength.cpp:
603         * svg/SVGMPathElement.cpp:
604         * svg/SVGPathElement.cpp:
605         * svg/SVGPathSegList.cpp:
606         * svg/SVGStyledTransformableElement.cpp:
607         * svg/SVGSymbolElement.cpp:
608         * svg/SVGTextContentElement.cpp:
609         * svg/SVGTextElement.cpp:
610         * svg/SVGTextPathElement.cpp:
611         * svg/SVGUseElement.cpp:
612         * svg/SVGViewSpec.cpp:
613         * svg/animation/SMILTimeContainer.cpp:
614         * svg/properties/SVGAnimatedPropertyMacros.h:
615         * svg/properties/SVGPathSegListPropertyTearOff.cpp:
616
617 2010-12-02  Philippe Normand  <pnormand@igalia.com>
618
619         Reviewed by Martin Robinson.
620
621         [GStreamer] hasVideo/Audio return false until the pipeline reaches PAUSED
622         https://bugs.webkit.org/show_bug.cgi?id=50382
623
624         Go to PAUSED even if preload is deactivated. In that case don't
625         process the GStreamer state changes until commitLoad() has been
626         called. This patch also fixes hasVideo and hasAudio methods,
627         making them reactive to the playbin2 audio/video tags-changed
628         signals.
629
630         Test: media/controls-without-preload.html
631
632         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
633         (WebCore::mediaPlayerPrivateMessageCallback):
634         (WebCore::mediaPlayerPrivateVideoTagsChangedCallback):
635         (WebCore::mediaPlayerPrivateAudioTagsChangedCallback):
636         (WebCore::mediaPlayerPrivateAudioTagsChangeTimeoutCallback):
637         (WebCore::mediaPlayerPrivateVideoTagsChangeTimeoutCallback):
638         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
639         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
640         (WebCore::MediaPlayerPrivateGStreamer::load):
641         (WebCore::MediaPlayerPrivateGStreamer::commitLoad):
642         (WebCore::MediaPlayerPrivateGStreamer::videoTagsChanged):
643         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideoTags):
644         (WebCore::MediaPlayerPrivateGStreamer::audioTagsChanged):
645         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudioTags):
646         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
647         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
648         (WebCore::MediaPlayerPrivateGStreamer::hasVideo):
649         (WebCore::MediaPlayerPrivateGStreamer::hasAudio):
650         (WebCore::MediaPlayerPrivateGStreamer::loadDelayed):
651
652 2010-12-03  Nikolas Zimmermann  <nzimmermann@rim.com>
653
654         Reviewed by Dirk Schulze.
655
656         Finish splitting DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for the remaining SVGAnimated* types
657         https://bugs.webkit.org/show_bug.cgi?id=50440
658
659         Continuing the work on bug 42025: Introduce (DECLARE|DEFINE)_ANIMATED_(ANGLE|BOOLEAN|INTEGER|PRESERVEASPECTRATIO|RECT).
660         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
661
662         No functional changes, thus no new tests.
663
664         * svg/SVGAElement.cpp:
665         * svg/SVGAElement.h:
666         * svg/SVGAnimatedAngle.h:
667         * svg/SVGAnimatedBoolean.h:
668         * svg/SVGAnimatedInteger.h:
669         * svg/SVGAnimatedPreserveAspectRatio.h:
670         * svg/SVGAnimatedRect.h:
671         * svg/SVGAnimationElement.cpp:
672         * svg/SVGAnimationElement.h:
673         (WebCore::SVGAnimationElement::calculateDistance):
674         (WebCore::SVGAnimationElement::animationPath):
675         * svg/SVGCircleElement.cpp:
676         * svg/SVGCircleElement.h:
677         * svg/SVGClipPathElement.cpp:
678         * svg/SVGClipPathElement.h:
679         * svg/SVGCursorElement.cpp:
680         * svg/SVGCursorElement.h:
681         * svg/SVGDefsElement.cpp:
682         * svg/SVGDefsElement.h:
683         * svg/SVGEllipseElement.cpp:
684         * svg/SVGEllipseElement.h:
685         * svg/SVGFEConvolveMatrixElement.cpp:
686         * svg/SVGFEConvolveMatrixElement.h:
687         * svg/SVGFEImageElement.cpp:
688         * svg/SVGFEImageElement.h:
689         * svg/SVGFETurbulenceElement.cpp:
690         * svg/SVGFETurbulenceElement.h:
691         * svg/SVGFilterElement.cpp:
692         * svg/SVGFilterElement.h:
693         * svg/SVGFilterPrimitiveStandardAttributes.h:
694         * svg/SVGFontElement.cpp:
695         (WebCore::SVGFontElement::firstMissingGlyphElement):
696         (WebCore::SVGFontElement::ensureGlyphCache):
697         * svg/SVGFontElement.h:
698         * svg/SVGForeignObjectElement.cpp:
699         * svg/SVGForeignObjectElement.h:
700         * svg/SVGGElement.cpp:
701         * svg/SVGGElement.h:
702         (WebCore::SVGGElement::isShadowTreeContainerElement):
703         (WebCore::SVGGElement::isValid):
704         * svg/SVGGradientElement.cpp:
705         * svg/SVGGradientElement.h:
706         * svg/SVGImageElement.cpp:
707         * svg/SVGImageElement.h:
708         * svg/SVGLineElement.cpp:
709         * svg/SVGLineElement.h:
710         * svg/SVGLinearGradientElement.h:
711         * svg/SVGMPathElement.cpp:
712         * svg/SVGMPathElement.h:
713         * svg/SVGMarkerElement.cpp:
714         * svg/SVGMarkerElement.h:
715         * svg/SVGMaskElement.cpp:
716         * svg/SVGMaskElement.h:
717         * svg/SVGPathElement.cpp:
718         * svg/SVGPathElement.h:
719         * svg/SVGPatternElement.cpp:
720         * svg/SVGPatternElement.h:
721         * svg/SVGPolyElement.cpp:
722         * svg/SVGPolyElement.h:
723         * svg/SVGRadialGradientElement.h:
724         * svg/SVGRectElement.cpp:
725         * svg/SVGRectElement.h:
726         * svg/SVGSVGElement.cpp:
727         (WebCore::SVGSVGElement::contentScriptType):
728         (WebCore::SVGSVGElement::contentStyleType):
729         (WebCore::SVGSVGElement::parseMappedAttribute):
730         * svg/SVGSVGElement.h:
731         * svg/SVGScriptElement.cpp:
732         * svg/SVGScriptElement.h:
733         * svg/SVGSwitchElement.cpp:
734         * svg/SVGSwitchElement.h:
735         (WebCore::SVGSwitchElement::isValid):
736         * svg/SVGSymbolElement.cpp:
737         * svg/SVGSymbolElement.h:
738         (WebCore::SVGSymbolElement::rendererIsNeeded):
739         * svg/SVGTextContentElement.cpp:
740         * svg/SVGTextContentElement.h:
741         * svg/SVGUseElement.cpp:
742         * svg/SVGUseElement.h:
743         * svg/SVGViewElement.cpp:
744         * svg/SVGViewElement.h:
745         (WebCore::SVGViewElement::viewTarget):
746         (WebCore::SVGViewElement::rendererIsNeeded):
747         * svg/SVGViewSpec.cpp:
748         * svg/SVGViewSpec.h:
749         (WebCore::SVGViewSpec::transform):
750         (WebCore::SVGViewSpec::viewTargetString):
751         (WebCore::SVGViewSpec::contextElement):
752         * svg/properties/SVGAnimatedPropertyMacros.h:
753
754 2010-12-03  Noel Gordon  <noel.gordon@gmail.com>
755
756         Reviewed by Darin Fisher.
757
758         [chromium] PNG encoder leaks memory on png_write_row errors.
759         https://bugs.webkit.org/show_bug.cgi?id=50439
760
761         Move the creation of needed C++ objects before the setjmp() point so
762         those objects have their destructors called if libpng errors invoke
763         the setjmp() return path.
764    
765         Other minor cleanup: use the skia bitmap locker class, and remove the
766         PNGDestroyer class - instead directly call png_destroy_write_struct()
767         at each of the encodeImpl() return points.
768
769         No change in behaviour, so no new tests.
770
771         * platform/image-encoders/skia/PNGImageEncoder.cpp:
772         (WebCore::encodeImpl):
773         (WebCore::PNGImageEncoder::encode):
774
775 2010-12-02  Philippe Normand  <pnormand@igalia.com>
776
777         Reviewed by Eric Carlson.
778
779         Theme not updated when MediaPlayer m_private engine changes
780         https://bugs.webkit.org/show_bug.cgi?id=50228
781
782         Trigger a new rendering of the media element when the private
783         media-player backend is updated.
784
785         * html/HTMLMediaElement.cpp:
786         (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated):
787         * html/HTMLMediaElement.h:
788         * platform/graphics/MediaPlayer.cpp:
789         (WebCore::MediaPlayer::MediaPlayer):
790         (WebCore::MediaPlayer::load):
791         * platform/graphics/MediaPlayer.h:
792         (WebCore::MediaPlayerClient::mediaPlayerEngineUpdated):
793
794 2010-12-03  Yonathan Randolph  <yonathan@gmail.com>
795
796         Reviewed by Alexey Proskuryakov.
797
798         XPath lexer misinterprets expression starting with "div".
799         https://bugs.webkit.org/show_bug.cgi?id=50366
800
801         * xml/XPathParser.cpp:
802         * xml/XPathParser.h:
803         (WebCore::XPath::Parser::isOperatorContext): removed (renamed)
804         (WebCore::XPath::Parser::isBinaryOperatorContext): added
805
806 2010-12-02  Rob Buis  <rwlbuis@gmail.com>
807
808         Reviewed by Alexey Proskuryakov.
809
810         CSS 2.1 failure: at-import-*
811         https://bugs.webkit.org/show_bug.cgi?id=47153
812
813         Fix at-import-010.htm by only setting m_allowImportRules
814         to false when creating valid style or page rules.
815  
816          Test: css2.1/t040105-import-10-b.html
817
818         * css/CSSParser.cpp:
819         (WebCore::CSSParser::createStyleRule):
820
821 2010-12-02  Aaron Boodman  <aa@chromium.org>
822
823         Reviewed by David Hyatt.
824
825         Reduce the number of cases where we end up with a stale value for
826         minimumPreferredLogicalWidth(). This isn't a complete fix, but fixes a
827         large number of cases.
828
829         RenderObject::minimumPreferredLogicalWidth() sometimes reports wrong value.
830         https://bugs.webkit.org/show_bug.cgi?id=50119
831
832         * rendering/RenderBox.cpp:
833         (WebCore::RenderBox::styleDidChange):
834
835 2010-12-02  Gregg Tavares  <gman@google.com>
836
837         Reviewed by David Levin.
838
839         Need to initialize destination variables before calling GL
840         https://bugs.webkit.org/show_bug.cgi?id=50048
841
842         No new tests because no change in functionality.
843
844         * html/canvas/WebGLFramebuffer.cpp:
845         (WebCore::WebGLFramebuffer::initializeRenderbuffers):
846         * html/canvas/WebGLProgram.cpp:
847         (WebCore::WebGLProgram::cacheActiveAttribLocations):
848         * html/canvas/WebGLRenderingContext.cpp:
849         (WebCore::WebGLRenderingContext::getAttachedShaders):
850         (WebCore::WebGLRenderingContext::getBufferParameter):
851         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
852         (WebCore::WebGLRenderingContext::getBooleanParameter):
853         (WebCore::WebGLRenderingContext::getFloatParameter):
854         (WebCore::WebGLRenderingContext::getLongParameter):
855         (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
856         * platform/graphics/chromium/LayerChromium.cpp:
857         (WebCore::loadShader):
858         (WebCore::LayerChromium::createShaderProgram):
859         * platform/graphics/chromium/LayerRendererChromium.cpp:
860         (WebCore::LayerRendererChromium::initializeSharedObjects):
861         * platform/graphics/gpu/DrawingBuffer.cpp:
862         (WebCore::DrawingBuffer::reset):
863         * platform/graphics/gpu/Shader.cpp:
864         (WebCore::Shader::loadProgram):
865
866 2010-12-02  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
867
868         Reviewed by Andreas Kling.
869
870         [Qt] Enable Web Timing for Qt
871         https://bugs.webkit.org/show_bug.cgi?id=42433
872
873         * features.pri: Enable Web Timing for trunk (but not yet for
874           production)
875
876 2010-12-02  Andy Estes  <aestes@apple.com>
877
878         Rubber-stamped by Mark Rowe.
879
880         Update bindings test results with new GObject results.
881
882         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
883         (WebKit::kit):
884         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
885         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
886         (WebKit::kit):
887         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
888         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
889         (WebKit::kit):
890         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
891         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
892         (WebKit::kit):
893         (webkit_dom_test_obj_obj_method):
894         (webkit_dom_test_obj_obj_method_with_args):
895         (webkit_dom_test_obj_method_that_requires_all_args):
896         (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
897         (webkit_dom_test_obj_with_script_state_obj):
898         (webkit_dom_test_obj_with_script_state_obj_exception):
899         (webkit_dom_test_obj_get_read_only_test_obj_attr):
900         (webkit_dom_test_obj_get_test_obj_attr):
901         (webkit_dom_test_obj_get_xml_obj_attr):
902         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
903
904 2010-12-02  Simon Fraser  <simon.fraser@apple.com>
905
906         Revert r73217 and r73227 because of continued bustage.
907
908         * WebCore.xcodeproj/project.pbxproj:
909         * platform/graphics/GraphicsLayer.h:
910         (WebCore::GraphicsLayer::nativeLayer):
911         * platform/graphics/ca/PlatformCAAnimation.h: Removed.
912         * platform/graphics/ca/PlatformCALayer.h: Removed.
913         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Removed.
914         * platform/graphics/ca/mac/PlatformCALayerMac.mm: Removed.
915         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
916         (WebCore::GraphicsLayerChromium::nativeLayer):
917         * platform/graphics/chromium/GraphicsLayerChromium.h:
918         * platform/graphics/mac/GraphicsLayerMac.h: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.h.
919         (WebCore::GraphicsLayerMac::hasContentsLayer):
920         (WebCore::GraphicsLayerMac::primaryLayer):
921         (WebCore::GraphicsLayerMac::isReplicatedRootClone):
922         (WebCore::GraphicsLayerMac::primaryLayerClones):
923         (WebCore::GraphicsLayerMac::animationIsRunning):
924         (WebCore::GraphicsLayerMac::contentsLayer):
925         (WebCore::GraphicsLayerMac::ReplicaState::ReplicaState):
926         (WebCore::GraphicsLayerMac::ReplicaState::push):
927         (WebCore::GraphicsLayerMac::ReplicaState::setBranchType):
928         (WebCore::GraphicsLayerMac::ReplicaState::pop):
929         (WebCore::GraphicsLayerMac::ReplicaState::depth):
930         (WebCore::GraphicsLayerMac::ReplicaState::replicaDepth):
931         (WebCore::GraphicsLayerMac::hasCloneLayers):
932         (WebCore::GraphicsLayerMac::LayerPropertyAnimation::LayerPropertyAnimation):
933         (WebCore::GraphicsLayerMac::AnimationProcessingAction::AnimationProcessingAction):
934         * platform/graphics/mac/GraphicsLayerMac.mm: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.cpp.
935         (WebCore::currentTimeToMediaTime):
936         (WebCore::mediaTimeToCurrentTime):
937         (-[WebAnimationDelegate animationDidStart:]):
938         (-[WebAnimationDelegate WebCore::]):
939         (-[WebAnimationDelegate setLayer:WebCore::]):
940         (WebCore::copyTransform):
941         (WebCore::getTransformFunctionValue):
942         (WebCore::getValueFunctionNameForTransformOperation):
943         (WebCore::propertyIdToString):
944         (WebCore::animationIdentifier):
945         (WebCore::getCAMediaTimingFunction):
946         (WebCore::setLayerBorderColor):
947         (WebCore::clearBorderColor):
948         (WebCore::setLayerBackgroundColor):
949         (WebCore::clearLayerBackgroundColor):
950         (WebCore::safeSetSublayers):
951         (WebCore::caValueFunctionSupported):
952         (WebCore::forceSoftwareAnimation):
953         (WebCore::nullActionsDictionary):
954         (WebCore::animationHasStepsTimingFunction):
955         (WebCore::GraphicsLayer::create):
956         (WebCore::GraphicsLayerMac::GraphicsLayerMac):
957         (WebCore::GraphicsLayerMac::~GraphicsLayerMac):
958         (WebCore::GraphicsLayerMac::setName):
959         (WebCore::GraphicsLayerMac::nativeLayer):
960         (WebCore::GraphicsLayerMac::setChildren):
961         (WebCore::GraphicsLayerMac::addChild):
962         (WebCore::GraphicsLayerMac::addChildAtIndex):
963         (WebCore::GraphicsLayerMac::addChildBelow):
964         (WebCore::GraphicsLayerMac::addChildAbove):
965         (WebCore::GraphicsLayerMac::replaceChild):
966         (WebCore::GraphicsLayerMac::removeFromParent):
967         (WebCore::GraphicsLayerMac::setMaskLayer):
968         (WebCore::GraphicsLayerMac::setReplicatedLayer):
969         (WebCore::GraphicsLayerMac::setReplicatedByLayer):
970         (WebCore::GraphicsLayerMac::setPosition):
971         (WebCore::GraphicsLayerMac::setAnchorPoint):
972         (WebCore::GraphicsLayerMac::setSize):
973         (WebCore::GraphicsLayerMac::setTransform):
974         (WebCore::GraphicsLayerMac::setChildrenTransform):
975         (WebCore::GraphicsLayerMac::moveOrCopyLayerAnimation):
976         (WebCore::GraphicsLayerMac::moveOrCopyAnimationsForProperty):
977         (WebCore::GraphicsLayerMac::setPreserves3D):
978         (WebCore::GraphicsLayerMac::setMasksToBounds):
979         (WebCore::GraphicsLayerMac::setDrawsContent):
980         (WebCore::GraphicsLayerMac::setBackgroundColor):
981         (WebCore::GraphicsLayerMac::clearBackgroundColor):
982         (WebCore::GraphicsLayerMac::setContentsOpaque):
983         (WebCore::GraphicsLayerMac::setBackfaceVisibility):
984         (WebCore::GraphicsLayerMac::setOpacity):
985         (WebCore::GraphicsLayerMac::setNeedsDisplay):
986         (WebCore::GraphicsLayerMac::setNeedsDisplayInRect):
987         (WebCore::GraphicsLayerMac::setContentsNeedsDisplay):
988         (WebCore::GraphicsLayerMac::setContentsRect):
989         (WebCore::GraphicsLayerMac::addAnimation):
990         (WebCore::GraphicsLayerMac::pauseAnimation):
991         (WebCore::GraphicsLayerMac::removeAnimation):
992         (WebCore::GraphicsLayerMac::animationDidStart):
993         (WebCore::GraphicsLayerMac::setContentsToImage):
994         (WebCore::GraphicsLayerMac::setContentsToMedia):
995         (WebCore::GraphicsLayerMac::didDisplay):
996         (WebCore::GraphicsLayerMac::syncCompositingState):
997         (WebCore::GraphicsLayerMac::syncCompositingStateForThisLayerOnly):
998         (WebCore::GraphicsLayerMac::recursiveCommitChanges):
999         (WebCore::GraphicsLayerMac::commitLayerChangesBeforeSublayers):
1000         (WebCore::GraphicsLayerMac::commitLayerChangesAfterSublayers):
1001         (WebCore::GraphicsLayerMac::updateLayerNames):
1002         (WebCore::GraphicsLayerMac::updateSublayerList):
1003         (WebCore::GraphicsLayerMac::updateLayerPosition):
1004         (WebCore::GraphicsLayerMac::updateLayerSize):
1005         (WebCore::GraphicsLayerMac::updateAnchorPoint):
1006         (WebCore::GraphicsLayerMac::updateTransform):
1007         (WebCore::GraphicsLayerMac::updateChildrenTransform):
1008         (WebCore::GraphicsLayerMac::updateMasksToBounds):
1009         (WebCore::GraphicsLayerMac::updateContentsOpaque):
1010         (WebCore::GraphicsLayerMac::updateBackfaceVisibility):
1011         (WebCore::GraphicsLayerMac::updateStructuralLayer):
1012         (WebCore::GraphicsLayerMac::ensureStructuralLayer):
1013         (WebCore::GraphicsLayerMac::structuralLayerPurpose):
1014         (WebCore::GraphicsLayerMac::updateLayerDrawsContent):
1015         (WebCore::GraphicsLayerMac::updateLayerBackgroundColor):
1016         (WebCore::GraphicsLayerMac::updateContentsImage):
1017         (WebCore::GraphicsLayerMac::updateContentsMediaLayer):
1018         (WebCore::GraphicsLayerMac::updateContentsCanvasLayer):
1019         (WebCore::GraphicsLayerMac::updateContentsRect):
1020         (WebCore::GraphicsLayerMac::updateMaskLayer):
1021         (WebCore::GraphicsLayerMac::updateReplicatedLayers):
1022         (WebCore::GraphicsLayerMac::ReplicaState::cloneID):
1023         (WebCore::GraphicsLayerMac::replicatedLayerRoot):
1024         (WebCore::GraphicsLayerMac::updateLayerAnimations):
1025         (WebCore::GraphicsLayerMac::setCAAnimationOnLayer):
1026         (WebCore::bug7311367Workaround):
1027         (WebCore::GraphicsLayerMac::removeCAAnimationFromLayer):
1028         (WebCore::copyAnimationProperties):
1029         (WebCore::GraphicsLayerMac::pauseCAAnimationOnLayer):
1030         (WebCore::GraphicsLayerMac::setContentsToCanvas):
1031         (WebCore::GraphicsLayerMac::repaintLayerDirtyRects):
1032         (WebCore::GraphicsLayerMac::updateContentsNeedsDisplay):
1033         (WebCore::GraphicsLayerMac::createAnimationFromKeyframes):
1034         (WebCore::GraphicsLayerMac::createTransformAnimationsFromKeyframes):
1035         (WebCore::GraphicsLayerMac::createBasicAnimation):
1036         (WebCore::GraphicsLayerMac::createKeyframeAnimation):
1037         (WebCore::GraphicsLayerMac::setupAnimation):
1038         (WebCore::GraphicsLayerMac::timingFunctionForAnimationValue):
1039         (WebCore::GraphicsLayerMac::setAnimationEndpoints):
1040         (WebCore::GraphicsLayerMac::setAnimationKeyframes):
1041         (WebCore::GraphicsLayerMac::setTransformAnimationEndpoints):
1042         (WebCore::GraphicsLayerMac::setTransformAnimationKeyframes):
1043         (WebCore::GraphicsLayerMac::suspendAnimations):
1044         (WebCore::GraphicsLayerMac::resumeAnimations):
1045         (WebCore::GraphicsLayerMac::hostLayerForSublayers):
1046         (WebCore::GraphicsLayerMac::layerForSuperlayer):
1047         (WebCore::GraphicsLayerMac::animatedLayer):
1048         (WebCore::GraphicsLayerMac::animatedLayerClones):
1049         (WebCore::GraphicsLayerMac::platformLayer):
1050         (WebCore::GraphicsLayerMac::setDebugBackgroundColor):
1051         (WebCore::GraphicsLayerMac::setDebugBorder):
1052         (WebCore::GraphicsLayerMac::constrainedSize):
1053         (WebCore::GraphicsLayerMac::requiresTiledLayer):
1054         (WebCore::GraphicsLayerMac::swapFromOrToTiledLayer):
1055         (WebCore::GraphicsLayerMac::defaultContentsOrientation):
1056         (WebCore::GraphicsLayerMac::updateContentsTransform):
1057         (WebCore::GraphicsLayerMac::setupContentsLayer):
1058         (WebCore::GraphicsLayerMac::findOrMakeClone):
1059         (WebCore::GraphicsLayerMac::ensureCloneLayers):
1060         (WebCore::GraphicsLayerMac::removeCloneLayers):
1061         (WebCore::GraphicsLayerMac::positionForCloneRootLayer):
1062         (WebCore::GraphicsLayerMac::propagateLayerChangeToReplicas):
1063         (WebCore::GraphicsLayerMac::fetchCloneLayers):
1064         (WebCore::GraphicsLayerMac::cloneLayer):
1065         (WebCore::GraphicsLayerMac::setOpacityInternal):
1066         (WebCore::GraphicsLayerMac::updateOpacityOnLayer):
1067         (WebCore::GraphicsLayerMac::noteSublayersChanged):
1068         (WebCore::GraphicsLayerMac::noteLayerPropertyChanged):
1069         * platform/graphics/mac/WebLayer.h:
1070         * platform/graphics/mac/WebLayer.mm:
1071         (-[WebLayer initWithLayer:]):
1072         (-[WebLayer setNeedsDisplay]):
1073         (-[WebLayer setNeedsDisplayInRect:]):
1074         (-[WebLayer display]):
1075         (-[WebLayer drawInContext:]):
1076         (-[WebLayer setLayerOwner:]):
1077         (-[WebLayer layerOwner]):
1078         * platform/graphics/mac/WebTiledLayer.h:
1079         * platform/graphics/mac/WebTiledLayer.mm:
1080         (-[WebTiledLayer initWithLayer:]):
1081         (-[WebTiledLayer setNeedsDisplay]):
1082         (-[WebTiledLayer setNeedsDisplayInRect:]):
1083         (-[WebTiledLayer display]):
1084         (-[WebTiledLayer drawInContext:]):
1085         (-[WebTiledLayer setLayerOwner:]):
1086         (-[WebTiledLayer layerOwner]):
1087         * platform/graphics/qt/GraphicsLayerQt.cpp:
1088         (WebCore::GraphicsLayerQtImpl::flushChanges):
1089         (WebCore::GraphicsLayerQt::nativeLayer):
1090         * platform/graphics/qt/GraphicsLayerQt.h:
1091         * platform/graphics/win/GraphicsLayerCACF.cpp:
1092         (WebCore::GraphicsLayerCACF::nativeLayer):
1093         * platform/graphics/win/GraphicsLayerCACF.h:
1094
1095 2010-12-02  Noel Gordon  <noel.gordon@gmail.com>
1096
1097         Reviewed by David Levin.
1098         [chromium] Remove dead code from PNG encoder
1099         https://bugs.webkit.org/show_bug.cgi?id=50377
1100
1101         Also webkit style the PNG encoder files.
1102
1103         No change in behaviour, so no new tests.
1104
1105         * platform/image-encoders/skia/PNGImageEncoder.cpp:
1106         (WebCore::encodeImpl):
1107         (WebCore::PNGImageEncoder::encode):
1108         * platform/image-encoders/skia/PNGImageEncoder.h:
1109
1110 2010-12-02  Yuta Kitamura  <yutak@chromium.org>
1111
1112         Reviewed by Alexey Proskuryakov.
1113
1114         An attempt to fix Chromium's clang build.
1115
1116         Implement (non-EventListener) marquee IDL attributes from HTML5.
1117         https://bugs.webkit.org/show_bug.cgi?id=49786
1118
1119         * rendering/style/RenderStyle.h:
1120         (WebCore::InheritedFlags::initialMarqueeSpeed):
1121
1122 2010-12-02  Mikhail Naganov  <mnaganov@chromium.org>
1123
1124         Reviewed by Pavel Feldman.
1125
1126         Web Inspector: Fix heap snapshots loading. Loading is now
1127         conducted by the Profiles panel which prevents accidental
1128         simultaneous attempts to load the same profile several times in
1129         parallel.
1130
1131         https://bugs.webkit.org/show_bug.cgi?id=50427
1132
1133         * inspector/front-end/HeapSnapshotView.js:
1134         (WebInspector.HeapSnapshotView.prototype._loadProfile):
1135         (WebInspector.HeapSnapshotView.prototype.processLoadedSnapshot):
1136         * inspector/front-end/ProfilesPanel.js:
1137         (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
1138         (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
1139         (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
1140
1141 2010-12-02  Chris Marrin  <cmarrin@apple.com>
1142
1143         Reviewed by Simon Fraser.
1144
1145         Fix Leopard build broken by http://trac.webkit.org/changeset/73217
1146
1147         * platform/graphics/ca/GraphicsLayerCA.cpp:
1148         (WebCore::getTransformFunctionValue):
1149         (WebCore::GraphicsLayerCA::updateContentsTransform):
1150         * platform/graphics/ca/PlatformCALayer.h:
1151         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
1152         (PlatformCAAnimation::valueFunction):
1153         (PlatformCAAnimation::setValueFunction):
1154         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1155         (PlatformCALayer::PlatformCALayer):
1156         (PlatformCALayer::anchorPoint):
1157         (PlatformCALayer::setAnchorPoint):
1158         (PlatformCALayer::contentsTransform):
1159         (PlatformCALayer::setContentsTransform):
1160         (PlatformCALayer::isGeometryFlipped):
1161         (PlatformCALayer::setGeometryFlipped):
1162         (PlatformCALayer::setMinificationFilter):
1163         (PlatformCALayer::setMagnificationFilter):
1164
1165 2010-12-02  Dan Bernstein  <mitz@apple.com>
1166
1167         Reviewed by Dave Hyatt.
1168
1169         CSS support for the text-emphasis properties
1170         https://bugs.webkit.org/show_bug.cgi?id=48539
1171
1172         Test: fast/css/parsing-text-emphasis.html
1173
1174         * css/CSSComputedStyleDeclaration.cpp:
1175         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added text-emphasis-color,
1176         text-emphasis-position and text-emphasis-style. Left the text-emphasis shorthand unsupported.
1177         * css/CSSParser.cpp:
1178         (WebCore::CSSParser::parseValue): Parse the properties.
1179         (WebCore::CSSParser::parseTextEmphasisStyle): Added.
1180         * css/CSSParser.h:
1181         * css/CSSPrimitiveValueMappings.h:
1182         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added TextEmphasisPosition, TextEmphasisFill
1183         and TextEmphasisMark mappings.
1184         (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition): Added.
1185         (WebCore::CSSPrimitiveValue::operator TextEmphasisFill): Added.
1186         (WebCore::CSSPrimitiveValue::operator TextEmphasisMark): Added.
1187         * css/CSSPropertyLonghand.cpp:
1188         (WebCore::initShorthandMap): Added the text-emphasis shorthand.
1189         * css/CSSPropertyNames.in: Added -webkit-text-emphasis, -webkit-text-emphasis-color,
1190         -webkit-text-emphasis-position, and -webkit-text-emphasis-style.
1191         * css/CSSStyleSelector.cpp:
1192         (WebCore::isValidVisitedLinkProperty): Added text-emphasis-color.
1193         (WebCore::CSSStyleSelector::applyProperty): Handle the properties.
1194         * css/CSSValueKeywords.in: Added 'over' and 'under' for text-emphasis-position. Added 'dot',
1195         'double-circle', 'triangle', 'sesame', 'filled' and 'open' for text-emphasis-style.
1196         * rendering/style/RenderStyle.cpp:
1197         (WebCore::RenderStyle::colorIncludingFallback): Handle text-emphasis-color.
1198         (WebCore::RenderStyle::textEmphasisMark): Added. Maps the fake 'auto' value to 'dot' or
1199         'sesame' based on writing direction.
1200         * rendering/style/RenderStyle.h: Added accessors.
1201         (WebCore::InheritedFlags::textEmphasisFill):
1202         (WebCore::InheritedFlags::textEmphasisCustomMark):
1203         (WebCore::InheritedFlags::textEmphasisPosition):
1204         (WebCore::InheritedFlags::setTextEmphasisColor):
1205         (WebCore::InheritedFlags::setTextEmphasisFill):
1206         (WebCore::InheritedFlags::setTextEmphasisMark):
1207         (WebCore::InheritedFlags::setTextEmphasisCustomMark):
1208         (WebCore::InheritedFlags::setTextEmphasisPosition):
1209         (WebCore::InheritedFlags::initialTextEmphasisColor):
1210         (WebCore::InheritedFlags::initialTextEmphasisFill):
1211         (WebCore::InheritedFlags::initialTextEmphasisMark):
1212         (WebCore::InheritedFlags::initialTextEmphasisCustomMark):
1213         (WebCore::InheritedFlags::initialTextEmphasisPosition):
1214         (WebCore::InheritedFlags::textEmphasisColor):
1215         * rendering/style/RenderStyleConstants.h:
1216         * rendering/style/StyleRareInheritedData.cpp:
1217         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1218         (WebCore::StyleRareInheritedData::operator==):
1219         * rendering/style/StyleRareInheritedData.h:
1220
1221 2010-12-02  Chris Marrin  <cmarrin@apple.com>
1222
1223         Reviewed by Simon Fraser.
1224
1225         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
1226         https://bugs.webkit.org/show_bug.cgi?id=49388
1227
1228         Replaced GraphicsLayerMac with GraphicsLayerCA. GraphicsLayerCA is essentially 
1229         identical to GraphicsLayerMac, but replaces all the CoreAnimation specific calls 
1230         with calls to PlatformCALayer and PlatformCAAnimation. This makes GraphicsLayerCA 
1231         platform neutral as long as implementations of those two classes are available. 
1232         Added implementations in PlatformCALayerMac and PlatformCAAnimationMac. Also got 
1233         rid of GraphicsLayer::nativeLayer() and replaced it with GraphicsLayer::platformLayer() 
1234         to avoid confusion since both names were used to refer to the same thing. 
1235
1236         This patch is only for Mac. Windows implementation has not changed.
1237
1238         * WebCore.xcodeproj/project.pbxproj:
1239         * platform/graphics/GraphicsLayer.h:
1240         * platform/graphics/ca: Added.
1241         * platform/graphics/ca/GraphicsLayerCA.cpp: Added.
1242         * platform/graphics/ca/GraphicsLayerCA.h: Added.
1243         * platform/graphics/ca/PlatformCAAnimation.h: Added.
1244         * platform/graphics/ca/PlatformCALayer.h: Added.
1245         * platform/graphics/ca/mac: Added.
1246         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Added.
1247         * platform/graphics/ca/mac/PlatformCALayerMac.mm: Added.
1248         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1249         * platform/graphics/chromium/GraphicsLayerChromium.h:
1250         * platform/graphics/mac/GraphicsLayerMac.h: Removed.
1251         * platform/graphics/mac/GraphicsLayerMac.mm: Removed.
1252         * platform/graphics/mac/WebLayer.h:
1253         * platform/graphics/mac/WebLayer.mm:
1254         * platform/graphics/mac/WebTiledLayer.h:
1255         * platform/graphics/mac/WebTiledLayer.mm:
1256         * platform/graphics/qt/GraphicsLayerQt.cpp:
1257         * platform/graphics/qt/GraphicsLayerQt.h:
1258         * platform/graphics/win/GraphicsLayerCACF.cpp:
1259         * platform/graphics/win/GraphicsLayerCACF.h:
1260
1261 2010-12-02  Joseph Pecoraro  <joepeck@webkit.org>
1262
1263         Reviewed by Darin Adler.
1264
1265         Update ResourceLoaderSet Enumeration
1266         https://bugs.webkit.org/show_bug.cgi?id=50405
1267
1268         Use size_t when working with Vectors and when comparing between size_t types.
1269
1270         * loader/DocumentLoader.cpp:
1271         (WebCore::cancelAll):
1272         (WebCore::setAllDefersLoading):
1273
1274 2010-12-02  Jian Li  <jianli@chromium.org>
1275
1276         Reviewed by Kenneth Russell.
1277
1278         Integer calculation issues in DataView constructor
1279         https://bugs.webkit.org/show_bug.cgi?id=50354
1280
1281         Test: fast/canvas/webgl/data-view-crash.html
1282
1283         * html/canvas/DataView.cpp:
1284         (WebCore::DataView::create):
1285
1286 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
1287
1288         Reviewed by Darin Adler.
1289
1290         Add AtomicString::fromUTF8
1291         https://bugs.webkit.org/show_bug.cgi?id=45594
1292
1293         Use AtomicString::fromUTF8 directly in the libxml2 parser.
1294
1295         * dom/XMLDocumentParserLibxml2.cpp:
1296         (WebCore::toAtomicString):
1297
1298 2010-12-02  Andy Estes  <aestes@apple.com>
1299
1300         Fix the Qt Linux Release minimal build.
1301
1302         * html/HTMLMarqueeElement.cpp: Include ExceptionCode.h
1303
1304 2010-12-02  Joseph Pecoraro  <joepeck@webkit.org>
1305
1306         Reviewed by Darin Adler.
1307
1308         Update ResourceLoaderSet Enumeration
1309         https://bugs.webkit.org/show_bug.cgi?id=50405
1310
1311         * loader/DocumentLoader.cpp:
1312         (WebCore::cancelAll): instead of copying the HashSet, use copyToVector.
1313         (WebCore::setAllDefersLoading): instead of copying the HashSet, use copyToVector.
1314
1315 2010-12-02  Andy Estes  <aestes@apple.com>
1316
1317         Reviewed by Darin Adler.
1318
1319         Implement (non-EventListener) marquee IDL attributes from HTML5.
1320         https://bugs.webkit.org/show_bug.cgi?id=49786
1321
1322         Test: fast/html/marquee-element.html
1323
1324         * html/HTMLMarqueeElement.cpp:
1325         (WebCore::HTMLMarqueeElement::scrollAmount): If the content attribute
1326         can be converted to a signed integer and is >= 0, return it.
1327         Otherwise, return the default scrollAmount value.
1328         (WebCore::HTMLMarqueeElement::setScrollAmount): Update the content
1329         attribute if it is >= 0. Otherwise, raise INDEX_SIZE_ERR.
1330         (WebCore::HTMLMarqueeElement::scrollDelay): Same as scrollAmount.
1331         (WebCore::HTMLMarqueeElement::setScrollDelay): Same as setScrollAmount.
1332         (WebCore::HTMLMarqueeElement::loop): If the content attribute can be
1333         converted to a signed integer and is greater than 0 or equal to -1,
1334         return it. Otherwise, return the default loop value.
1335         (WebCore::HTMLMarqueeElement::setLoop): Update the content attribute if
1336         it is greater than 0 or equal to -1. Otherwise, raise INDEX_SIZE_ERR.
1337         * html/HTMLMarqueeElement.h:
1338         * html/HTMLMarqueeElement.idl: Update the IDL to match what is in HTML5.
1339         * rendering/style/RenderStyle.h:
1340         (WebCore::InheritedFlags::initialMarqueeSpeed):
1341
1342 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
1343
1344         Reviewed by Andreas Kling.
1345
1346         [OpenVG] Remove "current path" of GraphicsContext
1347         https://bugs.webkit.org/show_bug.cgi?id=50294
1348
1349         * platform/graphics/GraphicsContext.h:
1350         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
1351         (WebCore::GraphicsContext::fillPath):
1352         (WebCore::GraphicsContext::strokePath):
1353         (WebCore::GraphicsContext::clipPath):
1354         * platform/graphics/openvg/PainterOpenVG.cpp:
1355         (WebCore::PainterOpenVG::PainterOpenVG):
1356         (WebCore::PainterOpenVG::~PainterOpenVG):
1357         (WebCore::PainterOpenVG::drawPath):
1358         * platform/graphics/openvg/PainterOpenVG.h:
1359
1360 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
1361
1362         Reviewed by Andreas Kling.
1363
1364         [WINCE] Remove "current path" of GraphicsContext
1365         https://bugs.webkit.org/show_bug.cgi?id=50284
1366
1367         * platform/graphics/GraphicsContext.h:
1368         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1369         (WebCore::GraphicsContext::fillPath):
1370         (WebCore::GraphicsContext::strokePath):
1371
1372 2010-12-02  Johnny Ding  <jnd@chromium.org>
1373
1374         Reviewed by Adam Barth.
1375
1376         Set the right gesture status for URL redirections.
1377         https://bugs.webkit.org/show_bug.cgi?id=47817
1378
1379         Tests: fast/frames/location-redirect-user-gesture.html
1380                fast/frames/meta-refresh-user-gesture.html
1381
1382         * loader/NavigationScheduler.cpp:
1383         (WebCore::ScheduledNavigation::clearUserGesture):
1384         (WebCore::ScheduledRedirect::ScheduledRedirect):
1385
1386 2010-12-02  Chris Rogers  <crogers@google.com>
1387
1388         Reviewed by Kenneth Russell.
1389
1390         AudioContext needs createBuffer() method from ArrayBuffer
1391         https://bugs.webkit.org/show_bug.cgi?id=50343
1392
1393         No new tests since audio API is not yet implemented.
1394
1395         * webaudio/AudioContext.cpp:
1396         (WebCore::AudioContext::createBuffer):
1397         * webaudio/AudioContext.h:
1398         * webaudio/AudioContext.idl:
1399
1400 2010-12-02  Noel Gordon  <noel.gordon@gmail.com>
1401
1402         Reviewed by David Levin.
1403
1404         [chromium] Add canvas.toDataURL("image/jpeg", quality) support
1405         https://bugs.webkit.org/show_bug.cgi?id=49365
1406
1407         Adds a libjpeg-based image encoder for Skia bitmaps.  Default encoding quality
1408         is 92 to match Mozilla, also Safari, though the actual value used by Safari is
1409         undocumented, and it appears to pre-blur images prior to compression.
1410
1411         The preMultipliedBGRAtoRGB() routine restores the un-premultiplied RGB colors
1412         where there is non-zero alpha.  Again, this matches Firefox and Safari, but no
1413         browser conforms to the HTML5 canvas standard here, I believe, considering the
1414         result of canvas/philip/tests/toDataURL.jpeg.alpha.html; that test ignores the
1415         alpha channel when extracting an "image/jpeg".toDataURL().  The correct answer
1416         needs more investigation, bug http://webkit.org/b/40147.
1417
1418         Canvas toDataURL is covered by existing tests canvas/philip/tests/toDataURL.*,
1419         and fast/canvas/*toDataURL* tests.
1420
1421         * WebCore.gypi:
1422         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1423         (WebCore::V8HTMLCanvasElement::toDataURLCallback): don't set encoding quality
1424         here, just pass the toDataURL parameters through to the canvas layer.
1425         * platform/chromium/MIMETypeRegistryChromium.cpp:
1426         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): implement
1427         the supported mimeTypes for encoding in-place.
1428         * platform/graphics/skia/ImageBufferSkia.cpp:
1429         (WebCore::ImageBuffer::toDataURL): add jpeg encoding and quality support.
1430         * platform/image-encoders/skia/JPEGImageEncoder.cpp: Added.
1431         (WebCore::prepareOutput):
1432         (WebCore::writeOutput):
1433         (WebCore::finishOutput):
1434         (WebCore::handleError):
1435         (WebCore::preMultipliedBGRAtoRGB): FIXME: bug 40147.
1436         (WebCore::JPEGImageEncoder::encode):
1437         * platform/image-encoders/skia/JPEGImageEncoder.h: Added.
1438
1439 2010-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1440
1441         Unreviewed, rolling out r73152.
1442         http://trac.webkit.org/changeset/73152
1443         https://bugs.webkit.org/show_bug.cgi?id=50401
1444
1445         the patch has broken chromium win layout tests (Requested by
1446         loislo on #webkit).
1447
1448         * inspector/CodeGeneratorInspector.pm:
1449         * inspector/Inspector.idl:
1450         * inspector/front-end/Callback.js:
1451         * inspector/front-end/DOMAgent.js:
1452         (WebInspector.DOMNode):
1453         * inspector/front-end/inspector.js:
1454         (WebInspector.loaded.WebInspector.socket.onmessage):
1455         (WebInspector.dispatch):
1456         (WebInspector_syncDispatch):
1457         (WebInspector.reportProtocolError):
1458
1459 2010-12-02  W. James MacLean  <wjmaclean@chromium.org>
1460
1461         Reviewed by James Robinson.
1462
1463         Scaled Resized images are blurred when sent to Skia
1464         https://bugs.webkit.org/show_bug.cgi?id=42370
1465
1466         This patch modifies ImageSkia.cpp to fix the calculation of resampled
1467         bitmap sizes so as to include the transform matrix of the canvas.
1468         Includes new tests to catch a scrolling regression and a clipping regression.
1469
1470         Tests: svg/custom/image-rescale-clip.html
1471                svg/custom/image-rescale-scroll.html
1472                svg/custom/image-rescale.svg
1473
1474         * platform/graphics/skia/ImageSkia.cpp:
1475         (WebCore::computeResamplingMode):
1476         (WebCore::drawResampledBitmap):
1477
1478 2010-12-02  Erik Arvidsson  <arv@chromium.org>
1479
1480         Reviewed by Darin Adler.
1481
1482         Missing DOM property for incremental input attribute
1483         https://bugs.webkit.org/show_bug.cgi?id=50335
1484
1485         Test: fast/forms/incremental-dom-property.html
1486
1487         * html/HTMLInputElement.idl: Added attribute
1488
1489 2010-12-02  John Knottenbelt  <jknotten@chromium.org>
1490
1491         Reviewed by Steve Block.
1492
1493         Move requestGeolocationPermissionForFrame to GeolocationClient
1494         https://bugs.webkit.org/show_bug.cgi?id=50061
1495
1496         This change facilitates client-based geolocation implementation by
1497         bringing together permission control into the geolocation client
1498         interface.
1499
1500         * page/Chrome.h:
1501         * page/ChromeClient.h:
1502         * page/Geolocation.cpp:
1503         (WebCore::Geolocation::disconnectFrame):
1504         (WebCore::Geolocation::requestPermission):
1505         * page/GeolocationClient.h:
1506         * page/GeolocationController.cpp:
1507         (WebCore::GeolocationController::requestPermission):
1508         (WebCore::GeolocationController::cancelPermissionRequest):
1509         * page/GeolocationController.h:
1510         * platform/mock/GeolocationClientMock.cpp:
1511         (WebCore::GeolocationClientMock::GeolocationClientMock):
1512         (WebCore::GeolocationClientMock::setPermission):
1513         (WebCore::GeolocationClientMock::requestPermission):
1514         (WebCore::GeolocationClientMock::cancelPermissionRequest):
1515         (WebCore::GeolocationClientMock::asyncUpdatePermission):
1516         (WebCore::GeolocationClientMock::permissionTimerFired):
1517         (WebCore::GeolocationClientMock::reset):
1518         (WebCore::GeolocationClientMock::stopUpdating):
1519         (WebCore::GeolocationClientMock::asyncUpdateController):
1520         (WebCore::GeolocationClientMock::controllerTimerFired):
1521         * platform/mock/GeolocationClientMock.h:
1522
1523 2010-12-01  Ilya Tikhonovsky  <loislo@chromium.org>
1524
1525         Reviewed by Pavel Feldman.
1526
1527         Web Inspector: Inspector protocol cleanup task.
1528
1529         The patch has just small renames and adjustments for the protocol things.
1530         'handler' keyword in idl file was replaced with 'domain'.
1531         'domain' property was assigned for the each backend to frontend messages.
1532         At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly.
1533
1534         https://bugs.webkit.org/show_bug.cgi?id=50337
1535
1536         * inspector/CodeGeneratorInspector.pm:
1537         * inspector/Inspector.idl:
1538         * inspector/front-end/inspector.js:
1539         (WebInspector_syncDispatch):
1540
1541 2010-12-01  Andrey Kosyakov  <caseq@chromium.org>
1542
1543         Reviewed by Pavel Feldman.
1544
1545         Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
1546         Re-implementing HAR export functionality that used to be in Resources
1547         tab in Network tab.
1548         https://bugs.webkit.org/show_bug.cgi?id=45663
1549
1550         * inspector/front-end/NetworkPanel.js:
1551         (WebInspector.NetworkPanel.prototype._createTable):
1552         (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
1553         (WebInspector.NetworkPanel.prototype._contextMenu):
1554         (WebInspector.NetworkPanel.prototype._exportAll):
1555         (WebInspector.NetworkPanel.prototype._exportResource):
1556         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
1557         * inspector/front-end/networkPanel.css:
1558         (.data-grid table.data tr.revealed.network-item):
1559         (.data-grid.filter-other table.data tr.revealed.network-category-other):
1560
1561 2010-12-02  Dai Mikurube  <dmikurube@google.com>
1562
1563         Reviewed by Kent Tamura.
1564
1565         Reject named colors, accept only #rrggbb in <input type=color />
1566         https://bugs.webkit.org/show_bug.cgi?id=50308
1567
1568         * html/ColorInputType.cpp: Modified to accept only simple colors like #xxxxxx.
1569         (WebCore::isValidColorString):
1570
1571 2010-12-02  Vincent Scheib  <scheib@chromium.org>
1572
1573         Reviewed by Darin Fisher.
1574
1575         [chromium] histograms api updated in WebKitClient and added to ChromiumBridge
1576         https://bugs.webkit.org/show_bug.cgi?id=50285
1577
1578         Test by loading "about:histograms" after navigating to accelerated pages.
1579
1580         * platform/chromium/ChromiumBridge.h: api update.
1581
1582 2010-12-02  Andras Becsi  <abecsi@webkit.org>
1583
1584         Unreviewed build fix.
1585
1586         [Qt][V8] Fix linking of generated sources.
1587
1588         No new tests needed.
1589
1590         * WebCore.pro: add missing V8ImageDataCustom.cpp.
1591
1592 2010-12-02  Nikolas Zimmermann  <nzimmermann@rim.com>
1593
1594         Reviewed by Adam Roben.
1595
1596         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedString/SVGAnimatedEnumeration
1597         https://bugs.webkit.org/show_bug.cgi?id=50383
1598
1599         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(STRING|ENUMERATION) / DEFINE_ANIMATED_(STRING|ENUMERATION).
1600         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
1601
1602         No functional changes, thus no new tests.
1603
1604         * svg/SVGAElement.cpp:
1605         * svg/SVGAElement.h:
1606         (WebCore::SVGAElement::isValid):
1607         (WebCore::SVGAElement::target):
1608         * svg/SVGAltGlyphElement.cpp:
1609         * svg/SVGAltGlyphElement.h:
1610         * svg/SVGAnimatedEnumeration.h:
1611         * svg/SVGAnimatedString.h:
1612         * svg/SVGClipPathElement.cpp:
1613         * svg/SVGClipPathElement.h:
1614         * svg/SVGComponentTransferFunctionElement.cpp:
1615         * svg/SVGComponentTransferFunctionElement.h:
1616         * svg/SVGCursorElement.cpp:
1617         * svg/SVGCursorElement.h:
1618         * svg/SVGFEBlendElement.cpp:
1619         * svg/SVGFEBlendElement.h:
1620         * svg/SVGFEColorMatrixElement.cpp:
1621         * svg/SVGFEColorMatrixElement.h:
1622         * svg/SVGFEComponentTransferElement.cpp:
1623         * svg/SVGFEComponentTransferElement.h:
1624         * svg/SVGFECompositeElement.cpp:
1625         * svg/SVGFECompositeElement.h:
1626         * svg/SVGFEConvolveMatrixElement.cpp:
1627         * svg/SVGFEConvolveMatrixElement.h:
1628         * svg/SVGFEDiffuseLightingElement.cpp:
1629         * svg/SVGFEDiffuseLightingElement.h:
1630         * svg/SVGFEDisplacementMapElement.cpp:
1631         * svg/SVGFEDisplacementMapElement.h:
1632         * svg/SVGFEGaussianBlurElement.cpp:
1633         * svg/SVGFEGaussianBlurElement.h:
1634         * svg/SVGFEImageElement.cpp:
1635         * svg/SVGFEImageElement.h:
1636         * svg/SVGFELightElement.cpp:
1637         * svg/SVGFEMergeNodeElement.cpp:
1638         * svg/SVGFEMergeNodeElement.h:
1639         * svg/SVGFEMorphologyElement.cpp:
1640         * svg/SVGFEMorphologyElement.h:
1641         * svg/SVGFEOffsetElement.cpp:
1642         * svg/SVGFEOffsetElement.h:
1643         * svg/SVGFESpecularLightingElement.cpp:
1644         * svg/SVGFESpecularLightingElement.h:
1645         * svg/SVGFETileElement.cpp:
1646         * svg/SVGFETileElement.h:
1647         * svg/SVGFETurbulenceElement.cpp:
1648         * svg/SVGFETurbulenceElement.h:
1649         * svg/SVGFilterElement.cpp:
1650         * svg/SVGFilterElement.h:
1651         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1652         * svg/SVGFilterPrimitiveStandardAttributes.h:
1653         * svg/SVGForeignObjectElement.cpp:
1654         * svg/SVGForeignObjectElement.h:
1655         * svg/SVGGradientElement.cpp:
1656         * svg/SVGGradientElement.h:
1657         * svg/SVGImageElement.cpp:
1658         * svg/SVGImageElement.h:
1659         * svg/SVGMPathElement.cpp:
1660         * svg/SVGMPathElement.h:
1661         * svg/SVGMarkerElement.cpp:
1662         * svg/SVGMarkerElement.h:
1663         * svg/SVGMaskElement.cpp:
1664         * svg/SVGMaskElement.h:
1665         * svg/SVGPatternElement.cpp:
1666         * svg/SVGPatternElement.h:
1667         * svg/SVGScriptElement.cpp:
1668         * svg/SVGScriptElement.h:
1669         * svg/SVGStyledElement.cpp:
1670         * svg/SVGStyledElement.h:
1671         (WebCore::SVGStyledElement::hasRelativeLengths):
1672         (WebCore::SVGStyledElement::supportsMarkers):
1673         (WebCore::SVGStyledElement::style):
1674         (WebCore::SVGStyledElement::updateRelativeLengthsInformation):
1675         (WebCore::SVGStyledElement::selfHasRelativeLengths):
1676         (WebCore::SVGStyledElement::isStyled):
1677         * svg/SVGTRefElement.cpp:
1678         * svg/SVGTRefElement.h:
1679         * svg/SVGTextContentElement.cpp:
1680         * svg/SVGTextContentElement.h:
1681         * svg/SVGTextPathElement.cpp:
1682         * svg/SVGTextPathElement.h:
1683         * svg/SVGUseElement.cpp:
1684         * svg/SVGUseElement.h:
1685
1686 2010-12-02  Patrick Gansterer  <paroga@webkit.org>
1687
1688         Reviewed by Andreas Kling.
1689
1690         [WX] Remove "current path" of GraphicsContext
1691         https://bugs.webkit.org/show_bug.cgi?id=50286
1692
1693         * platform/graphics/GraphicsContext.h:
1694         * platform/graphics/wx/GraphicsContextWx.cpp:
1695         (WebCore::GraphicsContext::GraphicsContext):
1696         (WebCore::GraphicsContext::fillPath):
1697         (WebCore::GraphicsContext::strokePath):
1698
1699 2010-10-26  Martin Robinson  <mrobinson@igalia.com>
1700
1701         Reviewed by Xan Lopez.
1702
1703         [GTK] Text input controls do not react properly to CSS styling
1704         https://bugs.webkit.org/show_bug.cgi?id=40855
1705
1706         Improve text input control rendering. Instead of using the GTK+ border
1707         attributes of the control modify the padding, they modify the border.
1708         Make this same choice for search inputs and text area inputs.
1709
1710         * platform/gtk/RenderThemeGtk.cpp:
1711         (WebCore::setTextInputBorders): Added this helper which sets text input control
1712         borders based on GTK+ theme settings.
1713         (WebCore::RenderThemeGtk::adjustTextFieldStyle): Use the setTextInputBorders helper.
1714         (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
1715         (WebCore::RenderThemeGtk::adjustSearchFieldStyle): Ditto.
1716         * platform/gtk/RenderThemeGtk.h:
1717
1718 2010-12-02  Andreas Kling  <kling@webkit.org>
1719
1720         Reviewed by Kenneth Rohde Christiansen.
1721
1722         [Qt] GraphicsContext::strokeRect() taints the context's lineWidth
1723         https://bugs.webkit.org/show_bug.cgi?id=50269
1724
1725         Test: fast/canvas/canvas-lineWidth-intact-after-strokeRect.html
1726
1727         * platform/graphics/qt/GraphicsContextQt.cpp:
1728         (WebCore::GraphicsContext::strokeRect): Restore the context's
1729         original stroke thickness after painting.
1730
1731 2010-12-02  Renata Hodovan  <reni@webkit.org>
1732
1733         Reviewed by Andreas Kling.
1734
1735         [Qt] GraphicsContext::clip(path) should clip using winding fill 
1736         https://bugs.webkit.org/show_bug.cgi?id=49912
1737
1738         GraphicsContext::clip(path) now uses winding fill and this function is called by
1739         GraphicsContext::canvasClip(path).
1740
1741         No new test is needed.
1742
1743         * platform/graphics/qt/GraphicsContextQt.cpp:
1744         (WebCore::GraphicsContext::clip):
1745         (WebCore::GraphicsContext::canvasClip):
1746
1747 2010-12-01  Alexander Pavlov  <apavlov@chromium.org>
1748
1749         Reviewed by Yury Semikhatsky.
1750
1751         Web Inspector: Remove obsolete CSS backend API from InspectorDOMAgent
1752         https://bugs.webkit.org/show_bug.cgi?id=50318
1753
1754         * CMakeLists.txt:
1755         * GNUmakefile.am:
1756         * WebCore.gypi:
1757         * WebCore.order:
1758         * WebCore.pro:
1759         * WebCore.vcproj/WebCore.vcproj:
1760         * WebCore.xcodeproj/project.pbxproj:
1761         * inspector/Inspector.idl:
1762         * inspector/InspectorCSSAgent.h:
1763         * inspector/InspectorCSSStore.cpp: Removed.
1764         * inspector/InspectorCSSStore.h: Removed.
1765         * inspector/InspectorController.cpp:
1766         (WebCore::InspectorController::InspectorController):
1767         (WebCore::InspectorController::connectFrontend):
1768         (WebCore::InspectorController::didCommitLoad):
1769         * inspector/InspectorController.h:
1770         * inspector/InspectorDOMAgent.cpp:
1771         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1772         (WebCore::InspectorDOMAgent::unbind):
1773         * inspector/InspectorDOMAgent.h:
1774         (WebCore::InspectorDOMAgent::create):
1775
1776 2010-12-02  Csaba Osztrogonác  <ossy@webkit.org>
1777
1778         Unreviewed trivial buildfix after r73117.
1779
1780         * page/FrameView.cpp:
1781         (WebCore::FrameView::calculateScrollbarModesForLayout):
1782
1783 2010-12-02  Yuqiang Xian  <yuqiang.xian@intel.com>
1784
1785         Reviewed by Pavel Feldman.
1786
1787         [V8] Speed up data property access for ImageData.
1788         https://bugs.webkit.org/show_bug.cgi?id=49999
1789
1790         We create a normal V8 object which has a PixelArray as the backing storage,
1791         and set the "data" property of the ImageData object to it. 
1792         This way "data" becomes a pure JS property and we don't need to call through
1793         the C++ bindings for ImageData "data" access. 
1794         This eliminates big overhead in switching between JavaScript and native
1795         contexts and performing object bindings.
1796
1797         No new tests. Relying on existing Canvas tests.
1798
1799         * WebCore.gypi:
1800         * bindings/scripts/CodeGeneratorV8.pm:
1801         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp:
1802         (WebCore::toV8):
1803         * bindings/v8/custom/V8ImageDataCustom.cpp: Added.
1804         (WebCore::toV8):
1805         * html/ImageData.idl:
1806         * html/canvas/CanvasPixelArray.idl:
1807
1808 2010-12-02  Kent Tamura  <tkent@chromium.org>
1809
1810         Unreviewed. Run sort-Xcode-project-file.
1811
1812         * WebCore.xcodeproj/project.pbxproj:
1813
1814 2010-12-02  Mike Lawther  <mikelawther@chromium.org>
1815
1816         Reviewed by David Hyatt.
1817
1818         Clean up of iframe scrollbar mode code
1819         https://bugs.webkit.org/show_bug.cgi?id=47797
1820
1821         Pull setChildNeedsLayout/setNeedsLayout calls out of scrollbar mode
1822         calculation method and put back into main layout function. 
1823         Early exit from the scrollbar calc when scrollbars are turned off. 
1824
1825         * page/FrameView.cpp:
1826         (WebCore::FrameView::calculateScrollbarModesForLayout):
1827         (WebCore::FrameView::layout):
1828
1829 2010-12-02  Hironori Bono  <hbono@chromium.org>
1830
1831         Reviewed by Darin Fisher.
1832
1833         [Chromium] Fix possible crashes in FontFallbackFont::determinePitch().
1834         https://bugs.webkit.org/show_bug.cgi?id=25770
1835
1836         When all of "Arial", "Courier New", and "Times New Roman" fonts are corrupted,
1837         FontCache::getLastResortFallbackFont() returns 0 and it causes this crash. To
1838         avoid this crash, this change falls back to system fonts (Windows ensures they
1839         are sane) as Win Safari does. Unfortunately, I don't have any ideas how I can
1840         write a layout test for this issue because this crash happens on a PC some of
1841         its system fonts are corrupted.
1842
1843         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1844         (WebCore::fontDataFromDescriptionAndLogFont):
1845         (WebCore::FontCache::getLastResortFallbackFont):
1846
1847 2010-12-02  Dimitri Glazkov  <dglazkov@chromium.org>
1848
1849         Reviewed by Kent Tamura.
1850
1851         Provide means to store shadow DOM nodes on Element
1852         https://bugs.webkit.org/show_bug.cgi?id=48697
1853
1854         Adds shadow DOM awareness to the standard Node attach/detach,
1855         document and tree insertion and removal cycle.
1856
1857         No new tests, because the code is not yet used.
1858
1859         * dom/Element.cpp:
1860         (WebCore::Element::insertedIntoDocument): Added logic to cascade down to shadow DOM, if present.
1861         (WebCore::Element::removedFromDocument): Ditto.
1862         (WebCore::Element::insertedIntoTree): Ditto.
1863         (WebCore::Element::removedFromTree): Ditto.
1864         (WebCore::Element::attach): Ditto.
1865         (WebCore::Element::detach): Ditto.
1866         (WebCore::Element::recalcStyle):
1867         (WebCore::Element::shadowRoot): Added.
1868         (WebCore::Element::setShadowRoot): Added.
1869         (WebCore::Element::clearShadowRoot): Added.
1870         * dom/Element.h: Added decls.
1871         * dom/ElementRareData.h: Added a member to hold a RefPtr to the shadow DOM root for the element.
1872
1873 2010-12-02  Adam Barth  <abarth@webkit.org>
1874
1875         Reviewed by Eric Seidel.
1876
1877         Gray-scale JPEG images with a color profile are stretched horizonally
1878         https://bugs.webkit.org/show_bug.cgi?id=49950
1879
1880         Turns out gray-scale JPEGs with color profiles have the same issue as
1881         PNGs.  As with PNGs, we suppress now suppress the color profile for
1882         gray-scale JPEGs.  Most importantly, this patch adds a test.
1883
1884         Test: fast/images/gray-scale-jpeg-with-color-profile.html
1885
1886         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1887         (WebCore::JPEGImageReader::decode):
1888
1889 2010-12-01  Geoffrey Garen  <ggaren@apple.com>
1890
1891         Build fix: Added a forwarding header.
1892
1893         * ForwardingHeaders/wtf/OSAllocator.h: Added.
1894
1895 2010-12-01  Jia Pu  <jpu@apple.com>
1896
1897         Reviewed by Darin Adler.
1898
1899         Support multiple correction candidates panel for misspelled word on Mac OS X.
1900         https://bugs.webkit.org/show_bug.cgi?id=50137
1901         <rdar://problem/8568059>
1902
1903         Test: platform/mac/editing/spelling/delete-autocorrected-word-1.html
1904         Manual test: WebCore/manual-tests/autocorrection/dismiss-multiple-guesses.html
1905                      WebCore/manual-tests/autocorrection/select-from-multiple-guesses.html
1906
1907         This patch is for supporting multiple correction suggestion panel on Mac OS X.
1908         The behavior and implementation is similar to that of reversion candiate panel.
1909
1910         * WebCore.exp.in: Added and removed symbols.
1911
1912         * editing/CorrectionPanelInfo.h: Added new correction panel type, PanelTypeSpellingSuggestions.
1913
1914         * editing/Editor.cpp:
1915         (WebCore::markerTypesForAutocorrection): Convenient function for getting marker types to
1916           be added to autocorrected word.
1917         (WebCore::boundingBoxForRange): Convenient function for calculating the bounding box of a range.
1918         (WebCore::markerTypesForReplacement): Convenient function for getting marker types to
1919           be added to word that has been replaced by various correction panel.
1920         (WebCore::Editor::respondToChangedSelection): Added code to trigger timer for multiple
1921           suggestion panel.
1922         (WebCore::Editor::guessesForMisspelledSelection): Adopted new signature of EditorClient::getGuessesForWord().
1923         (WebCore::Editor::markMisspellingsAfterTypingToWord): Adopted new signature of applyCorrectionPanelInfo().
1924         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
1925         (WebCore::Editor::correctionPanelTimerFired): Added code to handle new multiple suggestion panel.
1926         (WebCore::Editor::handleCorrectionPanelResult): Replaced handleRejectedCorrection(), since
1927           with new AppKit correction panel API, not only rejection, but also confirmation can be
1928           handled in callback.
1929         (WebCore::Editor::stopCorrectionPanelTimer): Moved the code that clears correction panel info
1930           from dismissCorrectionPanel() to this function to fix a bug that would occur when deleting
1931           autocorrected word.
1932         (WebCore::Editor::dismissCorrectionPanel): Ditto.
1933         (WebCore::Editor::applyCorrectionPanelInfo): Added code to handle new multiple suggestion panel.
1934
1935         * editing/Editor.h: Replaced handleRejectedCorrection() with handleCorrectionPanelResult().
1936           Changed the signature of applyCorrectionPanelInfo() to hanlde new correction panel type.
1937
1938         * editing/TextCheckingHelper.cpp:
1939         (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Adopted new EditorClient::getGuessesForWord().
1940
1941         * editing/TextCheckingHelper.h: Made paragraphRange() public.
1942
1943         * loader/EmptyClients.h:
1944         (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature defined in base class.
1945         (WebCore::EmptyEditorClient::getGuessesForWord): Ditto.
1946
1947         * manual-tests/autocorrection/dismiss-multiple-guesses.html: Added.
1948
1949         * manual-tests/autocorrection/select-from-multiple-guesses.html: Added.
1950
1951         * page/EditorClient.h:  Changed showCorrectionPanel() to allow passing multiple correction
1952           candidates. Changed getGuessesForWord() to allow passing in contextual text for better
1953           correction suggestions (for those spellcheckers that utilizes such contextual information).
1954
1955 2010-12-01  David Hyatt  <hyatt@apple.com>
1956
1957         Reviewed by James Robinson.
1958
1959         https://bugs.webkit.org/show_bug.cgi?id=50360
1960         
1961         Make sure to include the origin adjustment code that I added on Mac to keep truncation-rtl.html passing.
1962
1963         * platform/ScrollView.cpp:
1964         (WebCore::ScrollView::updateScrollbars):
1965
1966 2010-12-01  David Hyatt  <hyatt@apple.com>
1967
1968         Reviewed by Dan Bernstein.
1969
1970         https://bugs.webkit.org/show_bug.cgi?id=46645
1971
1972         Generalize overflow section scrollOriginX code to be a point and to work in both horizontal
1973         and vertical modes.
1974
1975         Not testable yet, since the rightmost/leftmost/topmost/lowestPosition functions are returning
1976         horrendously wrong values in the vertical text case for overflow:auto objects.
1977
1978         * rendering/RenderLayer.cpp:
1979         (WebCore::RenderLayer::RenderLayer):
1980         (WebCore::RenderLayer::scrollToOffset):
1981         (WebCore::RenderLayer::computeScrollDimensions):
1982         (WebCore::RenderLayer::updateOverflowStatus):
1983         * rendering/RenderLayer.h:
1984         (WebCore::RenderLayer::scrolledContentOffset):
1985         (WebCore::RenderLayer::scrollXOffset):
1986         (WebCore::RenderLayer::scrollYOffset):
1987         (WebCore::RenderLayer::scrollToXOffset):
1988         (WebCore::RenderLayer::scrollToYOffset):
1989
1990 2010-12-01  Steve Falkenburg  <sfalken@apple.com>
1991
1992         Reviewed by Adam Roben.
1993
1994         WinCairo build should not use link-time code generation (LTCG)
1995         https://bugs.webkit.org/show_bug.cgi?id=50353
1996
1997         * WebCore.vcproj/QTMovieWin.vcproj:
1998         * WebCore.vcproj/WebCore.vcproj:
1999
2000 2010-12-01  David Hyatt  <hyatt@apple.com>
2001
2002         Reviewed by Darin Adler.
2003
2004         https://bugs.webkit.org/show_bug.cgi?id=46645
2005         
2006         Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept
2007         recently added for horizontal RTL documents and applies it to writing modes as well.  Now the
2008         scrollOrigin is a point, since you can start off locked to the bottom or locked to the right.
2009         
2010         This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and
2011         makes them behave the same as the cross-platform code (allowing for cross-platform results to be
2012         landed).
2013
2014         * page/FrameView.cpp:
2015         (WebCore::FrameView::adjustViewSize):
2016         * page/mac/WebCoreFrameView.h:
2017         * platform/ScrollView.cpp:
2018         (WebCore::ScrollView::ScrollView):
2019         (WebCore::ScrollView::maximumScrollPosition):
2020         (WebCore::ScrollView::minimumScrollPosition):
2021         (WebCore::ScrollView::valueChanged):
2022         (WebCore::ScrollView::updateScrollbars):
2023         (WebCore::ScrollView::wheelEvent):
2024         * platform/ScrollView.h:
2025         (WebCore::ScrollView::scrollOrigin):
2026         * platform/mac/ScrollViewMac.mm:
2027         (WebCore::ScrollView::platformSetScrollPosition):
2028         (WebCore::ScrollView::platformSetScrollOrigin):
2029         * rendering/RenderBox.cpp:
2030         (WebCore::RenderBox::paintRootBoxDecorations):
2031         * rendering/RenderView.cpp:
2032         (WebCore::RenderView::layout):
2033         (WebCore::RenderView::docTop):
2034         (WebCore::RenderView::docHeight):
2035         (WebCore::RenderView::docLeft):
2036         (WebCore::RenderView::docWidth):
2037         * rendering/RenderView.h:
2038
2039 2010-11-30  Steve Block  <steveblock@google.com>
2040
2041         Reviewed by Jeremy Orlow.
2042
2043         Upstream recent changes to WebCore/platform/network/android
2044         https://bugs.webkit.org/show_bug.cgi?id=50224
2045
2046         Android implementation changes only, no new tests.
2047
2048         * platform/network/NetworkingContext.h:
2049         * platform/network/android/CookieJarAndroid.cpp:
2050         (WebCore::setCookies):
2051         (WebCore::cookies):
2052         (WebCore::cookieRequestHeaderFieldValue):
2053         (WebCore::cookiesEnabled):
2054         * platform/network/android/ProxyServerAndroid.cpp: Added.
2055         (WebCore::proxyServersForURL):
2056         * platform/network/android/ResourceHandleAndroid.cpp:
2057         (WebCore::ResourceHandle::start):
2058         (WebCore::ResourceHandle::loadResourceSynchronously):
2059         * platform/network/android/ResourceRequestAndroid.cpp:
2060         (WebCore::initializeMaximumHTTPConnectionCountPerHost):
2061
2062 2010-12-01  Steve Falkenburg  <sfalken@apple.com>
2063
2064         Reviewed by Adam Roben.
2065
2066         vcproj changes can't be applied cleanly by the Windows EWS bot
2067         https://bugs.webkit.org/show_bug.cgi?id=50328
2068
2069         * WebCore.vcproj/QTMovieWin.vcproj: Modified property svn:eol-style.
2070         * WebCore.vcproj/QTMovieWinCommon.vsprops: Added property svn:eol-style.
2071         * WebCore.vcproj/WebCore.sln: Modified property svn:eol-style.
2072         * WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style.
2073         * WebCore.vcproj/WebCore.vcproj: Modified property svn:eol-style.
2074         * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added property svn:eol-style.
2075         * WebCore.vcproj/WebCoreCG.vsprops: Added property svn:eol-style.
2076         * WebCore.vcproj/WebCoreCURL.vsprops: Added property svn:eol-style.
2077         * WebCore.vcproj/WebCoreCairo.vsprops: Added property svn:eol-style.
2078         * WebCore.vcproj/WebCoreCommon.vsprops: Added property svn:eol-style.
2079         * WebCore.vcproj/WebCoreGenerated.vcproj: Modified property svn:eol-style.
2080         * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added property svn:eol-style.
2081         * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added property svn:eol-style.
2082         * WebCore.vcproj/WebCoreMediaQT.vsprops: Added property svn:eol-style.
2083         * WebCore.vcproj/WebCorePthreads.vsprops: Added property svn:eol-style.
2084         * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added property svn:eol-style.
2085
2086 2010-11-30  Vangelis Kokkevis  <vangelis@chromium.org>
2087
2088         Reviewed by Darin Fisher.
2089
2090         Adds accelerated compositing trigger flags to Settings to allow
2091         ports to set them via command line flags, etc.
2092         https://bugs.webkit.org/show_bug.cgi?id=50301
2093
2094         * page/Settings.cpp:
2095         (WebCore::Settings::Settings):
2096         (WebCore::Settings::setAcceleratedCompositingFor3DTransformsEnabled):
2097         (WebCore::Settings::setAcceleratedCompositingForVideoEnabled):
2098         (WebCore::Settings::setAcceleratedCompositingForPluginsEnabled):
2099         (WebCore::Settings::setAcceleratedCompositingForCanvasEnabled):
2100         (WebCore::Settings::setAcceleratedCompositingForAnimationEnabled):
2101         * page/Settings.h:
2102         (WebCore::Settings::acceleratedCompositingFor3DTransformsEnabled):
2103         (WebCore::Settings::acceleratedCompositingForVideoEnabled):
2104         (WebCore::Settings::acceleratedCompositingForPluginsEnabled):
2105         (WebCore::Settings::acceleratedCompositingForCanvasEnabled):
2106         (WebCore::Settings::acceleratedCompositingForAnimationEnabled):
2107
2108 2010-12-01  Darin Adler  <darin@apple.com>
2109
2110         Fixed warning seen on buildbot.
2111
2112         * platform/graphics/chromium/ContentLayerChromium.cpp:
2113         (WebCore::ContentLayerChromium::SharedValues::SharedValues): Added #if.
2114
2115 2010-12-01  Ryosuke Niwa  <rniwa@webkit.org>
2116
2117         Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
2118
2119         chrome.dll!WebCore::RangeBoundaryPoint::toPosition ReadAV@NULL (cf0d0f28bc56f2591cc74f71b46036ea)
2120         https://bugs.webkit.org/show_bug.cgi?id=47808
2121
2122         The crash was caused by moveParagraphWithClones' not copying the entire paragraph
2123         when called by doApplyForSingleParagraph, which was induced by a bug in
2124         cloneParagraphUnderNewElement which ended the cloning process early when the start node
2125         and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
2126         by calling traverseNextSibling(outerNode) instead of nextSibling().
2127
2128         Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
2129
2130         Tests: editing/execCommand/switch-multiple-list-items-crash.html
2131                editing/execCommand/switch-multiple-list-items.html
2132
2133         * editing/CompositeEditCommand.cpp:
2134         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2135         * editing/InsertListCommand.cpp:
2136         (WebCore::InsertListCommand::doApply):
2137
2138 2010-12-01  Kevin Ollivier  <kevino@theolliviers.com>
2139
2140         [wx] Build fixes after recent trunk changes.
2141
2142         * platform/graphics/wx/ImageBufferWx.cpp:
2143         (WebCore::ImageBuffer::ImageBuffer):
2144         * platform/wx/LocalizedStringsWx.cpp:
2145         (WebCore::platformDefaultLanguage):
2146
2147 2010-12-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2148
2149         Unreviewed, rolling out r73047.
2150         http://trac.webkit.org/changeset/73047
2151         https://bugs.webkit.org/show_bug.cgi?id=50339
2152
2153         missing bug number (Requested by rniwa on #webkit).
2154
2155         * editing/CompositeEditCommand.cpp:
2156         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2157         * editing/InsertListCommand.cpp:
2158         (WebCore::InsertListCommand::doApply):
2159
2160 2010-12-01  Ryosuke Niwa  <rniwa@webkit.org>
2161
2162         Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci.
2163
2164         The crash was caused by moveParagraphWithClones' not copying the entire paragraph
2165         when called by doApplyForSingleParagraph, which was induced by a bug in
2166         cloneParagraphUnderNewElement which ended the cloning process early when the start node
2167         and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement
2168         by calling traverseNextSibling(outerNode) instead of nextSibling().
2169
2170         Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null.
2171
2172         Tests: editing/execCommand/switch-multiple-list-items-crash.html
2173                editing/execCommand/switch-multiple-list-items.html
2174
2175         * editing/CompositeEditCommand.cpp:
2176         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2177         * editing/InsertListCommand.cpp:
2178         (WebCore::InsertListCommand::doApply):
2179
2180 2010-12-01  Grace Kloba  <klobag@chromium.org>
2181
2182         Reviewed by Kenneth Russell.
2183
2184         [chromium] ContentLayerChromium shader should honor the platform Sk_x_SHIFT value instead of assuming BGRA color
2185         https://bugs.webkit.org/show_bug.cgi?id=50189
2186
2187         * platform/graphics/chromium/ContentLayerChromium.cpp:
2188         (WebCore::ContentLayerChromium::SharedValues::SharedValues):Use SK_B32_SHIFT to decide whether to use RGBA or BGRA shader for Skia port.
2189
2190 2010-12-01  Nico Weber  <thakis@chromium.org>
2191
2192         Reviewed by Dimitri Glazkov.
2193
2194         Fix clang warnings caused by -Wlogical-op-parentheses
2195         https://bugs.webkit.org/show_bug.cgi?id=50324
2196
2197         * platform/graphics/mac/ComplexTextController.cpp:
2198         (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
2199
2200 2010-12-01  Martin Robinson  <mrobinson@igalia.com>
2201
2202         Build fix for GTK+.
2203
2204         * platform/gtk/PopupMenuGtk.cpp:
2205         (WebCore::PopupMenuGtk::typeAheadFind): Uncomment mistakenly commented line.
2206
2207 2010-12-01  Apelete Seketeli  <apelete@seketeli.org> and Martin Robinson  <mrobinson@igalia.com>
2208
2209         Reviewed by Xan Lopez.
2210
2211         [Gtk] Open menulists should support typeahead find
2212         https://bugs.webkit.org/show_bug.cgi?id=27443
2213
2214         Added typeahead find support for open GTK+ menulists.
2215
2216         Test: platform/gtk/fast/forms/menulist-typeahead-find.html
2217
2218         * platform/gtk/PopupMenuGtk.cpp:
2219         (WebCore::PopupMenuGtk::PopupMenuGtk): Initialize new members.
2220         (WebCore::PopupMenuGtk::show): Track currently selected menu item
2221         via a signal handler.
2222         (WebCore::PopupMenuGtk::typeAheadFind): Added.
2223         (WebCore::PopupMenuGtk::menuUnmapped): Reset typeahead find state
2224         when menu is unmapped.
2225         (WebCore::PopupMenuGtk::resetTypeAheadFindState): Added.
2226         (WebCore::PopupMenuGtk::selectItemCallback): Added.
2227         (WebCore::PopupMenuGtk::keyPressEventCallback): Added.
2228         * platform/gtk/PopupMenuGtk.h: Added new members to track typeahead
2229         find state.
2230
2231 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2232
2233         Reviewed by Xan Lopez.
2234
2235         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedNumber
2236         https://bugs.webkit.org/show_bug.cgi?id=50323
2237
2238         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_NUMBER / DEFINE_ANIMATED_NUMBER.
2239         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
2240
2241         No functional changes, thus no new tests.
2242
2243         * svg/SVGAnimatedNumber.h:
2244         * svg/SVGComponentTransferFunctionElement.cpp:
2245         * svg/SVGComponentTransferFunctionElement.h:
2246         * svg/SVGFECompositeElement.cpp:
2247         * svg/SVGFECompositeElement.h:
2248         * svg/SVGFEConvolveMatrixElement.cpp:
2249         * svg/SVGFEConvolveMatrixElement.h:
2250         * svg/SVGFEDiffuseLightingElement.cpp:
2251         * svg/SVGFEDiffuseLightingElement.h:
2252         * svg/SVGFEDisplacementMapElement.cpp:
2253         * svg/SVGFEDisplacementMapElement.h:
2254         * svg/SVGFEGaussianBlurElement.cpp:
2255         * svg/SVGFEGaussianBlurElement.h:
2256         * svg/SVGFELightElement.cpp:
2257         * svg/SVGFELightElement.h:
2258         * svg/SVGFEMorphologyElement.cpp:
2259         * svg/SVGFEMorphologyElement.h:
2260         * svg/SVGFEOffsetElement.cpp:
2261         * svg/SVGFEOffsetElement.h:
2262         * svg/SVGFESpecularLightingElement.cpp:
2263         * svg/SVGFESpecularLightingElement.h:
2264         * svg/SVGFETurbulenceElement.cpp:
2265         * svg/SVGFETurbulenceElement.h:
2266         * svg/SVGPathElement.cpp:
2267         * svg/SVGPathElement.h:
2268         * svg/SVGStopElement.cpp:
2269         * svg/SVGStopElement.h:
2270         (WebCore::SVGStopElement::isGradientStop):
2271
2272 2010-12-01  Martin Robinson  <mrobinson@igalia.com>
2273
2274         Reviewed by Xan Lopez.
2275
2276         Sliders are not transformed after r50188
2277         https://bugs.webkit.org/show_bug.cgi?id=50317
2278
2279         Need to call updateLayerTransform during slider layout, as sliders
2280         may be transformed.
2281
2282         No new tests. This patch should make fast/forms/slider-transformed.html
2283         pass on the GTK+ bots.
2284
2285         * rendering/RenderSlider.cpp:
2286         (WebCore::RenderSlider::layout): Call updateLayerTransform here.
2287
2288 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
2289
2290         Reviewed by Yury Semikhatsky.
2291
2292         Web Inspector: do not make helpScreen.css lazily loaded.
2293         https://bugs.webkit.org/show_bug.cgi?id=50304
2294
2295         * inspector/front-end/HelpScreen.js:
2296         (WebInspector.HelpScreen):
2297         (WebInspector.HelpScreen.prototype._onBlur):
2298         * inspector/front-end/inspector.html:
2299
2300 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2301
2302         Reviewed by Xan Lopez.
2303
2304         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLengthList/SVGNumberList/SVGTransformList
2305         https://bugs.webkit.org/show_bug.cgi?id=50322
2306
2307         Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(LENGTH|NUMBER|TRANSFORM)_LIST / DEFINE_ANIMATED_(LENGTH|NUMBER|TRANSFORM).
2308         The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers.
2309
2310         No functional changes, thus no new tests.
2311
2312         * svg/SVGAnimatedLengthList.h:
2313         * svg/SVGAnimatedNumberList.h:
2314         * svg/SVGAnimatedTransformList.h:
2315         * svg/SVGComponentTransferFunctionElement.cpp:
2316         * svg/SVGComponentTransferFunctionElement.h:
2317         * svg/SVGFEColorMatrixElement.cpp:
2318         * svg/SVGFEColorMatrixElement.h:
2319         * svg/SVGFEConvolveMatrixElement.cpp:
2320         * svg/SVGFEConvolveMatrixElement.h:
2321         * svg/SVGGradientElement.cpp:
2322         * svg/SVGGradientElement.h:
2323         (WebCore::SVGGradientElement::needsPendingResourceHandling):
2324         * svg/SVGPatternElement.cpp:
2325         * svg/SVGPatternElement.h:
2326         * svg/SVGPolygonElement.cpp:
2327         * svg/SVGPolylineElement.cpp:
2328         * svg/SVGStyledTransformableElement.cpp:
2329         * svg/SVGStyledTransformableElement.h:
2330         * svg/SVGTextElement.cpp:
2331         (WebCore::SVGTextElement::SVGTextElement):
2332         * svg/SVGTextElement.h:
2333         (WebCore::SVGTextElement::localCoordinateSpaceTransform):
2334         * svg/SVGTextPositioningElement.cpp:
2335         * svg/SVGTextPositioningElement.h:
2336         * svg/properties/SVGAnimatedPropertyMacros.h:
2337
2338 2010-12-01  Alexander Pavlov  <apavlov@chromium.org>
2339
2340         Reviewed by Yury Semikhatsky.
2341
2342         Web Inspector: name-only property appears in style declaration but not in the Styles pane
2343         https://bugs.webkit.org/show_bug.cgi?id=49663
2344
2345         Check that at least one property has been parsed from the user input.
2346
2347         * inspector/InspectorStyleSheet.cpp:
2348         (WebCore::InspectorStyle::setPropertyText):
2349
2350 2010-12-01  Andrey Kosyakov  <caseq@chromium.org>
2351
2352         Reviewed by Pavel Feldman.
2353
2354         Web Inspector: disable cookies tab in network resource view by default, enable for chromium
2355         https://bugs.webkit.org/show_bug.cgi?id=50249
2356
2357         * inspector/front-end/NetworkItemView.js:
2358         (WebInspector.NetworkItemView):
2359         (WebInspector.NetworkItemView.prototype.resize):
2360         * inspector/front-end/Settings.js:
2361
2362 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2363
2364         Reviewed by Xan Lopez.
2365
2366         Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLength
2367         https://bugs.webkit.org/show_bug.cgi?id=50316
2368
2369         Introduce DECLARE_ANIMATED_LENGTH / DEFINE_ANIMATED_LENGTH, splitting up the original DECLARE_ANIMATED_PROPERTY_NEW macro
2370         in a part that goes in the .cpp file and another that remains in the header. This avoids having to include SVGNames.h
2371         in all SVG*Element files.
2372
2373         No functional changes, thus no new tests.
2374
2375         * svg/SVGAnimatedLength.h:
2376         * svg/SVGCircleElement.cpp:
2377         * svg/SVGCircleElement.h:
2378         (WebCore::SVGCircleElement::isValid):
2379         * svg/SVGCursorElement.cpp:
2380         * svg/SVGCursorElement.h:
2381         (WebCore::SVGCursorElement::isValid):
2382         * svg/SVGEllipseElement.cpp:
2383         * svg/SVGEllipseElement.h:
2384         (WebCore::SVGEllipseElement::isValid):
2385         * svg/SVGFilterElement.cpp:
2386         * svg/SVGFilterElement.h:
2387         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2388         * svg/SVGFilterPrimitiveStandardAttributes.h:
2389         * svg/SVGForeignObjectElement.cpp:
2390         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
2391         * svg/SVGForeignObjectElement.h:
2392         (WebCore::SVGForeignObjectElement::isValid):
2393         * svg/SVGImageElement.cpp:
2394         * svg/SVGImageElement.h:
2395         (WebCore::SVGImageElement::isValid):
2396         * svg/SVGLineElement.cpp:
2397         * svg/SVGLineElement.h:
2398         (WebCore::SVGLineElement::isValid):
2399         (WebCore::SVGLineElement::supportsMarkers):
2400         * svg/SVGLinearGradientElement.cpp:
2401         * svg/SVGLinearGradientElement.h:
2402         * svg/SVGMarkerElement.cpp:
2403         (WebCore::SVGMarkerElement::SVGMarkerElement):
2404         * svg/SVGMarkerElement.h:
2405         * svg/SVGMaskElement.cpp:
2406         * svg/SVGMaskElement.h:
2407         (WebCore::SVGMaskElement::isValid):
2408         (WebCore::SVGMaskElement::needsPendingResourceHandling):
2409         * svg/SVGPatternElement.cpp:
2410         * svg/SVGPatternElement.h:
2411         (WebCore::SVGPatternElement::isValid):
2412         (WebCore::SVGPatternElement::needsPendingResourceHandling):
2413         * svg/SVGRadialGradientElement.cpp:
2414         * svg/SVGRadialGradientElement.h:
2415         * svg/SVGRectElement.cpp:
2416         * svg/SVGRectElement.h:
2417         (WebCore::SVGRectElement::isValid):
2418         * svg/SVGSVGElement.cpp:
2419         (WebCore::SVGSVGElement::SVGSVGElement):
2420         * svg/SVGSVGElement.h:
2421         (WebCore::SVGSVGElement::isValid):
2422         (WebCore::SVGSVGElement::setContainerSize):
2423         (WebCore::SVGSVGElement::containerSize):
2424         (WebCore::SVGSVGElement::hasSetContainerSize):
2425         (WebCore::SVGSVGElement::currentTranslate):
2426         (WebCore::SVGSVGElement::timeContainer):
2427         (WebCore::SVGSVGElement::isSVG):
2428         (WebCore::SVGSVGElement::rendererIsNeeded):
2429         * svg/SVGTextContentElement.cpp:
2430         * svg/SVGTextContentElement.h:
2431         (WebCore::SVGTextContentElement::isValid):
2432         (WebCore::SVGTextContentElement::isTextContent):
2433         * svg/SVGTextPathElement.cpp:
2434         * svg/SVGTextPathElement.h:
2435         * svg/SVGTextPositioningElement.h:
2436         * svg/SVGUseElement.cpp:
2437         * svg/SVGUseElement.h:
2438         (WebCore::SVGUseElement::isValid):
2439         (WebCore::SVGUseElement::setUpdatesBlocked):
2440         (WebCore::SVGUseElement::isPendingResource):
2441         * svg/properties/SVGAnimatedPropertyMacros.h:
2442
2443 2010-12-01  Anton D'Auria  <adauria@apple.com>
2444
2445         Reviewed by Kevin Decker.
2446
2447         Deny access to local and session storage in private browsing mode.
2448         https://bugs.webkit.org/show_bug.cgi?id=49329
2449
2450         * storage/Storage.cpp:
2451         (WebCore::Storage::length):
2452         (WebCore::Storage::key):
2453         (WebCore::Storage::getItem):
2454         (WebCore::Storage::contains):
2455
2456 2010-12-01  Philippe Normand  <pnormand@igalia.com>
2457
2458         Reviewed by Martin Robinson.
2459
2460         Volume control not correctly initialized
2461         https://bugs.webkit.org/show_bug.cgi?id=36299
2462
2463         Replaced the mute/volume Timers with g_timeouts which are (for
2464         now, at least) more reliable than Timers for one-shot-fire-now
2465         actions.
2466
2467         Test: media/video-volume.html
2468
2469         * platform/graphics/MediaPlayer.cpp:
2470         (WebCore::MediaPlayer::~MediaPlayer): Reset the raw pointers to 0
2471         when destructing the player.
2472         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2473         (WebCore::mediaPlayerPrivateVolumeChangeTimeoutCallback):
2474         (WebCore::mediaPlayerPrivateMuteChangeTimeoutCallback):
2475         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
2476         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange):
2477         (WebCore::MediaPlayerPrivateGStreamer::volumeChanged):
2478         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfMute):
2479         (WebCore::MediaPlayerPrivateGStreamer::muteChanged):
2480         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Set
2481         playbin2 volume/mute base on MediaPlayer related values.
2482         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
2483
2484 2010-12-01  Patrick Gansterer  <paroga@webkit.org>
2485
2486         Reviewed by Andreas Kling.
2487
2488         Cleanup main CMakeLists.txt after r72664, r72672 and r72667
2489         https://bugs.webkit.org/show_bug.cgi?id=50232
2490
2491         * CMakeLists.txt: Removed obsolete dependencies.
2492
2493 2010-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2494
2495         Reviewed by Dirk Schulze.
2496
2497         Cleanup SVGPropertyTraits
2498         https://bugs.webkit.org/show_bug.cgi?id=50229
2499
2500         Move all template specializations for non-POD types (eg. SVGLength, SVGLengthList, etc.) from SVGPropertyTraits
2501         into the right SVG* classes, to avoid having to include a dozen SVG*.h files in SVGPropertyTraits.h, which is
2502         included by all DOM/JS/V8 binding files and SVGElement.h.
2503
2504         No new functionality, thus no new tests.
2505
2506         * GNUmakefile.am:
2507         * WebCore.gypi:
2508         * WebCore.pro:
2509         * WebCore.xcodeproj/project.pbxproj:
2510         * bindings/scripts/CodeGenerator.pm:
2511         * bindings/scripts/CodeGeneratorObjC.pm:
2512         * bindings/scripts/CodeGeneratorV8.pm:
2513         * svg/SVGAngle.h:
2514         * svg/SVGLength.h:
2515         * svg/SVGLengthList.h:
2516         * svg/SVGMarkerElement.h:
2517         * svg/SVGNumberList.h:
2518         * svg/SVGPatternElement.h:
2519         * svg/SVGPointList.h:
2520         * svg/SVGPreserveAspectRatio.h:
2521         * svg/SVGRect.h: Added.
2522         * svg/SVGSVGElement.h:
2523         * svg/SVGStringList.h:
2524         * svg/SVGSymbolElement.h:
2525         * svg/SVGTransformList.h:
2526         * svg/SVGViewElement.h:
2527         * svg/SVGViewSpec.h:
2528         * svg/properties/SVGListProperty.h:
2529         * svg/properties/SVGPropertyTraits.h:
2530         * svg/properties/SVGTransformListPropertyTearOff.h:
2531
2532 2010-11-30  Kent Tamura  <tkent@chromium.org>
2533
2534         Reviewed by Darin Adler.
2535
2536         Refactor HTMLInputElement: Move a part of HTMLInputElement::
2537         defaultEventHandler() to InputTypes
2538         https://bugs.webkit.org/show_bug.cgi?id=50097
2539
2540         Move all of keyboard-related event handling to InputType.
2541
2542         No new tests because this should not change any behavior.
2543
2544         * html/BaseButtonInputType.cpp:
2545         (WebCore::BaseButtonInputType::handleKeydownEvent):
2546         (WebCore::BaseButtonInputType::handleKeypressEvent):
2547         (WebCore::BaseButtonInputType::handleKeyupEvent):
2548         * html/BaseButtonInputType.h:
2549         * html/BaseCheckableInputType.cpp:
2550         (WebCore::BaseCheckableInputType::handleKeydownEvent):
2551         (WebCore::BaseCheckableInputType::handleKeypressEvent):
2552         * html/BaseCheckableInputType.h:
2553         * html/CheckboxInputType.cpp:
2554         (WebCore::CheckboxInputType::handleKeyupEvent):
2555         * html/CheckboxInputType.h:
2556         * html/HTMLInputElement.cpp:
2557         (WebCore::HTMLInputElement::defaultEventHandler):
2558          We remove !implicitSubmission check for callBaseClassEarly because
2559          implicitSubmission can not be true for keydown event and keypress
2560          event at this point.
2561         * html/InputType.cpp:
2562         (WebCore::InputType::shouldSubmitImplicitly):
2563          Returns true for a keypress event with "\r". Note that we don't overload
2564          this function for BUTTON, FILE, IMAGE, RESET, and SUBMIT because a
2565          keypress event with "\r" for these types returns from HTMLInputElement::defaultEventHandler()
2566          before implicit submission checking.
2567         (WebCore::InputType::handleKeypressEvent):
2568         (WebCore::InputType::handleKeyupEvent):
2569         * html/InputType.h:
2570         * html/RadioInputType.cpp:
2571         (WebCore::RadioInputType::handleKeydownEvent):
2572         (WebCore::RadioInputType::handleKeyupEvent):
2573         * html/RadioInputType.h:
2574         * html/TextFieldInputType.cpp:
2575         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
2576         * html/TextFieldInputType.h:
2577
2578 2010-11-30  Patrick Gansterer  <paroga@webkit.org>
2579
2580         Reviewed by Andreas Kling.
2581
2582         Move CSS generator logic into main CMakeLists.txt file
2583         https://bugs.webkit.org/show_bug.cgi?id=50230
2584
2585         * CMakeLists.txt:
2586
2587 2010-11-30  Ojan Vafai  <ojan@chromium.org>
2588
2589         Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test
2590         https://bugs.webkit.org/show_bug.cgi?id=50288
2591
2592         2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
2593         Reviewed by Darin Adler.
2594         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
2595         https://bugs.webkit.org/show_bug.cgi?id=50182
2596         A display-isolated URL can only be displayed (e.g., put in an iframe,
2597         hyperlinked to) by documents from that scheme. In a sense, this is a
2598         generalization of some of the protections we give file URLs, but
2599         instead of lumping them all together into one "local" bucket, this
2600         patch creates a separate bucket for each scheme.
2601         For a while, I tried using a separate bucket for each origin. That
2602         would have played nicely with what Blob URLs are trying to do, but some
2603         "chrome" URL pages rely on being able to display other chrome URL
2604         pages, even in different origins. For example, the New Tab Page shows
2605         thumbnails from the "thumbnail" host.
2606         This patch also removes a bunch of unused code. I've also propagated
2607         the "deprecated" status of deprecatedCanDisplay to
2608         deprecatedShouldTreatURLAsLocal because that method has no other
2609         callers and is really asking for uppercase/lowercase bugs. I dream of
2610         someday removing these functions.
2611         page/SecurityOrigin.cpp:
2612         (WebCore::SecurityOrigin::canDisplay):
2613         (WebCore::SecurityOrigin::deprecatedCanDisplay):
2614         platform/SchemeRegistry.cpp:
2615         (WebCore::displayIsolatedURLSchemes):
2616         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
2617         (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
2618         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
2619         (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
2620         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
2621         platform/SchemeRegistry.h:
2622         2010-11-29 Adam Barth <abarth@webkit.org (:abarth) (r)>
2623         Reviewed by Darin Adler.
2624         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
2625          https://bugs.webkit.org/show_bug.cgi?id=50182
2626         This patch adds a Chromium API for registering schemes as
2627         display-isolated. In a subsequent patch, I'll change the "chrome"
2628         scheme in Chrome to be display isolated instead of local. That will
2629         prevent file URLs from linking to chrome URLs.
2630         public/WebSecurityPolicy.h:
2631         src/WebSecurityPolicy.cpp:
2632         (WebKit::WebSecurityPolicy::registerURLSchemeAsDisplayIsolated):
2633
2634         * page/SecurityOrigin.cpp:
2635         (WebCore::SecurityOrigin::canDisplay):
2636         (WebCore::SecurityOrigin::deprecatedCanDisplay):
2637         * platform/SchemeRegistry.cpp:
2638         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
2639         (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
2640         (WebCore::SchemeRegistry::localURLSchemes):
2641         (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
2642         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
2643         * platform/SchemeRegistry.h:
2644
2645 2010-11-30  Chris Fleizach  <cfleizach@apple.com>
2646
2647         Reviewed by Beth Dakin.
2648
2649         WebKit duplicates AXValue and AXDescription on abbr
2650         https://bugs.webkit.org/show_bug.cgi?id=50260
2651
2652         stringValue() and accessibilityDescription() were returning the same value for static text with
2653         an aria-label. Static text elements should not have an accessibility description, they
2654         should only have a stringValue.
2655
2656         Test: platform/mac/accessibility/static-text-with-aria-label.html
2657
2658         * accessibility/AccessibilityRenderObject.cpp:
2659         (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
2660         (WebCore::AccessibilityRenderObject::accessibilityDescription):
2661         (WebCore::AccessibilityRenderObject::text):
2662         * accessibility/AccessibilityRenderObject.h:
2663
2664 2010-11-30  Ryosuke Niwa  <rniwa@webkit.org>
2665
2666         Reviewed by Darin Adler.
2667
2668         [HTML5] Rename member variables of HTMLScriptElement
2669         https://bugs.webkit.org/show_bug.cgi?id=49705
2670
2671         Renamed m_wasCreatedByParser to m_wasInsertedByParser, m_requested to m_isExternalScript,
2672         m_isEvaluated to m_wasAlreadyStarted, and m_firedLoad to m_haveFiredLoad.
2673
2674         Also made ScriptElement's haveFiredLoadEvent and removed HTMLScriptElement's haveFiredLoadEvent.
2675         This effectively adds the same function to SVGScriptElement, which isn't currently used anywhere.
2676
2677         No new tests are added since this is a refactoring.
2678
2679         * dom/ScriptElement.cpp:
2680         (WebCore::ScriptElement::ScriptElement):
2681         (WebCore::ScriptElement::insertedIntoDocument):
2682         (WebCore::ScriptElement::childrenChanged):
2683         (WebCore::ScriptElement::finishParsingChildren):
2684         (WebCore::ScriptElement::requestScript):
2685         (WebCore::ScriptElement::evaluateScript):
2686         (WebCore::ScriptElement::executeScript):
2687         (WebCore::ScriptElement::ignoresLoadRequest):
2688         * dom/ScriptElement.h:
2689         (WebCore::ScriptElement::haveFiredLoadEvent):
2690         (WebCore::ScriptElement::setHaveFiredLoadEvent):
2691         (WebCore::ScriptElement::wasInsertedByParser):
2692         (WebCore::ScriptElement::wasAlreadyStarted):
2693         * html/HTMLScriptElement.cpp:
2694         (WebCore::HTMLScriptElement::HTMLScriptElement):
2695         (WebCore::HTMLScriptElement::create):
2696         (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren):
2697         * html/HTMLScriptElement.h:
2698         * svg/SVGScriptElement.cpp:
2699         (WebCore::SVGScriptElement::SVGScriptElement):
2700         (WebCore::SVGScriptElement::create):
2701         (WebCore::SVGScriptElement::svgAttributeChanged):
2702         (WebCore::SVGScriptElement::insertedIntoDocument):
2703         (WebCore::SVGScriptElement::dispatchLoadEvent):
2704         (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren):
2705         * svg/SVGScriptElement.h:
2706
2707 2010-11-30  Darin Adler  <darin@apple.com>
2708
2709         Rolled back most of the FileReaderLoader changes to fix 32-bit builds.
2710
2711         * fileapi/FileReaderLoader.cpp: Changed types back to unsigned from unsigned long long
2712         * fileapi/FileReaderLoader.h: Ditto.
2713
2714 2010-11-30  Dan Bernstein  <mitz@apple.com>
2715
2716         Reviewed by Darin Adler.
2717
2718         Text search should treat all matches as word-start matches when the target begins with a separator character
2719         https://bugs.webkit.org/show_bug.cgi?id=50302
2720
2721         * editing/TextIterator.cpp:
2722         (WebCore::SearchBuffer::SearchBuffer): Disable the AtWordStarts option if it was specified and
2723         the target string begins with one of the "separator" characters.
2724
2725 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
2726
2727         Reviewed by Dave Hyatt.
2728
2729         Web Inspector: [CRASH] on "Revert to this revision" of style with import.
2730         https://bugs.webkit.org/show_bug.cgi?id=50256
2731
2732         Rolled back one line from http://trac.webkit.org/changeset/36904 as agreed with
2733         David.
2734
2735         * css/CSSImportRule.cpp:
2736         (WebCore::CSSImportRule::insertedIntoParent):
2737
2738 2010-11-30  Martin Robinson  <mrobinson@igalia.com>
2739
2740         Reviewed by Xan Lopez.
2741
2742         [GTK] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
2743         https://bugs.webkit.org/show_bug.cgi?id=50283
2744
2745         Adjust the mask rectangle for Cairo shadows, so that the origin
2746         is not affected by the scale of the transformation matrix.
2747
2748         * platform/graphics/ContextShadow.h: Make this Qt-only member global.
2749         * platform/graphics/cairo/ContextShadowCairo.cpp:
2750         (WebCore::ContextShadow::beginShadowLayer): Save the original layer area.
2751         (WebCore::ContextShadow::endShadowLayer): If the target context has a scale
2752         transform, make sure not to scale the blur distance when blitting the shadow.
2753
2754 2010-11-30  Darin Adler  <darin@apple.com>
2755
2756         Reviewed by Alexey Proskuryakov.
2757
2758         Make ProgressEvent 64-bit instead of 32-bit
2759         https://bugs.webkit.org/show_bug.cgi?id=50289
2760
2761         * dom/ProgressEvent.cpp:
2762         (WebCore::ProgressEvent::ProgressEvent): Changed arguments to unsigned long long.
2763         (WebCore::ProgressEvent::initProgressEvent): Ditto.
2764
2765         * dom/ProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
2766         Made isProgressEvent override private.
2767
2768         * dom/ProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
2769
2770         * fileapi/FileReader.cpp: Removed unneeded includes.
2771         Used static on const so we'd get an error if the same constant was in a header.
2772         (WebCore::FileReader::didReceiveData): Removed unneeded WTF prefix.
2773         (WebCore::FileReader::fireEvent): Got rid of local variables that would narrow
2774         bytes loaded and total bytes to 32-bit.
2775
2776         * fileapi/FileReaderLoader.cpp:
2777         (WebCore::FileReaderLoader::didReceiveResponse): Restructured code a bit and
2778         added comments. Also added handling for when ArrayBuffer::create returns 0.
2779         (WebCore::FileReaderLoader::didReceiveData): Fixed handling of case where more
2780         data arrives than is expected so it won't overrun the buffer. Also broke an
2781         assertion into two and improved a comment.
2782
2783         * fileapi/FileReaderLoader.h: Changed bytesLoaded and totalBytes to unsigned long long.
2784
2785         * fileapi/FileWriter.cpp:
2786         (WebCore::FileWriter::fireEvent): Removed narrowing casts in call to
2787         ProgressEvent::create.
2788
2789         * html/canvas/ArrayBuffer.cpp:
2790         (WebCore::ArrayBuffer::tryAllocate): Added a comment because the code here seems wrong.
2791
2792         * xml/XMLHttpRequest.cpp:
2793         (WebCore::XMLHttpRequest::didSendData): Removed narrowing casts in call to
2794         XMLHttpRequestProgressEvent::create.
2795         (WebCore::XMLHttpRequest::didReceiveData): Removed narrowing casts in call to
2796         dispatchProgressEvent.
2797
2798         * xml/XMLHttpRequestProgressEvent.h: Fixed formatting. Changed types to unsigned long long.
2799         Made isXMLHttpRequestProgressEvent override private.
2800
2801         * xml/XMLHttpRequestProgressEvent.idl: Tweaked formatting and changed types to unsigned long long.
2802
2803         * xml/XMLHttpRequestProgressEventThrottle.cpp:
2804         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Changed types to
2805         unsigned long long.
2806
2807         * xml/XMLHttpRequestProgressEventThrottle.h: Changed types to unsigned long long.
2808
2809 2010-11-30  Yael Aharon  <yael.aharon@nokia.com>
2810
2811         Reviewed by Darin Adler.
2812
2813         Progress and meter elements should take a form in their constructor like any other form control.
2814         https://bugs.webkit.org/show_bug.cgi?id=50195
2815
2816         Tests: fast/dom/HTMLMeterElement/meter-element-form.html
2817                fast/dom/HTMLProgressElement/progress-element-form.html
2818
2819         * html/HTMLMeterElement.cpp:
2820         (WebCore::HTMLMeterElement::HTMLMeterElement):
2821         (WebCore::HTMLMeterElement::create):
2822         * html/HTMLMeterElement.h:
2823         * html/HTMLProgressElement.h:
2824         * html/HTMLTagNames.in:
2825
2826 2010-11-30  Tony Chang  <tony@chromium.org>
2827
2828         Reviewed by Adam Barth.
2829
2830         [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn
2831         https://bugs.webkit.org/show_bug.cgi?id=49036
2832
2833         No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html
2834
2835         In http://codereview.chromium.org/11574, the forked chromium test
2836         plugin changed how it testGetIntIdentifier to work around a change
2837         caused by a silverlight specific plugin fix:
2838         http://codereview.chromium.org/11569/diff/1/2
2839
2840         It's not clear to me that this change is needed anymore since
2841         silverlight has had multiple releases, testing without this patch
2842         works on a test windows build, and safari win seems to run silverlight
2843         without this either.  Since there's no test for this behavior, I'm
2844         rolling it out so we can match the upstream test.
2845
2846         * bindings/v8/V8NPUtils.cpp:
2847         (WebCore::convertV8ObjectToNPVariant):
2848
2849 2010-11-30  Chris Guillory  <chris.guillory@google.com>
2850
2851         Reviewed by Chris Fleizach.
2852
2853         Computing style on a stale node while sending pending accessibility notification.
2854         https://bugs.webkit.org/show_bug.cgi?id=50162
2855
2856         Retain node pointer members of AccessibilityImageMapLink.
2857
2858         Test: accessibility/image-map-title-causes-crash.html
2859
2860         * accessibility/AccessibilityImageMapLink.cpp:
2861         (WebCore::AccessibilityImageMapLink::parentObject):
2862         (WebCore::AccessibilityImageMapLink::anchorElement):
2863         (WebCore::AccessibilityImageMapLink::url):
2864         (WebCore::AccessibilityImageMapLink::elementRect):
2865         * accessibility/AccessibilityImageMapLink.h:
2866         (WebCore::AccessibilityImageMapLink::areaElement):
2867         (WebCore::AccessibilityImageMapLink::mapElement):
2868         (WebCore::AccessibilityImageMapLink::node):
2869         * dom/Document.cpp:
2870         (WebCore::Document::clearAXObjectCache):
2871
2872 2010-11-30  James Robinson  <jamesr@chromium.org>
2873
2874         Reviewed by Tony Chang.
2875
2876         Build fix - add parens in foo || bar && baz to make gcc happy
2877         https://bugs.webkit.org/show_bug.cgi?id=50276
2878
2879         gcc 4.4 warns that statements of the form "foo || bar && baz".  It wants
2880         parens around the "bar && baz" part to make it clear which way the logical
2881         operators bind.
2882
2883         * editing/TextIterator.cpp:
2884         (WebCore::SearchBuffer::search):
2885
2886 2010-11-30  Daniel Bates  <dbates@rim.com>
2887
2888         Reviewed by David Hyatt.
2889
2890         Focused <area> should use CSS properties of <area> instead of associated <img>
2891         https://bugs.webkit.org/show_bug.cgi?id=49888
2892
2893         Fixes an issue where the CSS properties of an <area> were not used when
2894         the <area> was focused.
2895
2896         Currently, when focusing an <area> (say by pressing option + tab in Mac
2897         Safari) we use the CSS style information for the <img> associated with
2898         the <area>. Instead, we should use the CSS style information for the
2899         focused <area>. In particular, this will make the us honor the outline-
2900         color property of a focused <area> when drawing its focus ring.
2901
2902         Tests: fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map.html
2903                fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map.html
2904                fast/images/imagemap-focus-ring-outline-color.html
2905
2906         * rendering/RenderImage.cpp:
2907         (WebCore::RenderImage::paintFocusRing): Use the style information of
2908         the focused <area> when drawing the focus ring for it.
2909
2910 2010-11-30  Tony Chang  <tony@chromium.org>
2911
2912         Reviewed by James Robinson.
2913
2914         [chromium] enable WebCore compiler warnings on Linux take 3
2915         https://bugs.webkit.org/show_bug.cgi?id=50258
2916
2917         * WebCore.gyp/WebCore.gyp:
2918
2919 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
2920
2921         Reviewed by Chris Fleizach.
2922
2923         [GTK] Implement ROLE_COMBO_BOX
2924         https://bugs.webkit.org/show_bug.cgi?id=25678
2925
2926         Implement the remaining bits for combo boxes.
2927
2928         This patch finishes the implementation, from the point of view of
2929         the Atk library, of those objects exposed to ATK as combo boxes,
2930         and their related elements (menus and menu items). It therefore
2931         implements the proper interfaces for each type of object related
2932         to combo boxes (AtkSelection for the combo box, AtkText for every
2933         menu item and AtkAction for the combo box, the menu and the menu
2934         items), takes care of emitting the proper signals when focus or a
2935         given a selection changes and adds a new unit test to check all
2936         this new stuff.
2937
2938         Make possible to ask an AccessibleMenuListOption for a sensible
2939         string representation, so far only available through the private
2940         and MSAA related method nameForMSAA. Just moved the implementation
2941         of that method to an overriden version of stringValue(), which is
2942         platform independent, and called that from nameForMSAA().
2943
2944         * accessibility/AccessibilityMenuListOption.h:
2945         * accessibility/AccessibilityMenuListOption.cpp:
2946         (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to
2947         stringValue(), which holds from now on that used to be here.
2948         (WebCore::AccessibilityMenuListOption::stringValue): New, override
2949         of AccessibilityObject::stringValue() to return a proper string.
2950
2951         Emit the missing signals when a selection is made.
2952
2953         * accessibility/gtk/AXObjectCacheAtk.cpp:
2954         (WebCore::AXObjectCache::postPlatformNotification): Emit the usual
2955         'focus' signals when a selection is made over the combo box.
2956
2957         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2958         (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED
2959         Atk states are added to the state set when needed.
2960         (listObjectForSelection): New, returns the proper list object (the
2961         one holding the list of available options as its children) for an
2962         specific AtkObject implementing AtkSelection. This is needed
2963         because sometimes the selectable options are not directly children
2964         of the AtkSelection object (i.e. a combo box has a 'menu' object
2965         as its only child of it, holding the list of options as children).
2966         (optionFromList): Use listObjectForSelection() to get the actual
2967         object holding the list of children as the available options.
2968         (optionFromSelection): Add support for combo boxes.
2969         (webkit_accessible_selection_add_selection): Ditto.
2970         (webkit_accessible_selection_clear_selection): Ditto.
2971         (webkit_accessible_selection_get_selection_count): Ditto.
2972         (webkit_accessible_selection_is_child_selected): Ditto.
2973         (webkit_accessible_selection_remove_selection): Ditto.
2974         (webkit_accessible_text_get_text): Makes sure stringValue() is
2975         considered to get the result substring when it was already
2976         considered when checking the maximum text length for the object.
2977         (getInterfaceMaskFromObject): Make sure the AtkSelection interface
2978         is implemented for the combo boxes, that the AtkText is
2979         implemented for the menu items and that the AtkAction interface is
2980         now implemented for every object (WebCore will decide what to do).
2981
2982         Avoid a segfault crash when using this from unit tests.
2983
2984         * platform/gtk/PopupMenuGtk.cpp:
2985         (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow
2986         before calling gdk_window_get_origin() over it.
2987
2988 2010-11-30  Andreas Kling  <kling@webkit.org>
2989
2990         Reviewed by Tor Arne Vestbø.
2991
2992         [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform
2993
2994         Stash the transform in a const reference (QPainter::transform() returns one)
2995         instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect.
2996
2997         * platform/graphics/qt/GraphicsContextQt.cpp:
2998         (WebCore::GraphicsContext::fillPath):
2999         (WebCore::GraphicsContext::strokePath):
3000         (WebCore::GraphicsContext::fillRect):
3001
3002 2010-11-30  Vangelis Kokkevis  <vangelis@chromium.org>
3003
3004         Reviewed by Simon Fraser.
3005
3006         Provide more fine grained control to ports over when to turn on 
3007         accelerated compositing.
3008         https://bugs.webkit.org/show_bug.cgi?id=49998
3009
3010         The RenderLayerCompositor now checks with the chrome client whether
3011         3d transforms, video, plugins, canvas and animation require
3012         switching over to the composited path. Layers that overlap composited
3013         content will still turn into composited layers regardless of the
3014         setting.
3015
3016         * css/MediaQueryEvaluator.cpp:
3017         (WebCore::transform_3dMediaFeatureEval):
3018         * page/ChromeClient.h:
3019         (WebCore::ChromeClient::allowedCompositingTriggers):
3020         * rendering/RenderLayer.cpp:
3021         (WebCore::RenderLayer::canRender3DTransforms):
3022         (WebCore::RenderLayer::updateTransform):
3023         (WebCore::RenderLayer::currentTransform):
3024         * rendering/RenderLayer.h:
3025         * rendering/RenderLayerBacking.cpp:
3026         (WebCore::RenderLayerBacking::updateLayerTransform):
3027         * rendering/RenderLayerCompositor.cpp:
3028         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
3029         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
3030         (WebCore::RenderLayerCompositor::canRender3DTransforms):
3031         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
3032         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
3033         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
3034         (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
3035         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
3036         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
3037         * rendering/RenderLayerCompositor.h:
3038
3039 2010-11-30  Xan Lopez  <xlopez@igalia.com>
3040
3041         Reviewed by Martin Robinson.
3042
3043         [GTK] Plug leak in SoupCache
3044         https://bugs.webkit.org/show_bug.cgi?id=50142
3045
3046         Free the cache file contents when we don't need them anymore.
3047
3048         * platform/network/soup/cache/webkit/soup-cache.c:
3049         (webkit_soup_cache_load):
3050
3051 2010-11-30  Andras Becsi  <abecsi@webkit.org>
3052
3053         Reviewed by Csaba Osztrogonác.
3054
3055         [Qt][V8] Make QtWebKit with V8 build on Linux.
3056         https://bugs.webkit.org/show_bug.cgi?id=50244
3057
3058         No new tests needed.
3059
3060         * WebCore.pri: add missing idl file
3061         * WebCore.pro: enable Linux build
3062         * bindings/scripts/CodeGeneratorV8.pm: add missing headers
3063         * bindings/v8/ScriptControllerQt.cpp: fix instantiation
3064         (WebCore::ScriptController::qtScriptEngine):
3065         * bindings/v8/V8GCController.cpp: fix guard
3066         (WebCore::V8GCController::checkMemoryUsage):
3067         * inspector/CodeGeneratorInspector.pm: add missing header
3068         * loader/ResourceLoadScheduler.cpp: ditto
3069         * loader/cache/MemoryCache.cpp: ditto
3070         * loader/loader.cpp: ditto
3071
3072 2010-11-30  David Hyatt  <hyatt@apple.com>
3073
3074         Reviewed by Simon Fraser.
3075         
3076         https://bugs.webkit.org/show_bug.cgi?id=50183
3077         
3078         Code got commented out by accident during render tree refactoring last year.  Put the code back in, since
3079         it hurts performance to have that line commented out.
3080
3081         In order to put this code back in, I had to fix some bugs with preferred width computations and
3082         overflow: scroll.  Make the pref widths computation create the scrollbar if it doesn't exist yet.
3083
3084         Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values.  Otherwise
3085         the scrollbar inflates the width beyond the fixed size that was specified.
3086         
3087         For table cells, there is an additional wrinkle.  Make sure not to include the scrollbar size as part of the minimum
3088         intrinsic width so that we don't incorrectly grow.
3089
3090         * rendering/RenderBlock.cpp:
3091         (WebCore::RenderBlock::layoutPositionedObjects):
3092         (WebCore::RenderBlock::computePreferredLogicalWidths):
3093         * rendering/RenderFlexibleBox.cpp:
3094         (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
3095
3096 2010-11-30  Vitaly Repeshko  <vitalyr@chromium.org>
3097
3098         Unreviewed.
3099
3100         Attempt to fix windows debug chromium build.
3101
3102         * html/TimeInputType.cpp: Added include providing isfinite.
3103
3104 2010-11-30  Darin Adler  <darin@apple.com>
3105
3106         Reviewed by Jon Honeycutt.
3107
3108         DOM binding code generator scripts import unused File::stat Perl module
3109         https://bugs.webkit.org/show_bug.cgi?id=50250
3110
3111         * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat".
3112         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
3113         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
3114         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
3115
3116 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
3117
3118         Reviewed by Yury Semikhatsky.
3119
3120         Web Inspector: implement "Revert to this revision" in resources panel.
3121         https://bugs.webkit.org/show_bug.cgi?id=50107
3122
3123         * inspector/Inspector.idl:
3124         * inspector/InspectorCSSAgent.cpp:
3125         (WebCore::InspectorCSSAgent::setStyleSheetText2):
3126         * inspector/InspectorCSSAgent.h:
3127         * inspector/InspectorStyleSheet.cpp:
3128         (WebCore::InspectorStyleSheet::reparseStyleSheet):
3129         * inspector/front-end/CSSStyleModel.js:
3130         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
3131         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
3132         (WebInspector.CSSStyleModel.prototype._onRevert):
3133         * inspector/front-end/Resource.js:
3134         (WebInspector.Resource.prototype.get contentTimestamp):
3135         (WebInspector.Resource.prototype.setInitialContent):
3136         (WebInspector.Resource.prototype.isLocallyModified):
3137         (WebInspector.Resource.prototype.setContent.else.finished):
3138         (WebInspector.Resource.prototype.setContent):
3139         (WebInspector.Resource.prototype.revertToThis.callback):
3140         (WebInspector.Resource.prototype.revertToThis):
3141         (WebInspector.Resource.prototype.get baseRevision):
3142         (WebInspector.Resource.prototype._innerRequestContent):
3143         * inspector/front-end/ResourcesPanel.js:
3144         (WebInspector.ResourcesPanel.prototype._showResourceView):
3145         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
3146         (WebInspector.ResourceRevisionTreeElement):
3147         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
3148         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
3149         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
3150         * inspector/front-end/ScriptsPanel.js:
3151         (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
3152         (WebInspector.ScriptsPanel.prototype.editScriptSource):
3153         * inspector/front-end/SourceView.js:
3154         (WebInspector.SourceView.prototype._editLine):
3155         (WebInspector.SourceView.prototype._editLineComplete):
3156         (WebInspector.SourceView.prototype._revertEditLine):
3157
3158 2010-11-30  Adam Roben  <aroben@apple.com>
3159
3160         Clean up WebCore.vcproj's bindings filter
3161
3162         I added files that we compile (via an all-in-one file) but weren't in
3163         the .vcproj, removed files that no longer exist, and added the scripts
3164         we use.
3165
3166         Fixes <http://webkit.org/b/50248> WebCore.vcproj's bindings filter is
3167         out-of-date
3168
3169         Reviewed by Darin Adler.
3170
3171         * WebCore.vcproj/WebCore.vcproj:
3172
3173 2010-11-30  Adam Roben  <aroben@apple.com>
3174
3175         Move JSIDB* files to the DerivedSources filter
3176
3177         This correctly reflects their location on disk. (They were formerly
3178         listed under bindings/js.)
3179
3180         * WebCore.vcproj/WebCore.vcproj:
3181
3182 2010-11-30  Xiaomei Ji  <xji@chromium.org>
3183
3184         Reviewed by David Hyatt.
3185
3186         Remove clampNegativeToZero in adjustScrollPositionWithinRange.
3187         https://bugs.webkit.org/show_bug.cgi?id=50203
3188
3189         * platform/ScrollView.cpp:
3190         (WebCore::ScrollView::adjustScrollPositionWithinRange):
3191
3192 2010-11-30  Adam Roben  <aroben@apple.com>
3193
3194         Remove duplicate files from WebCore.vcproj
3195
3196         Rubber-stamped by Steve Falkenburg.
3197
3198         * WebCore.vcproj/WebCore.vcproj:
3199
3200 2010-11-30  Adam Roben  <aroben@apple.com>
3201
3202         Let VS do its thang with WebCore.vcproj
3203
3204         I just removed and readded AnimationBase.cpp.
3205
3206         Rubber-stamped by Steve Falkenburg.
3207
3208         * WebCore.vcproj/WebCore.vcproj:
3209
3210 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
3211
3212         Reviewed by Chris Fleizach.
3213
3214         ASSERT failing for combo boxes when selection changes
3215         https://bugs.webkit.org/show_bug.cgi?id=50062
3216
3217         Don't call listBoxOnChange for elements using menu lists.
3218
3219         Test: fast/forms/select-option-accesskey-crash.html
3220
3221         * dom/SelectElement.cpp:
3222         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
3223         to decide whether to call menuListOnChange() or listBoxOnChange()
3224         instead of always calling listBoxOnChange().
3225
3226 2010-11-30  Andreas Kling  <kling@webkit.org>
3227
3228         Reviewed by Dirk Schulze.
3229
3230         GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument.
3231         https://bugs.webkit.org/show_bug.cgi?id=48516
3232
3233         No new tests, this is refactoring only.
3234
3235         fillPath() -> fillPath(const Path&)
3236         strokePath() -> strokePath(const Path&)
3237         clipPath(WindRule) -> clipPath(const Path&, WindRule)
3238
3239         drawPath() was only used by CG, so made it PLATFORM(CG) specific.
3240
3241         The Qt, CG and Cairo implementations are best-effort.
3242         For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods.
3243
3244         * WebCore.exp.in:
3245         * html/canvas/CanvasRenderingContext2D.cpp:
3246         (WebCore::CanvasRenderingContext2D::fill):
3247         (WebCore::CanvasRenderingContext2D::stroke):
3248         * inspector/InspectorController.cpp:
3249         (WebCore::drawOutlinedQuad):
3250         * mathml/RenderMathMLRoot.cpp:
3251         (WebCore::RenderMathMLRoot::paint):
3252         * mathml/RenderMathMLSquareRoot.cpp:
3253         (WebCore::RenderMathMLSquareRoot::paint):
3254         * platform/graphics/GraphicsContext.h:
3255         * platform/graphics/GraphicsContextPrivate.h:
3256         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3257         (WebCore::GraphicsContext::fillPath):
3258         (WebCore::GraphicsContext::strokePath):
3259         (WebCore::GraphicsContext::clipPath):
3260         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
3261         * platform/graphics/cg/GraphicsContextCG.cpp:
3262         (WebCore::GraphicsContext::drawEllipse):
3263         (WebCore::addConvexPolygonToPath):
3264         (WebCore::GraphicsContext::drawConvexPolygon):
3265         (WebCore::GraphicsContext::clipConvexPolygon):
3266         (WebCore::GraphicsContext::drawPath):
3267         (WebCore::GraphicsContext::fillPath):
3268         (WebCore::GraphicsContext::strokePath):
3269         (WebCore::GraphicsContext::fillRoundedRect):
3270         (WebCore::GraphicsContext::clipPath):
3271         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3272         (WebCore::GraphicsContext::strokePath):
3273         (WebCore::GraphicsContext::fillPath):
3274         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
3275         (WebCore::GraphicsContext::fillPath):
3276         (WebCore::GraphicsContext::strokePath):
3277         (WebCore::GraphicsContext::clipPath):
3278         * platform/graphics/qt/GraphicsContextQt.cpp:
3279         (WebCore::GraphicsContext::restorePlatformState):
3280         (WebCore::GraphicsContext::fillPath):
3281         (WebCore::GraphicsContext::strokePath):
3282         (WebCore::GraphicsContext::clipPath):
3283         (WebCore::GraphicsContext::strokeRect):
3284         (WebCore::GraphicsContext::translate):
3285         (WebCore::GraphicsContext::rotate):
3286         (WebCore::GraphicsContext::scale):
3287         (WebCore::GraphicsContext::concatCTM):
3288         * platform/graphics/skia/GraphicsContextSkia.cpp:
3289         (WebCore::GraphicsContext::clipPath):
3290         (WebCore::GraphicsContext::fillPath):
3291         (WebCore::GraphicsContext::strokePath):
3292         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3293         (WebCore::GraphicsContext::fillPath):
3294         (WebCore::GraphicsContext::strokePath):
3295         (WebCore::GraphicsContext::clipPath):
3296         * platform/graphics/wx/GraphicsContextWx.cpp:
3297         (WebCore::GraphicsContext::clipPath):
3298         (WebCore::GraphicsContext::fillPath):
3299         (WebCore::GraphicsContext::strokePath):
3300         * rendering/RenderBoxModelObject.cpp:
3301         (WebCore::RenderBoxModelObject::paintBorder):
3302         (WebCore::RenderBoxModelObject::paintBoxShadow):
3303         * rendering/RenderEmbeddedObject.cpp:
3304         (WebCore::RenderEmbeddedObject::paintReplaced):
3305         * rendering/RenderObject.cpp:
3306         (WebCore::RenderObject::drawBoxSideFromPath):
3307         * rendering/RenderSVGResource.h:
3308         (WebCore::RenderSVGResource::postApplyResource):
3309         * rendering/RenderSVGResourceClipper.cpp:
3310         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
3311         * rendering/RenderSVGResourceFilter.cpp:
3312         (WebCore::RenderSVGResourceFilter::postApplyResource):
3313         * rendering/RenderSVGResourceFilter.h:
3314         * rendering/RenderSVGResourceGradient.cpp:
3315         (WebCore::RenderSVGResourceGradient::applyResource):
3316         * rendering/RenderSVGResourceGradient.h:
3317         * rendering/RenderSVGResourcePattern.cpp:
3318         (WebCore::RenderSVGResourcePattern::postApplyResource):
3319         * rendering/RenderSVGResourcePattern.h:
3320         * rendering/RenderSVGResourceSolidColor.cpp:
3321         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
3322         * rendering/RenderSVGResourceSolidColor.h:
3323         * rendering/SVGRenderSupport.cpp:
3324         (WebCore::SVGRenderSupport::finishRenderSVGContent):
3325         * rendering/svg/RenderSVGPath.cpp:
3326         (WebCore::RenderSVGPath::fillAndStrokePath):
3327         * rendering/svg/SVGInlineTextBox.cpp:
3328         (WebCore::SVGInlineTextBox::releasePaintingResource):
3329         (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting):
3330         (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
3331         * rendering/svg/SVGInlineTextBox.h:
3332         * svg/SVGFont.cpp:
3333         (WebCore::Font::drawTextUsingSVGFont):
3334
3335 2010-11-30  Alexey Proskuryakov  <ap@apple.com>
3336
3337         Reviewed by Darin Adler and Geoff Garen.
3338
3339         https://bugs.webkit.org/show_bug.cgi?id=44152
3340         <rdar://problem/8324423> CSSOM should match DOM in discarding wrapper-less parents.
3341
3342         We have existing behaviors where parent objects in detached subtrees are not preserved:
3343         - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making
3344         its children parentNode attribute null;
3345         - relationship between a <style> or <link> node and its stylesheet is immediately broken
3346         when the node is removed from document (in this case, regardless of wrapper existence).
3347
3348         Both match Firefox. For consistency, CSSOM should do the same. In fact, it already partially
3349         does - CSSRule.parentRule gets zeroed out when the parent rule is destroyed.
3350
3351         Tests: fast/dom/StyleSheet/detached-parent-rule-without-wrapper.html
3352                fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html
3353
3354         * css/StyleSheet.cpp: (WebCore::StyleSheet::~StyleSheet): Clear out child rule parent.
3355
3356         * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::insertedIntoDocument): Keep
3357         the new assertion from firing. This function was adding a rule to style sheet, without
3358         telling the rule about it.
3359
3360 2010-11-30  Steve Falkenburg  <sfalken@apple.com>
3361
3362         Reviewed by Adam Roben.
3363
3364         All projects on Windows should use cmd files for build events
3365         https://bugs.webkit.org/show_bug.cgi?id=50213
3366
3367         * WebCore.vcproj/QTMovieWinCommon.vsprops:
3368         * WebCore.vcproj/QTMovieWinPostBuild.cmd: Added.
3369         * WebCore.vcproj/QTMovieWinPreBuild.cmd: Added.
3370         * WebCore.vcproj/WebCoreCommon.vsprops:
3371         * WebCore.vcproj/WebCorePostBuild.cmd: Added.
3372         * WebCore.vcproj/WebCorePreBuild.cmd: Added.
3373
3374 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
3375
3376         Unreviewed, rolling out r72914.
3377         http://trac.webkit.org/changeset/72914
3378         https://bugs.webkit.org/show_bug.cgi?id=50241
3379
3380         "pfeldman has a revision management patch both for CSS and JS"
3381         (Requested by apavlov on #webkit).
3382
3383         * English.lproj/localizedStrings.js:
3384         * inspector/InspectorStyleSheet.cpp:
3385         (WebCore::InspectorStyleSheet::reparseStyleSheet):
3386         * inspector/front-end/CSSStyleModel.js:
3387         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
3388         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
3389         (WebInspector.CSSStyleSheet.prototype.getText):
3390         (WebInspector.CSSStyleSheet.prototype.setText):
3391         * inspector/front-end/ResourcesPanel.js:
3392         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
3393         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
3394
3395 2010-11-25  Satish Sampath  <satish@chromium.org>
3396
3397         Reviewed by Kent Tamura.
3398
3399         Fix rendering of speech button when setting the attribute dynamically.
3400         https://bugs.webkit.org/show_bug.cgi?id=50077
3401
3402         * html/HTMLInputElement.cpp:
3403         (WebCore::HTMLInputElement::parseMappedAttribute):
3404         * rendering/RenderTextControlSingleLine.cpp:
3405         (WebCore::RenderTextControlSingleLine::speechAttributeChanged):
3406         * rendering/RenderTextControlSingleLine.h:
3407
3408 2010-11-30  Alexander Pavlov  <apavlov@chromium.org>
3409
3410         Reviewed by Yury Semikhatsky.
3411
3412         Web Inspector: Enable switching between revisions of stylesheets
3413         https://bugs.webkit.org/show_bug.cgi?id=50227
3414
3415         Drive-by fix: styleSheetChanged() call needed after a stylesheet reparsing on setStyleSheetText2().
3416
3417         * English.lproj/localizedStrings.js:
3418         * inspector/InspectorStyleSheet.cpp:
3419         (WebCore::InspectorStyleSheet::reparseStyleSheet):
3420         * inspector/front-end/CSSStyleModel.js:
3421         (WebInspector.CSSStyleModel.prototype.setStyleSheetText):
3422         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
3423         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
3424         (WebInspector.CSSStyleSheet.prototype.getText):
3425         * inspector/front-end/ResourcesPanel.js:
3426         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
3427         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
3428         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
3429
3430 2010-11-30  John Knottenbelt  <jknotten@chromium.org>
3431
3432         Reviewed by David Levin.
3433
3434         V8 binding for DOMTimeStamp should be Number, not Date
3435         https://bugs.webkit.org/show_bug.cgi?id=49963
3436
3437         Test: fast/dom/domtimestamp-is-number.html
3438
3439         * bindings/scripts/CodeGeneratorV8.pm:
3440
3441 2010-11-30  Renata Hodovan  <reni@inf.u-szeged.hu>
3442
3443         Reviewed by Andreas Kling.
3444
3445         [Qt] Leak with GraphicsContext::takeOwnershipOfPlatformContext()
3446         https://bugs.webkit.org/show_bug.cgi?id=49916
3447
3448         Change the order of calling QPainter::device() and QPainter::end(), so device() will return with a valid device.
3449         No new test is needed.
3450
3451         * platform/graphics/qt/GraphicsContextQt.cpp:
3452         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
3453
3454 2010-11-30  Patrick Gansterer  <paroga@webkit.org>
3455
3456         Reviewed by Andreas Kling.
3457
3458         Move generator logic into main CMakeLists.txt file
3459         https://bugs.webkit.org/show_bug.cgi?id=49885
3460
3461         Also make the generator calls more portable.
3462
3463         * CMakeLists.txt:
3464
3465 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
3466
3467         Unreviewed, rolling out r72902.
3468         http://trac.webkit.org/changeset/72902
3469         https://bugs.webkit.org/show_bug.cgi?id=50062
3470
3471         This change is causing layout test failures on the Tests bots
3472         for the mac platform.
3473
3474         * dom/SelectElement.cpp:
3475         (WebCore::SelectElement::accessKeySetSelectedIndex):
3476
3477 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
3478
3479         Unreviewed, rolling out r72764.
3480         http://trac.webkit.org/changeset/72764
3481         https://bugs.webkit.org/show_bug.cgi?id=50215
3482
3483         This change is causing assertion failures on the debug bots.
3484         (Requested by mrobinson on #webkit).
3485
3486         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3487         (webkit_accessible_get_name):
3488         (webkit_accessible_detach):
3489
3490 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
3491
3492         Reviewed by Yury Semikhatsky.
3493
3494         Web Inspector: make copy(node) work in console.
3495         https://bugs.webkit.org/show_bug.cgi?id=50180
3496
3497         * inspector/front-end/InjectedScript.js:
3498         (injectedScriptConstructor.):
3499
3500 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
3501
3502         Reviewed by Darin Adler.
3503
3504         ASSERT failing for combo boxes when selection changes
3505         https://bugs.webkit.org/show_bug.cgi?id=50062
3506
3507         Don't call listBoxOnChange for elements using menu lists.
3508
3509         Test: accessibility/select-menulist-crash.html
3510
3511         * dom/SelectElement.cpp:
3512         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
3513         to decide whether to call menuListOnChange() or listBoxOnChange()
3514         instead of always calling listBoxOnChange().
3515
3516 2010-11-30  Helder Correia  <helder@sencha.com>
3517
3518         Reviewed by Kenneth Rohde Christiansen.
3519
3520         [Qt] Path stroke shadow has incorrect behavior when using ctx.scale(x,y)
3521         https://bugs.webkit.org/show_bug.cgi?id=50198
3522
3523         Handle the special case when scaling is used and translate the shadow
3524         offset accordingly. The correct behavior is ensured in ContextShadow
3525         already, the issue only happens when using a non-blur shadow.
3526
3527         Test: fast/canvas/canvas-scale-strokePath-shadow.html
3528
3529         * platform/graphics/qt/GraphicsContextQt.cpp:
3530         (WebCore::GraphicsContext::strokePath):
3531
3532 2010-11-30  Helder Correia  <helder@sencha.com>
3533
3534         Reviewed by Kenneth Rohde Christiansen.
3535
3536         [Qt] Path filling should keep shadow offset after context scaling
3537         https://bugs.webkit.org/show_bug.cgi?id=50194
3538
3539         Handle the special case when scaling is used and translate the shadow
3540         offset accordingly. The correct behavior is ensured in ContextShadow
3541         already, the issue only happens when using a non-blur shadow.
3542
3543         Test: fast/canvas/canvas-scale-fillPath-shadow.html
3544
3545         * platform/graphics/qt/GraphicsContextQt.cpp:
3546         (WebCore::GraphicsContext::fillPath):
3547
3548 2010-11-30  Yury Semikhatsky  <yurys@chromium.org>
3549
3550         Reviewed by Pavel Feldman.
3551
3552         Web Inspector: make ScriptCallStack and ScriptArguments reference counted
3553         https://bugs.webkit.org/show_bug.cgi?id=50156
3554
3555         No new tests. This refactoring is covered with existing inspector tests.
3556
3557         * bindings/js/JSConsoleCustom.cpp:
3558         (WebCore::JSConsole::profile):
3559         (WebCore::JSConsole::profileEnd):
3560         * bindings/js/ScriptCallStackFactory.cpp:
3561         (WebCore::createScriptCallStack):
3562         (WebCore::createScriptArguments):
3563         * bindings/js/ScriptCallStackFactory.h:
3564         * bindings/scripts/CodeGeneratorJS.pm:
3565         * bindings/scripts/CodeGeneratorV8.pm:
3566         * bindings/scripts/test/JS/JSTestObj.cpp:
3567         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
3568         * bindings/scripts/test/V8/V8TestObj.cpp:
3569         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
3570         * bindings/v8/ScriptCallStackFactory.cpp:
3571         (WebCore::createScriptCallStack):
3572         (WebCore::createScriptArguments):
3573         * bindings/v8/ScriptCallStackFactory.h:
3574         * bindings/v8/V8ConsoleMessage.cpp:
3575         (WebCore::V8ConsoleMessage::handler):
3576         (WebCore::V8ConsoleMessage::dispatchNow):
3577         * bindings/v8/V8ConsoleMessage.h:
3578         * bindings/v8/custom/V8ConsoleCustom.cpp:
3579         (WebCore::V8Console::traceCallback):
3580         (WebCore::V8Console::assertCallback):
3581         (WebCore::V8Console::profileCallback):
3582         (WebCore::V8Console::profileEndCallback):
3583         * inspector/ConsoleMessage.cpp:
3584         (WebCore::ConsoleMessage::ConsoleMessage):
3585         * inspector/ConsoleMessage.h:
3586         * inspector/InspectorController.cpp:
3587         (WebCore::InspectorController::addMessageToConsole):
3588         (WebCore::InspectorController::startGroup):
3589         * inspector/InspectorController.h:
3590         * inspector/ScriptArguments.cpp:
3591         (WebCore::ScriptArguments::create):
3592         * inspector/ScriptArguments.h:
3593         * inspector/ScriptCallFrame.h:
3594         * inspector/ScriptCallStack.cpp:
3595         (WebCore::ScriptCallStack::create):
3596         (WebCore::ScriptCallStack::at):
3597         (WebCore::ScriptCallStack::size):
3598         * inspector/ScriptCallStack.h:
3599         * page/Console.cpp:
3600         (WebCore::Console::addMessage):
3601         (WebCore::Console::debug):
3602         (WebCore::Console::error):
3603         (WebCore::Console::info):
3604         (WebCore::Console::log):
3605         (WebCore::Console::dir):
3606         (WebCore::Console::dirxml):
3607         (WebCore::Console::trace):
3608         (WebCore::Console::assertCondition):
3609         (WebCore::Console::count):
3610         (WebCore::Console::markTimeline):
3611         (WebCore::Console::profile):
3612         (WebCore::Console::profileEnd):
3613         (WebCore::Console::timeEnd):
3614         (WebCore::Console::group):
3615         (WebCore::Console::groupCollapsed):
3616         (WebCore::Console::warn):
3617         * page/Console.h:
3618
3619 2010-11-29  Dan Bernstein  <mitz@apple.com>
3620
3621         Build fix for non-ICU platforms after r72887.
3622
3623         * editing/TextIterator.cpp:
3624         (WebCore::SearchBuffer::prependContext):
3625
3626 2010-11-29  Dan Bernstein  <mitz@apple.com>
3627
3628         Reviewed by Darin Adler.
3629
3630         WebCore part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
3631         https://bugs.webkit.org/show_bug.cgi?id=50038
3632
3633         Test: editing/text-iterator/findString.html
3634
3635         * GNUmakefile.am: Added FindOptions.h.
3636         * WebCore.exp.in: Export the new methods that take FindOptions.
3637         * WebCore.gypi: Added FindOptions.h.
3638         * WebCore.pro: Added FindOptions.h and TextBoundaries.{cpp,h}.
3639         * WebCore.vcproj/WebCore.vcproj: Added FindOptions.h.
3640         * WebCore.xcodeproj/project.pbxproj: Added FindOptions.h and TextBoundaries.cpp.
3641         * editing/Editor.cpp:
3642         (WebCore::Editor::firstVisibleRange): Changed to use FindOptions.
3643         (WebCore::Editor::lastVisibleRange): Ditto.
3644         (WebCore::Editor::nextVisibleRange): Ditto.
3645         (WebCore::Editor::findString): Ditto.
3646         (WebCore::Editor::countMatchesForText): Ditto.
3647         * editing/Editor.h: Added a version of findString() that takes FindOptions. Changed
3648         countMatchesForText() to take FindOptions. Made nextVisibleRange() private and changed it
3649         and firstVisibleRange() and lastVisibleRange() to take FindOptions.
3650         * editing/FindOptions.h: Added.
3651         * editing/TextIterator.cpp:
3652         Augmented SearchBuffer with an optional prefix, which is not searched, but provides context
3653         for determining word boundaries.
3654         (WebCore::isSeparator): Added. Identifies a class of characters used to determine where
3655         “words” are embedded in a word.
3656         (WebCore::SearchBuffer::SearchBuffer): Changed to take FindOptions. Added initialization of
3657         m_options, m_prefixLength and m_needsMoreContext.
3658         (WebCore::SearchBuffer::append): Adjust m_prefixLength as part of the prefix gets pushed out
3659         of the buffer.
3660         (WebCore::SearchBuffer::needsMoreContext): Added.
3661         (WebCore::SearchBuffer::prependContext): Added.
3662         (WebCore::SearchBuffer::isWordStartMatch): Added.
3663         (WebCore::SearchBuffer::search): Changed to account for the context prefix. When searching
3664         only for word prefix matches, maintains enough context before a tentative match when moving
3665         it to the beginning of the buffer. Reject matches that are not at word starts if requested.
3666         Adjust m_prefixLength when pushing characters out of the buffer.
3667         (WebCore::findPlainText): Changed to work with FindOptions. Feed the search buffer with context
3668         if and as long as it requires more of it.
3669         * editing/TextIterator.h: Added a version of findPlainText() that takes FindOptions.
3670         * editing/visible_units.cpp: Moved {end,start}Of{First,Last}WordBoundary to TextBoundaries.cpp.
3671         * page/Page.cpp:
3672         (WebCore::Page::findString): Changed to work with FindOptions.
3673         (WebCore::Page::markAllMatchesForText): Ditto.
3674         * page/Page.h: Added FindOptions-based findString() and markAllMatchesForText().
3675         * platform/text/TextBoundaries.cpp:
3676         (WebCore::endOfFirstWordBoundaryContext): Moved here from visible_units.cpp.
3677         (WebCore::startOfLastWordBoundaryContext): Ditto.
3678         * platform/text/TextBoundaries.h:
3679
3680 2010-11-29  Dai Mikurube  <dmikurube@google.com>
3681
3682         Reviewed by Kent Tamura.
3683
3684         when empty, clicking "down" on outer-spin-button returns "max value"
3685         https://bugs.webkit.org/show_bug.cgi?id=45491
3686
3687         Modified stepping-up/down from renderer
3688         - to clamp steps,
3689         - to handle empty values (described below), and
3690         - to apply them for range type inputs.
3691
3692         Stepping-up/down for empty values are handled "the empty as 0."
3693         For example :
3694         * If 0 is in-range, and matches to step value
3695           "down" -> -step
3696           "up" -> +step
3697           If -step or +step is out of range, new value should be 0.
3698
3699         * If 0 is smaller than the minimum value
3700           "down" -> the minimum value
3701           "up" -> the minimum value
3702
3703         * If 0 is larger than the maximum value
3704           "down" -> the maximum value
3705           "up" -> the maximum value
3706
3707         * If 0 is in-range, but not matched to step value
3708           "down" -> smaler matched value nearest to 0.
3709             e.g. <input type=number min=-100 step=3> -> -1
3710           "up" -> larger matched value nearest to 0.
3711             e.g. <input type=number min=-100 step=3> -> 2
3712
3713         As for date/datetime-local/month/time/week types, the empty is assumed as "current local date/time".
3714         As for datetime type, the empty is assumed as "current date/time in UTC".
3715
3716         As for range input types, changed stepping from renderer to use stepUpFromRenderer().
3717         It was calculated with stepUp() from RangeInputType::handleKeydownEvent().
3718
3719         Test: fast/forms/input-stepup-stepdown-from-renderer.html
3720
3721         * html/BaseDateAndTimeInputType.cpp:
3722         (WebCore::BaseDateAndTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
3723         * html/BaseDateAndTimeInputType.h:
3724         * html/DateTimeInputType.cpp:
3725         (WebCore::DateTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current UTC time
3726         * html/DateTimeInputType.h:
3727         * html/HTMLInputElement.cpp:
3728         (WebCore::HTMLInputElement::stepUpFromRenderer): Modified it to clamp steps, support empty values and support range type inputs
3729         * html/HTMLInputElement.h:
3730         (WebCore::HTMLInputElement::isRangeControl):
3731         * html/InputType.cpp:
3732         (WebCore::InputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns 0
3733         * html/InputType.h:
3734         * html/MonthInputType.cpp:
3735         (WebCore::MonthInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local month
3736         * html/MonthInputType.h:
3737         * html/RangeInputType.cpp:
3738         (WebCore::RangeInputType::handleKeydownEvent): Added comments and modified it to use stepUpFromRenderer()
3739         * html/TimeInputType.cpp:
3740         (WebCore::TimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
3741         * html/TimeInputType.h:
3742         * 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.
3743
3744 2010-11-29  Adam Barth  <abarth@webkit.org>
3745
3746         Reviewed by Darin Adler.
3747
3748         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
3749         https://bugs.webkit.org/show_bug.cgi?id=50182
3750
3751         A display-isolated URL can only be displayed (e.g., put in an iframe,
3752         hyperlinked to) by documents from that scheme.  In a sense, this is a
3753         generalization of some of the protections we give file URLs, but
3754         instead of lumping them all together into one "local" bucket, this
3755         patch creates a separate bucket for each scheme.
3756
3757         For a while, I tried using a separate bucket for each origin.  That
3758         would have played nicely with what Blob URLs are trying to do, but some
3759         "chrome" URL pages rely on being able to display other chrome URL
3760         pages, even in different origins.  For example, the New Tab Page shows
3761         thumbnails from the "thumbnail" host.
3762
3763         This patch also removes a bunch of unused code.  I've also propagated
3764         the "deprecated" status of deprecatedCanDisplay to
3765         deprecatedShouldTreatURLAsLocal because that method has no other
3766         callers and is really asking for uppercase/lowercase bugs.  I dream of
3767         someday removing these functions.
3768
3769         * page/SecurityOrigin.cpp:
3770         (WebCore::SecurityOrigin::canDisplay):
3771         (WebCore::SecurityOrigin::deprecatedCanDisplay):
3772         * platform/SchemeRegistry.cpp:
3773         (WebCore::displayIsolatedURLSchemes):
3774         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
3775         (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
3776         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
3777         (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
3778         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
3779         * platform/SchemeRegistry.h:
3780
3781 2010-11-29  Sergio Villar Senin  <svillar@igalia.com>
3782
3783         Reviewed by Martin Robinson.
3784
3785         [GTK] Leaks in SoupCache code
3786         https://bugs.webkit.org/show_bug.cgi?id=50161
3787
3788         Fixes some memory leaks in SoupCache code.
3789
3790         * platform/network/soup/cache/soup-http-input-stream.c:
3791         (send_async_finished): Added a missing g_object_unref.
3792         * platform/network/soup/cache/webkit/soup-cache.c:
3793         (get_cacheability): Added soup_header_free_param_list.
3794         (webkit_soup_cache_entry_set_freshness): Ditto.
3795         (webkit_soup_cache_send_response): Ditto.
3796         (webkit_soup_cache_has_response): Ditto.
3797
3798 2010-11-29  Jian Li  <jianli@chromium.org>
3799
3800         Reviewed by David Levin.
3801
3802         Add send(ArrayBuffer) to XMLHttpRequest per XMLHttpRequest Level 2 spec
3803         https://bugs.webkit.org/show_bug.cgi?id=50199
3804
3805         Test: http/tests/xmlhttprequest/send-array-buffer.html
3806
3807         * bindings/js/JSXMLHttpRequestCustom.cpp:
3808         (WebCore::JSXMLHttpRequest::send):
3809         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3810         (WebCore::V8XMLHttpRequest::sendCallback):
3811         * xml/XMLHttpRequest.cpp:
3812         (WebCore::XMLHttpRequest::send):
3813         * xml/XMLHttpRequest.h:
3814
3815 2010-11-29  James Robinson  <jamesr@chromium.org>
3816
3817         [chromium] REGRESSION(72470): Crash in skia on some images
3818         https://bugs.webkit.org/show_bug.cgi?id=50201
3819
3820         Reverts r72470
3821
3822         * platform/graphics/skia/ImageSkia.cpp:
3823         (WebCore::computeResamplingMode):
3824         (WebCore::drawResampledBitmap):
3825
3826 2010-11-29  Dmitry Titov  <dimich@chromium.org>
3827
3828         Reviewed by David Levin.
3829
3830         Crash when iframe transfers from one page to another and has child frames.
3831         https://bugs.webkit.org/show_bug.cgi?id=50200
3832
3833         * page/Frame.cpp:
3834         (WebCore::Frame::transferChildFrameToNewDocument):
3835         avoid overriding 'didTransfer' which has the result of previous check.
3836
3837 2010-11-19  Ryosuke Niwa  <rniwa@webkit.org>
3838
3839         Reviewed by David Hyatt.
3840
3841         up arrow doesn't work with RTL text with word wrapping
3842         https://bugs.webkit.org/show_bug.cgi?id=41987
3843
3844         The bug was caused by positionForPoint's not returning the correct affinity when the x coordiate
3845         is to the left of the first line, and startOfLine's incorrectly moving position to the previous candidate.
3846
3847         Fixed the bug by returning upstream VisiblePosition in positionForPoint if the first inline text box's offset
3848         is greater than 0.  Also removed the code added by http://trac.webkit.org/changeset/23608 since this changeset
3849         does not add any test, and the problem described in the changelog reproduces regardless of the code's presence.
3850
3851         Tests: editing/selection/click-left-of-rtl-wrapping-text.html
3852                editing/selection/modify-up-on-rtl-wrapping-text.html
3853
3854         * editing/visible_units.cpp:
3855         (WebCore::startOfLine):
3856         * rendering/RenderText.cpp:
3857         (WebCore::RenderText::positionForPoint):
3858
3859 2010-11-29  Ilya Sherman  <isherman@chromium.org>
3860
3861         Reviewed by Kent Tamura.
3862
3863         Ensure that option elements are rendered with normal font weight on Windows/Linux
3864         https://bugs.webkit.org/show_bug.cgi?id=50055
3865
3866         * WebCore.gyp/WebCore.gyp: include themeChromiumSkia.css
3867         * css/themeChromiumSkia.css: Added.
3868         (option): font-weight: normal !important;
3869         * rendering/RenderThemeChromiumSkia.cpp:
3870         (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): include themeChromiumSkia.css
3871
3872 2010-11-29  Brent Fulgham  <bfulgham@webkit.org>
3873
3874         Unreviewed build fix.
3875
3876         * WebCore.vcproj/WebCoreCairo.vsprops: Provide missing WIN_CAIRO
3877           definition so that proper targets are build.
3878         * platform/graphics/win/cairo/FontPlatformData.h:
3879         (WebCore::FontPlatformData::orientation): Add missing implementation.
3880
3881 2010-11-29  Chris Rogers  <crogers@google.com>
3882
3883         Reviewed by Kenneth Russell.
3884
3885         Switch web audio code to use FloatPoint3D instead of Vector3
3886         https://bugs.webkit.org/show_bug.cgi?id=50186
3887
3888         No new tests since audio API is not yet implemented.
3889
3890         * platform/audio/Cone.cpp:
3891         (WebCore::ConeEffect::gain):
3892         * platform/audio/Cone.h:
3893         * platform/graphics/FloatPoint3D.h:
3894         (WebCore::FloatPoint3D::isZero):
3895         (WebCore::operator*):
3896         (WebCore::FloatPoint3D::distanceTo):
3897         * webaudio/AudioListener.h:
3898         (WebCore::AudioListener::setPosition):
3899         (WebCore::AudioListener::position):
3900         (WebCore::AudioListener::setOrientation):
3901         (WebCore::AudioListener::orientation):
3902         (WebCore::AudioListener::setUpVector):
3903         (WebCore::AudioListener::upVector):
3904         (WebCore::AudioListener::setVelocity):
3905         (WebCore::AudioListener::velocity):
3906         * webaudio/AudioPannerNode.cpp:
3907         (WebCore::AudioPannerNode::AudioPannerNode):
3908         (WebCore::AudioPannerNode::getAzimuthElevation):
3909         (WebCore::AudioPannerNode::dopplerRate):
3910         (WebCore::AudioPannerNode::distanceConeGain):
3911         * webaudio/AudioPannerNode.h:
3912         (WebCore::AudioPannerNode::position):
3913         (WebCore::AudioPannerNode::setPosition):
3914         (WebCore::AudioPannerNode::orientation):
3915         (WebCore::AudioPannerNode::setOrientation):
3916         (WebCore::AudioPannerNode::velocity):
3917         (WebCore::AudioPannerNode::setVelocity):
3918
3919 2010-11-29  Xiaomei Ji  <xji@chromium.org>
3920
3921         Reviewed by David Hyatt.
3922
3923         Right-to-left pages should be scrollable to reveal left overflow.
3924         https://bugs.webkit.org/show_bug.cgi?id=23556
3925
3926         For RTL page, save left layout overflow and include it into the document
3927         size during layout. Use the left layout overflow when scroll and paint
3928         the page. Behavior on LTR page should be untouched since left layout 
3929         overflow is set as 0 for LTR page.
3930
3931         Tests: fast/dom/horizontal-scrollbar-in-rtl-doesnt-fire-onscroll.html
3932                fast/dom/horizontal-scrollbar-in-rtl.html
3933                fast/dom/horizontal-scrollbar-when-dir-change.html
3934                fast/dom/left-overflow-in-ltr.html
3935                fast/dom/right-overflow-in-rtl.html
3936
3937         * page/FrameView.cpp:
3938         (WebCore::FrameView::adjustViewSize): Save negative of left layout overflow as scroll X origin. And includes left layout overflow into document size.
3939         * page/mac/WebCoreFrameView.h: Add methods for setting and getting scroll X origin.
3940         * platform/ScrollView.cpp:
3941         (WebCore::ScrollView::ScrollView):
3942         (WebCore::ScrollView::maximumScrollPosition): Minus scroll X origin from maximum horizontal scroll position.
3943         (WebCore::ScrollView::minimumScrollPosition):
3944         (WebCore::ScrollView::adjustScrollPositionWithinRange):
3945         (WebCore::ScrollView::valueChanged):
3946         (WebCore::ScrollView::setScrollPosition):
3947         (WebCore::ScrollView::updateScrollbars):
3948         (WebCore::ScrollView::wheelEvent):
3949         * platform/ScrollView.h:
3950         * platform/mac/ScrollViewMac.mm:
3951         (WebCore::ScrollView::platformSetContentsSize):
3952         (WebCore::ScrollView::platformSetScrollPosition):
3953         (WebCore::ScrollView::platformSetScrollOriginX):
3954         * rendering/RenderBox.cpp:
3955         (WebCore::RenderBox::styleDidChange):
3956         (WebCore::RenderBox::paintRootBoxDecorations): Include left layout overflow into canvas size.
3957         * rendering/RenderView.cpp:
3958         (WebCore::RenderView::layout): Save left layout overflow.
3959         (WebCore::RenderView::docLeft):
3960         (WebCore::RenderView::docWidth): Include left layout overflow into doc width for RTL page.
3961         * rendering/RenderView.h:
3962
3963 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
3964
3965         Reviewed by Ojan Vafai.
3966
3967         bunch of pixel failures after http://trac.webkit.org/changeset/72839/
3968         https://bugs.webkit.org/show_bug.cgi?id=50188
3969         
3970         We need to call updateLayerTransform() for reflections, and
3971         table rows as well.
3972
3973         * rendering/RenderReplica.cpp:
3974         (WebCore::RenderReplica::layout):
3975         * rendering/RenderTableRow.cpp:
3976         (WebCore::RenderTableRow::layout):
3977         * rendering/RenderTableSection.cpp:
3978         (WebCore::RenderTableSection::layoutRows):
3979
3980 2010-11-29  Xiaomei Ji  <xji@chromium.org>
3981
3982         Reviewed by David Hyatt.
3983
3984         Fix tab overflow problem when alignment is not left.
3985         https://bugs.webkit.org/show_bug.cgi?id=25459
3986
3987         I checked WordPad in Windows, TextEdit in Mac, OpenOffice, and Google doc. 
3988         In all of them, (when the writing mode is horizontal) when the alignment is not
3989         left alignment, the length of tab is computed based on the tab's position
3990         relative to the left start of line, not based on the tab's position relative 
3991         to the left edge of the document.
3992
3993         WebKit should follow the same.
3994
3995         The m_xPos in each TextRun should be relative to the left start of the line, 
3996         not left start of its containing block (in right alignment and center alignment,
3997         left start of the line is not the same as left start of the containing block).
3998         So, when the text is drawn, the width of tab is consistent with the width 
3999         computed in RenderBlock::computeInlineDirectionPositionsForLine().
4000
4001         I did not test vertical writing mode, but I think the same rule should apply.
4002
4003         Test: fast/dom/tab-in-right-alignment.html
4004
4005         * platform/graphics/TextRun.h:
4006         * rendering/InlineTextBox.cpp:
4007         (WebCore::InlineTextBox::textPos):
4008         * rendering/InlineTextBox.h:
4009
4010 2010-11-29  Mikhail Naganov  <mnaganov@chromium.org>
4011
4012         Reviewed by Pavel Feldman.
4013
4014         WebInspector: Request JSON-serialized heap snapshot from JS engine.
4015         This simplifies heap snapshots interaction and API. Instead of
4016         having objects representing snapshot entities, the whole snapshot
4017         is transferred to WebInspector and parsed there.
4018
4019         https://bugs.webkit.org/show_bug.cgi?id=49974
4020
4021         * bindings/js/ScriptHeapSnapshot.h:
4022         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
4023         (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
4024         (WebCore::ScriptHeapSnapshot::writeJSON):
4025         (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
4026         * bindings/v8/ScriptHeapSnapshot.cpp:
4027         (WebCore::ScriptHeapSnapshot::writeJSON):
4028         * bindings/v8/ScriptHeapSnapshot.h:
4029         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
4030         * inspector/Inspector.idl:
4031         * inspector/InspectorProfilerAgent.cpp:
4032         (WebCore::InspectorProfilerAgent::getProfile):
4033         * inspector/front-end/HeapSnapshotView.js:
4034         (WebInspector.HeapSnapshotEdgesIterator):
4035         (WebInspector.HeapSnapshotEdgesIterator.prototype.get done):
4036         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement):
4037         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden):
4038         (WebInspector.HeapSnapshotEdgesIterator.prototype.get name):
4039         (WebInspector.HeapSnapshotEdgesIterator.prototype.next):
4040         (WebInspector.HeapSnapshotEdgesIterator.prototype.get node):
4041         (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex):
4042         (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex):
4043         (WebInspector.HeapSnapshotEdgesIterator.prototype._getType):
4044         (WebInspector.HeapSnapshotNodeWrapper):
4045         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges):
4046         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount):
4047         (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount):
4048         (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden):
4049         (WebInspector.HeapSnapshotNodeWrapper.prototype.get name):
4050         (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize):
4051         (WebInspector.HeapSnapshotNodeWrapper.prototype._getName):
4052         (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges):
4053         (WebInspector.HeapSnapshotNodeWrapper.prototype._getType):
4054         (WebInspector.HeapSnapshot):
4055         (WebInspector.HeapSnapshot.prototype._init):
4056         (WebInspector.HeapSnapshot.prototype.get rootEdges):
4057         (WebInspector.HeapSnapshotView.prototype.snapshotLoaded):
4058         (WebInspector.HeapSnapshotView.prototype._loadProfile.processLoadedSnapshot):
4059         (WebInspector.HeapSnapshotView.prototype._loadProfile):
4060         (WebInspector.HeapSnapshotView.prototype._convertSnapshot):
4061         (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers):
4062         (WebInspector.HeapSnapshotView.prototype._prepareProfile):
4063         (WebInspector.HeapSnapshotView.prototype._sortData):
4064         * inspector/front-end/ProfilesPanel.js:
4065         (WebInspector.ProfilesPanel):
4066         (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
4067         (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
4068         * inspector/front-end/inspector.js:
4069         (WebInspector.addHeapSnapshotChunk):
4070         (WebInspector.finishHeapSnapshot):
4071
4072 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
4073
4074         Reviewed by Dave Hyatt.
4075
4076         layer()->currentTransform() is stale when layout changes the box size
4077         https://bugs.webkit.org/show_bug.cgi?id=50175
4078         
4079         RenderLayer::updateTransform() is fairly expensive, so we
4080         have to avoid calling it from RenderBox::applyLayerTransformToRect()
4081         every time. This requires that we update the layer's transform
4082         during layout, instead of from updateLayerPositions() which is too late.
4083         
4084         So call updateLayerTransform() from the various layout methods
4085         on renderers that can be transformed, and remove it from 
4086         updateLayerPositions().
4087
4088         Test: fast/overflow/overflow-update-transform.html
4089
4090         * rendering/RenderBlock.cpp:
4091         (WebCore::RenderBlock::layoutBlock):
4092         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
4093         * rendering/RenderBox.cpp:
4094         (WebCore::RenderBox::applyLayerTransformToRect):
4095         (WebCore::RenderBox::updateLayerTransform):
4096         * rendering/RenderBox.h:
4097         * rendering/RenderEmbeddedObject.cpp:
4098         (WebCore::RenderEmbeddedObject::layout):
4099         * rendering/RenderFlexibleBox.cpp:
4100         (WebCore::RenderFlexibleBox::layoutBlock):
4101         * rendering/RenderIFrame.cpp:
4102         (WebCore::RenderIFrame::layout):
4103         * rendering/RenderLayer.cpp:
4104         (WebCore::RenderLayer::updateLayerPositions):
4105         * rendering/RenderReplaced.cpp:
4106         (WebCore::RenderReplaced::layout):
4107         * rendering/RenderTable.cpp:
4108         (WebCore::RenderTable::layout):
4109
4110 2010-11-29  Chris Rogers  <crogers@google.com>
4111
4112         Reviewed by Kenneth Russell.
4113
4114         Add remaining custom JSC web audio bindings
4115         https://bugs.webkit.org/show_bug.cgi?id=50172
4116
4117         No new tests since audio API is not yet implemented.
4118
4119         * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added.
4120         (WebCore::JSAudioBufferSourceNode::setBuffer):
4121         * bindings/js/JSConvolverNodeCustom.cpp: Added.
4122         (WebCore::JSConvolverNode::setBuffer):
4123         * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added.
4124         (WebCore::JSJavaScriptAudioNode::markChildren):
4125         * webaudio/AudioBufferSourceNode.idl:
4126         * webaudio/ConvolverNode.idl:
4127
4128 2010-11-29  Yael Aharon  <yael.aharon@nokia.com>
4129
4130         Reviewed by Darin Adler.
4131
4132         HTMLFormElement.elements doesn't include fieldsets
4133         https://bugs.webkit.org/show_bug.cgi?id=48193
4134
4135         Add fieldset and keygen to the list of form collection elements, by making them enumeratable.
4136         This patch does not add object element to the list. A separate bug will do that.
4137
4138         Test: fast/forms/form-collection-elements.html
4139
4140         * html/HTMLFieldSetElement.h:
4141         (WebCore::HTMLFieldSetElement::isEnumeratable):
4142         * html/HTMLKeygenElement.h:
4143         (WebCore::HTMLKeygenElement::isEnumeratable):
4144
4145 2010-11-29  Xan Lopez  <xlopez@igalia.com>
4146
4147         Reviewed by Martin Robinson.
4148
4149         Get distcheck going.
4150
4151         * GNUmakefile.am:
4152
4153 2010-11-29  Alexey Proskuryakov  <ap@apple.com>
4154
4155         Reviewed by Darin Adler.
4156
4157         https://bugs.webkit.org/show_bug.cgi?id=50181
4158         CSS style declarations don't GC protect parents
4159
4160         Test: fast/dom/StyleSheet/gc-declaration-parent-rule.html
4161
4162         * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::markChildren):
4163         Protect the parent rule.
4164
4165 2010-11-29  Ilya Tikhonovsky  <loislo@chromium.org>
4166
4167         Reviewed by Pavel Feldman.
4168
4169         Web Inspector: UI fix. In Timeline, Paint events "Location" value is displayed
4170         in a confusing manner. The format string should be changed from %d x %d
4171         pattern to (%d, %d).
4172
4173         https://bugs.webkit.org/show_bug.cgi?id=50178
4174
4175         * English.lproj/localizedStrings.js:
4176         * inspector/front-end/TimelinePanel.js:
4177         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
4178
4179 2010-11-29  Darin Adler  <darin@apple.com>
4180
4181         Reviewed by Andreas Kling.
4182
4183         Remove a couple unneeded overflow checks
4184         https://bugs.webkit.org/show_bug.cgi?id=49816
4185
4186         * platform/text/TextCodecUTF16.cpp:
4187         (WebCore::TextCodecUTF16::encode): Use an ASSERT instead of
4188         an overflow check with CRASH.
4189
4190 2010-11-29  Tony Chang  &l