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