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