2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>
2
3         Reviewed by Alexey Proskuryakov.
4
5         Ignore ports on local URLs. This fixes a regression in
6         fast/loader/file-URL-with-port-number.html
7
8         * platform/network/soup/ResourceHandleSoup.cpp:
9         (WebCore::ResourceHandle::startGio):
10
11 2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>
12
13         Reviewed by Alexey Proskuryakov.
14
15         Make setPort remove port if 0 is given to it, as promised by the
16         comment in KURL's header.
17
18         * platform/KURL.cpp:
19         (WebCore::KURL::setPort):
20
21 2009-02-18  Dan Bernstein  <mitz@apple.com>
22
23         Reviewed by Brady Eidson.
24
25         - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle
26
27         The crash results from re-entry into
28         CSSMutableStyleDeclaration::setCssText, which in turn is caused by
29         the first style change causing a cached image to load from the memory
30         cache, causing load delegate dispatch, and iChat's delegate method
31         calling back into WebKit.
32
33         The workaround is to use defer delegate callbacks for memory cache. In
34         this case, deferring callbacks during image load event dispatch was
35         found to be sufficient.
36
37         The crash is a regression. See also the discussion in
38         <https://bugs.webkit.org/show_bug.cgi?id=22521>.
39
40         * WebCore.base.exp: Added
41         Settings::setNeedsIChatMemoryCacheCallsQuirk().
42         * dom/Document.cpp:
43         (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
44         enabled, defer memory cache callbacks during image load event dispatch.
45         * page/Settings.cpp:
46         (WebCore::Settings::Settings): Initialize
47         m_needsIChatMemoryCacheCallsQuirk.
48         (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
49         setter.
50         * page/Settings.h:
51         (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.
52
53 2009-02-18  Adam Roben  <aroben@apple.com>
54
55         Export WebCore::handCursor and Cursor.h
56
57         Reviewed by John Sullivan.
58
59         * WebCore.base.exp: Added WebCore::handCursor.
60         * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.
61
62 2009-02-18  Ojan Vafai  <ojan@chromium.org>
63
64         Reviewed by Alexey Proskuryakov.
65
66         https://bugs.webkit.org/show_bug.cgi?id=23992
67         REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do
68
69         Unable to reduce to a layout test.
70
71         * page/Frame.cpp:
72         (WebCore::Frame::contentRenderer):
73
74 2009-02-18  Evan Stade  <estade@chromium.org>
75
76         Reviewed by Eric Seidel.
77
78         https://bugs.webkit.org/show_bug.cgi?id=23861
79         Stroke font outlines on chromium linux
80
81         TEST=LayoutTests/svg/custom/pointer-events-text.svg
82
83         * platform/graphics/chromium/FontLinux.cpp:
84         (WebCore::Font::drawGlyphs):
85
86 2009-02-18  Evan Stade  <estade@chromium.org>
87
88         Reviewed by Eric Seidel.
89
90         https://bugs.webkit.org/show_bug.cgi?id=23860
91         Resync some graphics/skia files with their chromium counterparts
92
93         This comes from chromium patches <http://codereview.chromium.org/17633>
94         and <http://codereview.chromium.org/17454>
95
96         * platform/graphics/skia/GraphicsContextSkia.cpp:
97         (WebCore::GraphicsContext::clipPath):
98         (WebCore::GraphicsContext::fillPath):
99         * platform/graphics/skia/PlatformContextSkia.cpp:
100         (PlatformContextSkia::addPath):
101         (PlatformContextSkia::currentPath):
102         * platform/graphics/skia/PlatformContextSkia.h:
103
104 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
105
106         Unreviewed.
107
108         Build fix after r41060.
109
110         * GNUmakefile.am:
111
112 2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>
113
114         Reviewed by Eric Seidel.
115
116         https://bugs.webkit.org/show_bug.cgi?id=24005
117         Add an include to fix Chromium build.
118
119         * page/animation/AnimationController.cpp: Add UnusedParam.h include.
120
121 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
122
123         Reviewed by Holger Freyther.
124
125         Fix symbols.filter location, and add other missing files to the
126         autotools build, so that make dist works.
127
128         * GNUmakefile.am:
129
130 2009-02-18  Zan Dobersek  <zandobersek@gmail.com>
131
132         Rubber-stamped by Holger Hans Peter Freyther.
133
134         Allow POST method for local requests.
135
136         * platform/network/soup/ResourceHandleSoup.cpp:
137         (WebCore::ResourceHandle::startGio):
138
139 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
140
141         Reviewed by Holger Hans Peter Freyther.
142
143         Use KURL in startGio instead of passing a string with the URL, so
144         that we can handle removing refs and queries more elegantly. This
145         is fixing more regressions that came from the curl->soup switch.
146
147         Original work by Zan Dobersek.
148
149         * platform/network/ResourceHandle.h:
150         * platform/network/soup/ResourceHandleSoup.cpp:
151         (WebCore::ResourceHandle::start):
152         (WebCore::ResourceHandle::startGio):
153
154 2009-02-18  Holger Hans Peter Freyther  <zecke@selfish.org>
155
156         Reviewed by Alexey Proskuryakov.
157
158         Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
159
160         The implementation is needed to have synchronous loading, e.g. for
161         JavaScript interaction. This is fixing various regressions that
162         came from the curl->soup switch.
163
164         * platform/network/soup/ResourceHandleSoup.cpp:
165         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
166         (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
167         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
168         (WebCore::WebCoreSynchronousLoader::didReceiveData):
169         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
170         (WebCore::WebCoreSynchronousLoader::didFail):
171         (WebCore::WebCoreSynchronousLoader::run):
172         (WebCore::ResourceHandle::loadResourceSynchronously):
173
174 2009-02-18  Xan Lopez  <xan@gnome.org>
175
176         Reviewed by Mark Rowe.
177
178         https://bugs.webkit.org/show_bug.cgi?id=23989
179
180         Based on a patch by Bo Yang  <techrazy.yang@gmail.com>
181
182         Make the cursor cache global, that's all we really need and
183         otherwise we can miss cursor transitions in some situations (see
184         the bug for one testcase). Also remove some now useless code.
185
186         * platform/Widget.h:
187         * platform/gtk/WidgetGtk.cpp:
188         (WebCore::Widget::Widget):
189         (WebCore::Widget::~Widget):
190         (WebCore::Widget::setCursor):
191
192 2009-02-17  Adam Roben  <aroben@apple.com>
193
194         Windows build fix
195
196         * loader/FrameLoader.cpp:
197         (WebCore::toPlugInElement): Don't rely on #if being processed before
198         ASSERT.
199
200 2009-02-17  David Levin  <levin@chromium.org>
201
202         Reviewed by Alexey Proskuryakov.
203
204         Bug 23977: Unnecessary timer related headers in files.
205         <https://bugs.webkit.org/show_bug.cgi?id=23977>
206
207         No observable change in behavior, so no test.
208
209         * dom/Document.cpp:
210         * dom/WorkerRunLoop.cpp:
211         * dom/WorkerRunLoop.h:
212
213 2009-02-17  Peter Abrahamsen  <rainhead@gmail.com>
214
215         Reviewed by Sam Weinig.
216
217         https://bugs.webkit.org/show_bug.cgi?id=23958
218         <rdar://problem/6587815>
219
220         Updated XMLHttpRequest with new header names from the latest Access
221         Control draft: http://www.w3.org/TR/access-control/
222         - Access-Control-Origin becomes Access-Control-Allow-Origin
223         - Access-Control-Credentials becomes Access-Control-Allow-Credentials
224
225         * xml/XMLHttpRequest.cpp:
226         (WebCore::XMLHttpRequest::accessControlCheck):
227
228 2009-02-17  Kevin Ollivier  <kevino@theolliviers.com>
229
230         wx build fix. Add missing constructor used for empty values.
231
232         * platform/graphics/wx/FontPlatformData.h:
233         (WebCore::FontPlatformData::FontPlatformData):
234
235 2009-02-17  Antti Koivisto  <antti@apple.com>
236
237         Reviewed by Dave Kilzer.
238
239         <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
240         
241         Need update after callback.
242
243         * bindings/js/JSCustomPositionCallback.cpp:
244         (WebCore::JSCustomPositionCallback::handleEvent):
245         * bindings/js/JSCustomPositionErrorCallback.cpp:
246         (WebCore::JSCustomPositionErrorCallback::handleEvent):
247
248 2009-02-17  Eric Carlson  <eric.carlson@apple.com>
249
250         Reviewed by Antti Koivisto.
251
252         https://bugs.webkit.org/show_bug.cgi?id=23917
253         Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
254         element.
255
256         * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
257
258         * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
259
260         * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
261
262         * html/HTMLMediaElement.cpp:
263         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
264         (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
265         proxy plug-in handles the poster frame.
266         (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
267         (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
268         (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
269         (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
270         same plug-in for the life of the element.
271         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
272         network state changes to EMPTY, otherwise we can get out of sync with engine.
273         (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
274         (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
275         media player.
276         (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
277         (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
278         <source> element to be used as the initial url for the proxy.
279         (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
280         * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
281         (WebCore::HTMLMediaElement::setNeedWidgetUpdate): 
282
283         * html/HTMLVideoElement.cpp:
284         (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
285         (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
286         * html/HTMLVideoElement.h:
287
288         * loader/FrameLoader.cpp:
289         (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
290
291         * platform/graphics/MediaPlayer.cpp:
292         (WebCore::MediaPlayer::MediaPlayer): Remove white space.
293         (WebCore::MediaPlayer::setPoster): New, forward call to private player.
294         (WebCore::MediaPlayer::deliverNotification): Ditto.
295         (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
296         * platform/graphics/MediaPlayer.h:
297         (WebCore::MediaPlayer::mediaPlayerClient):
298
299         * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
300
301         * rendering/RenderPart.cpp:
302         (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
303         non-element node doesn't need a renderer
304         * rendering/RenderPart.h: Ditto.
305
306         * rendering/RenderPartObject.cpp:
307         (WebCore::RenderPartObject::RenderPartObject): Ditto.
308         (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is 
309         <video> or <audio>.
310         * rendering/RenderPartObject.h:
311
312 2009-02-17  David Hyatt  <hyatt@apple.com>
313
314         Reviewed by Eric Seidel
315
316         Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
317
318         Don't allow legends to be anything but display:block.
319
320         Added fast/forms/inline-ignored-on-legend.html
321
322         * GNUmakefile.am:
323         * WebCore.pro:
324         * WebCore.vcproj/WebCore.vcproj:
325         * WebCore.xcodeproj/project.pbxproj:
326         * WebCoreSources.bkl:
327         * css/html4.css:
328         * html/HTMLLegendElement.cpp:
329         * html/HTMLLegendElement.h:
330         * rendering/RenderLegend.cpp: Removed.
331         * rendering/RenderLegend.h: Removed.
332         * wml/WMLInsertedLegendElement.cpp:
333         * wml/WMLInsertedLegendElement.h:
334
335 2009-02-13  Brett Wilson  <brettw@dhcp-172-22-71-167.mtv.corp.google.com>
336
337         Reviewed by Simon Fraser.
338
339         https://bugs.webkit.org/attachment.cgi?id=27666 
340         Fix Chromium build build: forgotten include in RenderObject, sync
341         RenderTheme to the recent changes in RenderObject.
342
343         * rendering/RenderObject.cpp:
344         * rendering/RenderThemeChromiumMac.mm:
345         (WebCore::RenderThemeChromiumMac::updatePressedState):
346
347 2009-02-17  Gustavo Noronha Silva  <gns@gnome.org>
348
349         Reviewed by Darin Adler.
350
351         https://bugs.webkit.org/show_bug.cgi?id=22966
352         crash when destroying a webview that opened a page containing <script>
353         tags
354
355         Fix m_group being set to 0 instead of to m_singlePageGroup when
356         GroupName is set to empty
357
358         * page/Page.cpp:
359         (WebCore::Page::setGroupName):
360
361 2009-02-16  Beth Dakin  <bdakin@apple.com>
362
363         Reviewed by Sam Weinig.
364
365         Fix for <rdar://problem/6386623>
366
367         I made m_numParsedProperties and m_maxParsedProperties unsigned 
368         instead of int, and then added an early return from addPropery() if 
369         m_maxParsedProperties exceeds the max value.
370
371         * css/CSSParser.cpp:
372         (WebCore::CSSParser::addProperty):
373         (WebCore::CSSParser::rollbackLastProperties):
374         (WebCore::CSSParser::clearProperties):
375         (WebCore::CSSParser::createFontFaceRule):
376         (WebCore::CSSParser::deleteFontFaceOnlyValues):
377         * css/CSSParser.h:
378
379 2009-02-16  Justin Garcia  <justin.garcia@apple.com>
380
381         Reviewed by Mark Rowe.
382
383         https://bugs.webkit.org/show_bug.cgi?id=16309
384         HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
385         
386         When we originally implemented this command, MSDN documentation said that IE set the
387         id attribute of inserted lists to the third argument to execCommand, but IE doesn't
388         do this nor do any other browsers.
389
390         * editing/EditorCommand.cpp:
391         (WebCore::executeInsertOrderedList):
392         (WebCore::executeInsertUnorderedList):
393         * editing/IndentOutdentCommand.cpp:
394         (WebCore::IndentOutdentCommand::outdentParagraph):
395         * editing/InsertListCommand.cpp:
396         (WebCore::InsertListCommand::insertList):
397         (WebCore::InsertListCommand::InsertListCommand):
398         (WebCore::InsertListCommand::doApply):
399         * editing/InsertListCommand.h:
400         (WebCore::InsertListCommand::create):
401
402 2009-02-16  Dan Bernstein  <mitz@apple.com>
403
404         Reviewed by Geoffrey Garen.
405
406         - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
407
408         Test: platform/mac/fast/events/pointer-events-dashboard.html
409
410         * css/CSSStyleSelector.cpp:
411         (WebCore::CSSStyleSelector::applyProperty): Do not apply the
412         pointer-events property in Dashboard backwards compatibility mode,
413         in order to work around misuse of that property by the Stocks widget.
414
415 2009-02-16  Justin Garcia  <justin.garcia@apple.com>
416
417         Reviewed by Eric Seidel.
418
419         https://bugs.webkit.org/show_bug.cgi?id=15381
420         execCommand justify modifies the contentEditable node
421
422         * editing/CompositeEditCommand.cpp:
423         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
424         the body element, but any root editable element.
425         
426 2009-02-16  Chris Fleizach  <cfleizach@apple.com>
427
428         Reviewed by Adele Peterson.
429  
430         Bug 23979: AX: alt tag not returned for <input type="image">
431         https://bugs.webkit.org/show_bug.cgi?id=23979
432
433         Test: accessibility/input-image-alt.html
434
435         * page/AccessibilityRenderObject.cpp:
436         (WebCore::AccessibilityRenderObject::accessibilityDescription):
437
438 2009-02-16  Kevin Watters  <kevinwatters@gmail.com>
439
440         Reviewed by Kevin Ollivier.
441
442         The ref data is not properly set unless we use the CreateMatrix function.
443         
444         https://bugs.webkit.org/show_bug.cgi?id=23978
445
446         * platform/graphics/wx/TransformationMatrixWx.cpp:
447         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
448
449 2009-02-16  Dan Bernstein  <mitz@apple.com>
450
451         Reviewed by John Sullivan.
452
453         - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
454
455         * platform/graphics/FontCache.cpp:
456         (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
457         FontPlatformData(float, bool, bool) constructor.
458         * platform/graphics/mac/FontCacheMac.mm:
459         (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
460         NSFont to the FontPlatformData constructor, instead of implicitly
461         passing 0 and then calling setFont().
462         * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
463         of the constructor mandatory.
464
465 2009-02-15  David Kilzer  <ddkilzer@apple.com>
466
467         Move duplicate caretWidth constants to RenderObject.h
468
469         Reviewed by Dan Bernstein.
470
471         No test since no change in behavior.
472
473         * rendering/RenderBlock.cpp:
474         (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
475         * rendering/RenderBox.cpp:
476         (WebCore::RenderBox::localCaretRect): Ditto.
477         * rendering/RenderObject.h: Added caretWidth definition.
478         * rendering/RenderText.cpp:
479         (WebCore::RenderText::localCaretRect): Removed caretWidth.
480
481 2009-02-13  Dimitri Glazkov  <dglazkov@chromium.org>
482
483         Reviewed by Eric Seidel.
484
485         https://bugs.webkit.org/show_bug.cgi?id=23955
486         V8HTMLPlugInCustom returns undefined, which fools interceptors.
487
488         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
489         (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
490         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
491         (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
492         (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
493
494 2009-02-13  Dimitri Glazkov  <dglazkov@chromium.org>
495
496         Reviewed by Eric Seidel.
497
498         https://bugs.webkit.org/show_bug.cgi?id=23954
499         Add V8 custom bindings for CanvasRenderingContext2D.
500
501         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
502         (WebCore::toV8):
503         (WebCore::toCanvasStyle):
504         (WebCore::ACCESSOR_GETTER):
505         (WebCore::ACCESSOR_SETTER):
506
507 2009-02-13  Anders Carlsson  <andersca@apple.com>
508
509         Reviewed by Darin Adler and Dan Bernstein.
510
511         <rdar://problem/6583187>
512         
513         * page/NavigatorBase.cpp:
514         Handle PPC64 and X86_64 as well.
515
516 2009-02-13  Darin Adler  <darin@apple.com>
517
518         Reviewed by Mark Rowe.
519
520         Fix broken tokenizer regression test that reflected a lifetime bug
521         in the document.write optimization. The test failure was trivial to
522         reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
523
524         * bindings/js/JSHTMLDocumentCustom.cpp:
525         (WebCore::documentWrite): Convert strings to String rather than passing
526         the pointer and length to SegmentedString. The optimization is thus
527         mostly gone. However, there are two ways to bring it back: 1) Apply
528         the patch that makes UString and String share the same buffers.
529         2) Add a UString feature to SegmentedString; simple to do but might
530         risk slowing down normal document parsing.
531
532 2009-02-13  Adam Treat  <adam.treat@torchmobile.com>
533
534         Caught by Darin Adler.
535
536         No reason to check m_tokenizer twice for 0 in a row.
537
538         * dom/Document.cpp:
539         (WebCore::Document::write):
540
541 2009-02-13  Lyon Chen  <lyon.chen@torchmobile.com>
542
543         Reviewed by Dave Hyatt.
544
545         Take into account y() + height() when calculating getLowerRightCorner.
546
547         * dom/ContainerNode.cpp:
548         (WebCore::ContainerNode::getLowerRightCorner):
549
550 2009-02-13  Antti Koivisto  <antti@apple.com>
551
552         Reviewed by Dave Hyatt.
553
554         Most of this code was in RenderBox, restore the copyright lines.
555
556         * rendering/RenderBoxModelObject.cpp:
557         * rendering/RenderBoxModelObject.h:
558
559 2009-02-13  David Hyatt  <hyatt@apple.com>
560
561         Get rid of printBoxDecorations, since it is dead code.
562
563         Reviewed by Dan Bernstein
564
565         * rendering/RenderObject.h:
566
567 2009-02-13  Adam Treat  <adam.treat@torchmobile.com>
568
569         Reviewed by Darin Adler.
570
571         https://bugs.webkit.org/show_bug.cgi?id=23952
572         Add Document::write overload which takes a SegmentedString since this
573         is what the tokenizer expects anyway.  Modified JSHTMLDocument so it once
574         again calls Document::write instead of injecting the string directly into
575         the tokenizer.  This ensures that all document.write's are funneled through
576         one method again, but should still be just as fast for JSHTMLDocumentCustom.
577
578         * bindings/js/JSHTMLDocumentCustom.cpp:
579         (WebCore::documentWrite):
580         * dom/Document.cpp:
581         (WebCore::Document::write):
582         * dom/Document.h:
583
584 2009-02-13  David Hyatt  <hyatt@apple.com>
585
586         Reviewed by Simon Fraser
587
588         Remove updateWidgetPosition on RenderObject.  Change RenderView's set of widgets
589         to have a tighter type: RenderWidget instead of RenderObject.  Devirtualize
590         updateWidgetPosition, since all RenderWidgets (except for applets) are now
591         RenderParts also.
592         
593         * rendering/RenderObject.cpp:
594         * rendering/RenderObject.h:
595         * rendering/RenderPart.cpp:
596         * rendering/RenderPart.h:
597         * rendering/RenderView.cpp:
598         (WebCore::RenderView::updateWidgetPositions):
599         (WebCore::RenderView::addWidget):
600         (WebCore::RenderView::removeWidget):
601         * rendering/RenderView.h:
602         * rendering/RenderWidget.cpp:
603         (WebCore::RenderWidget::updateWidgetPosition):
604         * rendering/RenderWidget.h:
605
606 2009-02-13  David Hyatt  <hyatt@apple.com>
607
608         Reviewed by Eric Seidel
609
610         Remove isEditable() on RenderObject.  It is dead code.
611
612         * rendering/RenderObject.cpp:
613         * rendering/RenderObject.h:
614
615 2009-02-13  David Hyatt  <hyatt@apple.com>
616
617         Reviewed by Eric Seidel
618
619         Add isTextControl() to RenderObject.  Patch call sites thats asked isTextField() || isTextArea() to just use
620         isTextControl() instead.
621         
622         Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
623
624         * dom/Document.cpp:
625         (WebCore::Document::setFocusedNode):
626         * dom/InputElement.cpp:
627         (WebCore::InputElement::updateSelectionRange):
628         * editing/ReplaceSelectionCommand.cpp:
629         (WebCore::ReplacementFragment::ReplacementFragment):
630         * editing/TextIterator.cpp:
631         (WebCore::TextIterator::handleReplacedElement):
632         * html/HTMLInputElement.cpp:
633         (WebCore::HTMLInputElement::selectionStart):
634         (WebCore::HTMLInputElement::selectionEnd):
635         (WebCore::HTMLInputElement::setSelectionStart):
636         (WebCore::HTMLInputElement::setSelectionEnd):
637         (WebCore::HTMLInputElement::select):
638         (WebCore::HTMLInputElement::defaultEventHandler):
639         (WebCore::HTMLInputElement::selection):
640         * html/HTMLTextAreaElement.cpp:
641         (WebCore::HTMLTextAreaElement::selectionStart):
642         (WebCore::HTMLTextAreaElement::selectionEnd):
643         (WebCore::HTMLTextAreaElement::setSelectionStart):
644         (WebCore::HTMLTextAreaElement::setSelectionEnd):
645         (WebCore::HTMLTextAreaElement::select):
646         (WebCore::HTMLTextAreaElement::setSelectionRange):
647         (WebCore::HTMLTextAreaElement::appendFormData):
648         (WebCore::HTMLTextAreaElement::updateValue):
649         (WebCore::HTMLTextAreaElement::selection):
650         * page/AccessibilityRenderObject.cpp:
651         (WebCore::AccessibilityRenderObject::isNativeTextControl):
652         (WebCore::AccessibilityRenderObject::text):
653         (WebCore::AccessibilityRenderObject::selectedText):
654         (WebCore::AccessibilityRenderObject::selectedTextRange):
655         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
656         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
657         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
658         (WebCore::AccessibilityRenderObject::observableObject):
659         * page/Frame.cpp:
660         (WebCore::Frame::notifyRendererOfSelectionChange):
661         * rendering/RenderObject.h:
662         (WebCore::RenderObject::isTextControl):
663         (WebCore::objectIsRelayoutBoundary):
664         * rendering/RenderTextControl.h:
665         (WebCore::RenderTextControl::isTextControl):
666         (WebCore::toRenderTextControl):
667         * rendering/TextControlInnerElements.cpp:
668         (WebCore::TextControlInnerTextElement::defaultEventHandler):
669         * wml/WMLInputElement.cpp:
670         (WebCore::WMLInputElement::select):
671         (WebCore::WMLInputElement::defaultEventHandler):
672         (WebCore::WMLInputElement::isConformedToInputMask):
673
674 2009-02-13  David Hyatt  <hyatt@apple.com>
675
676         Get rid of isEdited/setEdited on RenderObject.  Devirtualize isEdited/setEdited on RenderTextControl.
677         Callers were already asking if the renderer was a text field (or a text area), so it was especially
678         pointless to waste a second virtual function call after making one just to determine the object type.
679     
680         Reviewed by Simon Fraser
681
682         * dom/Document.cpp:
683         (WebCore::Document::setFocusedNode):
684         * html/HTMLInputElement.cpp:
685         (WebCore::HTMLInputElement::defaultEventHandler):
686         * rendering/RenderObject.h:
687         * rendering/RenderTextControl.h:
688         (WebCore::RenderTextControl::isEdited):
689         (WebCore::RenderTextControl::setEdited):
690
691 2009-02-13  Scott Violet  <sky@google.com>
692
693         Reviewed by Eric Seidel.
694
695         https://bugs.webkit.org/show_bug.cgi?id=23934
696         Skia platform doesn't render text decoration shadows.
697
698         Makes Skia render text decoration shadows correctly. We weren't
699         preparing the SkPaint correctly and didn't have a couple of checks
700         CG has. Additionally makes the fillColor/strokeColor methods
701         consistent.
702
703         This behavior is covered by existing layout tests (see bug for list).
704
705         * platform/graphics/chromium/FontChromiumWin.cpp:
706         (WebCore::Font::drawGlyphs):
707         (WebCore::Font::drawComplexText):
708         * platform/graphics/skia/GraphicsContextSkia.cpp:
709         (WebCore::GraphicsContext::drawLineForText):
710         * platform/graphics/skia/PlatformContextSkia.cpp:
711         (PlatformContextSkia::effectiveFillColor):
712         (PlatformContextSkia::effectiveStrokeColor):
713         * platform/graphics/skia/PlatformContextSkia.h:
714
715 2009-02-12  Darin Fisher  <darin@chromium.org>
716
717         Reviewed by Eric Seidel.
718
719         https://bugs.webkit.org/show_bug.cgi?id=23944
720         KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
721
722         * platform/KURL.h:
723         * platform/KURLGoogle.cpp:
724         (WebCore::KURLGooglePrivate::setUtf8):
725         (WebCore::KURLGooglePrivate::setAscii):
726         (WebCore::KURLGooglePrivate::init):
727         (WebCore::KURLGooglePrivate::replaceComponents):
728         (WebCore::KURL::KURL):
729         * platform/KURLGooglePrivate.h:
730
731 2009-02-13  David Hyatt  <hyatt@apple.com>
732
733         Remove leftmost/rightmost/lowestPosition from RenderObject.  They only need to be called on boxes.
734
735         Reviewed by Dan Bernstein
736
737         * rendering/RenderBlock.cpp:
738         (WebCore::RenderBlock::lowestPosition):
739         (WebCore::RenderBlock::rightmostPosition):
740         (WebCore::RenderBlock::leftmostPosition):
741         * rendering/RenderLayer.cpp:
742         (WebCore::RenderLayer::computeScrollDimensions):
743         * rendering/RenderMedia.cpp:
744         (WebCore::RenderMedia::lowestPosition):
745         (WebCore::RenderMedia::rightmostPosition):
746         (WebCore::RenderMedia::leftmostPosition):
747         * rendering/RenderObject.h:
748         * rendering/RenderTableSection.cpp:
749         (WebCore::RenderTableSection::lowestPosition):
750         (WebCore::RenderTableSection::rightmostPosition):
751         (WebCore::RenderTableSection::leftmostPosition):
752
753 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
754
755         Fix build with ACCELERATED_COMPOSITING turned on.
756
757         toRenderBox()->x() asserts for a layer on an inline; use
758         m_owningLayer->renderBoxX() instead.
759         
760         * rendering/RenderLayerBacking.cpp:
761         (WebCore::RenderLayerBacking::paintIntoLayer):
762
763 2009-02-12  Darin Adler  <darin@apple.com>
764
765         Reviewed by Oliver Hunt.
766
767         Speed up document.write a bit.
768
769         * bindings/js/JSHTMLDocumentCustom.cpp:
770         (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
771         UString to String and to avoid appending strings. Also added code to handle
772         newlines efficiently.
773         (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
774         (WebCore::JSHTMLDocument::writeln): Ditto.
775
776         * dom/Document.cpp:
777         (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
778         of write into a separate function for use in the JavaScript binding.
779         (WebCore::Document::write): Changed to call prepareToWrite.
780
781         * dom/Document.h: Added declaration for prepareToWrite.
782
783 2009-02-13  Prasanth Ullattil  <pullatti@trolltech.com>
784
785         Reviewed by Simon Hausmann.
786
787         Fixes crash in the Qt port on Windows with comboboxes
788
789         The focusWidget in the input context is not reset properly.
790         The QApplication::setFocusWidget() wont reset the IC if the reason is
791         PopupFocusReason, this is not ideal. For the time being we are going
792         to do this from webkit itself.
793
794         * platform/qt/QWebPopup.cpp:
795         (WebCore::QWebPopup::hidePopup):
796
797 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
798
799         wx build fix, typo while tweaking last patch for commit.
800
801         * platform/wx/wxcode/gtk/fontprops.cpp:
802         (GetTextExtent):
803
804 2009-02-12  miggilin  <mr.diggilin@gmail.com>
805
806         Reviewed by Kevin Ollivier.
807
808         Use Cairo/PANGO to fix text measurements and implement proper
809         non-kerned text drawing on wxGTK.
810
811         https://bugs.webkit.org/show_bug.cgi?id=17727
812
813         * platform/graphics/GlyphBuffer.h:
814         * platform/graphics/wx/FontPlatformDataWx.cpp:
815         (WebCore::fontWeightToWxFontWeight):
816         * platform/graphics/wx/SimpleFontDataWx.cpp:
817         (WebCore::SimpleFontData::platformWidthForGlyph):
818         * platform/wx/wxcode/fontprops.h:
819         * platform/wx/wxcode/gtk/fontprops.cpp:
820         (wxFontProperties::wxFontProperties):
821         (GetTextExtent):
822         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
823         (WebCore::pangoFontMap):
824         (WebCore::createPangoFontForFont):
825         (WebCore::createScaledFontForFont):
826         (WebCore::pango_font_get_glyph):
827         (WebCore::drawTextWithSpacing):
828         * platform/wx/wxcode/non-kerned-drawing.h:
829
830 2009-02-12  Chris Marrin  <cmarrin@apple.com>
831
832         Reviewed by Simon Fraser
833
834         https://bugs.webkit.org/show_bug.cgi?id=23942
835
836         Hook up 3D CSS transforms to the accelerated compositor backend.
837         Not enabled by default.
838
839         * page/animation/AnimationBase.cpp:
840         (WebCore::blendFunc):
841         (WebCore::ensurePropertyMap):
842         * page/animation/CompositeAnimation.cpp:
843         (WebCore::CompositeAnimationPrivate::updateTransitions):
844         * page/animation/ImplicitAnimation.cpp:
845         (WebCore::ImplicitAnimation::willNeedService):
846         * page/animation/KeyframeAnimation.cpp:
847         (WebCore::KeyframeAnimation::willNeedService):
848         * platform/graphics/GraphicsLayer.cpp:
849         (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
850         (WebCore::GraphicsLayer::dumpProperties):
851         * platform/graphics/mac/GraphicsLayerCA.mm:
852         (WebCore::copyTransform):
853         (WebCore::getValueFunctionNameForTransformOperation):
854         (WebCore::GraphicsLayerCA::animateTransform):
855         * rendering/RenderBox.cpp:
856         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
857         * rendering/RenderLayer.cpp:
858         (WebCore::RenderLayer::updateTransform):
859         (WebCore::RenderLayer::hasTransformStyle3D):
860         (WebCore::RenderLayer::hasPerspective):
861         (WebCore::RenderLayer::perspectiveTransform):
862         * rendering/RenderLayer.h:
863         * rendering/RenderLayerBacking.cpp:
864         (WebCore::RenderLayerBacking::updateGraphicsLayers):
865         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
866         (WebCore::RenderLayerBacking::computeTransformOrigin):
867         (WebCore::RenderLayerBacking::computePerspectiveOrigin):
868         * rendering/RenderLayerBacking.h:
869         * rendering/RenderLayerCompositor.cpp:
870         (WebCore::RenderLayerCompositor::has3DContent):
871         (WebCore::requiresCompositingLayerForTransform):
872         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
873         (WebCore::RenderLayerCompositor::layerHas3DContent):
874         * rendering/RenderLayerCompositor.h:
875
876 2009-02-12  David Hyatt  <hyatt@apple.com>
877
878         Reviewed by Eric Seidel
879
880         Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
881         containingBlock()->availableHeight().  The latter reads better anyway.  Rename containingBlockWidth() to
882         containingBlockWidthForContent() and move it to RenderBoxModelObject.
883
884         * rendering/RenderBlock.cpp:
885         (WebCore::RenderBlock::localCaretRect):
886         * rendering/RenderBox.cpp:
887         (WebCore::RenderBox::containingBlockWidthForContent):
888         (WebCore::RenderBox::calcWidth):
889         (WebCore::RenderBox::calcReplacedWidthUsing):
890         * rendering/RenderBox.h:
891         * rendering/RenderBoxModelObject.cpp:
892         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
893         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
894         (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
895         * rendering/RenderBoxModelObject.h:
896         * rendering/RenderInline.cpp:
897         (WebCore::RenderInline::marginLeft):
898         (WebCore::RenderInline::marginRight):
899         * rendering/RenderObject.cpp:
900         * rendering/RenderObject.h:
901         * rendering/RenderSVGContainer.cpp:
902         (WebCore::RenderSVGContainer::calcReplacedWidth):
903
904 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
905
906         Fix non-Mac builds by adding Matrix3DTransformOperation.* and
907         PerspectiveTransformOperation.*. Cleaned out some cruft in 
908         the WebCore.vcproj fle.
909
910         * GNUmakefile.am:
911         * WebCore.pro:
912         * WebCore.scons:
913         * WebCore.vcproj/WebCore.vcproj:
914
915 2009-02-12  David Smith  <catfish.man@gmail.com>
916
917         Reviewed by Dave Hyatt.
918         
919         Fix https://bugs.webkit.org/show_bug.cgi?id=23935
920         Nested :not() and non-simple selectors in :not() should be invalid
921
922         * css/CSSGrammar.y: Reject nested :not()
923         * css/CSSStyleSelector.cpp:
924         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
925
926 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
927
928         wx build fixes.
929
930         * WebCoreSources.bkl:
931
932 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
933
934         Fix build with ACCELERATED_COMPOSITING turned on.
935         
936         Need to cast toRenderBox() in order to call overflowClipRect().
937
938         * rendering/RenderLayerBacking.cpp:
939         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
940
941 2009-02-12  Oliver Hunt  <oliver@apple.com>
942
943         Reviewed by NOBODY (Build fix).
944
945         Fix windows build.
946
947         * css/CSSParser.h:
948
949 2009-02-12  David Hyatt  <hyatt@apple.com>
950
951         Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect.  Move them to RenderBox, since these methods
952         only apply to boxes.  Devirtualize clipRect, since it was not subclassed.  Move controlClip stuff to RenderBox also.
953
954         Reviewed by Simon Fraser
955
956         * editing/Editor.cpp:
957         (WebCore::Editor::insideVisibleArea):
958         * rendering/RenderBox.cpp:
959         (WebCore::RenderBox::overflowClipRect):
960         (WebCore::RenderBox::clipRect):
961         * rendering/RenderBox.h:
962         (WebCore::RenderBox::hasControlClip):
963         (WebCore::RenderBox::controlClipRect):
964         * rendering/RenderForeignObject.cpp:
965         (WebCore::RenderForeignObject::paint):
966         * rendering/RenderLayer.cpp:
967         (WebCore::RenderLayer::calculateClipRects):
968         (WebCore::RenderLayer::calculateRects):
969         * rendering/RenderLayerBacking.cpp:
970         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
971         * rendering/RenderObject.h:
972         (WebCore::RenderObject::hasClip):
973         (WebCore::RenderObject::hasOverflowClip):
974         * rendering/RenderTable.cpp:
975         (WebCore::RenderTable::overflowClipRect):
976         * rendering/RenderTable.h:
977
978 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
979
980         Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
981
982         * platform/graphics/mac/GraphicsLayerCA.mm:
983         (WebCore::GraphicsLayerCA::setBasicAnimation):
984
985 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
986
987         Not reviewed.
988
989         Release build fix when VIDEO is disabled (it should also
990         help the builds with WORKERS or XSLT disabled).
991
992         * bindings/js/JSDOMWindowBase.cpp:
993         (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
994         VIDEO is disabled.
995         (jsDOMWindowBaseWorker): Ditto for WORKERS.
996         (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
997
998 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
999
1000         Reviewed by Simon Fraser.
1001
1002         https://bugs.webkit.org/show_bug.cgi?id=23923
1003         Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
1004         Supporting this requires that we know when we are processing a media engine callback so
1005         we don't turn around and tell the media player to change the volume when it is reporting
1006         a volume change.
1007         
1008         * html/HTMLMediaElement.cpp:
1009         (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
1010         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
1011         (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged 
1012         to make it easier to maintain m_processingMediaPlayerCallback.
1013         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
1014         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
1015         (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
1016         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
1017         (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
1018         a callback from the engine.
1019         * html/HTMLMediaElement.h:
1020         (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
1021         (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
1022         (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
1023
1024 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1025
1026         Reviewed by Simon Fraser.
1027
1028         Support MPEG content on Mac and Windows.
1029         <rdar://problem/5917509>
1030         https://bugs.webkit.org/show_bug.cgi?id=23495
1031
1032         Test: media/audio-mpeg-supported.html
1033
1034         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1035         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
1036
1037         * platform/graphics/win/QTMovieWin.cpp:
1038         (QTMovieWin::disableUnsupportedTracks):
1039
1040         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925 
1041
1042 2009-02-12  David Hyatt  <hyatt@apple.com>
1043
1044         Reviewed by Sam Weinig
1045
1046         Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
1047         RenderBox, since these methods only apply to boxes.
1048
1049         * rendering/RenderBlock.cpp:
1050         (WebCore::RenderBlock::collapseMargins):
1051         (WebCore::RenderBlock::clearFloatsIfNeeded):
1052         (WebCore::RenderBlock::layoutBlockChildren):
1053         (WebCore::RenderBlock::clearFloats):
1054         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
1055         (WebCore::RenderBlock::calcBlockPrefWidths):
1056         * rendering/RenderBlock.h:
1057         (WebCore::RenderBlock::containsFloats):
1058         (WebCore::RenderBlock::hasOverhangingFloats):
1059         * rendering/RenderBox.cpp:
1060         (WebCore::RenderBox::shrinkToAvoidFloats):
1061         (WebCore::RenderBox::avoidsFloats):
1062         * rendering/RenderBox.h:
1063         * rendering/RenderObject.cpp:
1064         * rendering/RenderObject.h:
1065         (WebCore::RenderObject::isFloatingOrPositioned):
1066         * rendering/RenderView.h:
1067
1068 2009-02-12  Chris Marrin  <cmarrin@apple.com>        
1069
1070         Reviewed by Dave Hyatt
1071         
1072         https://bugs.webkit.org/show_bug.cgi?id=23908
1073         
1074         Added parsing of 3d transform functions and properties
1075         (perspective, perspective-origin, transform-style-3d, 
1076         and backface-visibility).   
1077         
1078         Test: transforms/3d/cssmatrix-3d-interface.xhtml
1079         
1080         * css/CSSComputedStyleDeclaration.cpp:
1081         (WebCore::):
1082         (WebCore::computedTransform):
1083         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1084         * css/CSSMutableStyleDeclaration.cpp:
1085         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1086         * css/CSSParser.cpp:
1087         (WebCore::CSSParser::parseValue):
1088         (WebCore::CSSParser::parseFillProperty):
1089         (WebCore::CSSParser::parseTransformOriginShorthand):
1090         (WebCore::TransformOperationInfo::TransformOperationInfo):
1091         (WebCore::CSSParser::parseTransform):
1092         (WebCore::CSSParser::parseTransformOrigin):
1093         (WebCore::CSSParser::parsePerspectiveOrigin):
1094         * css/CSSParser.h:
1095         * css/CSSPrimitiveValue.h:
1096         (WebCore::CSSPrimitiveValue::isUnitTypeLength):
1097         * css/CSSPropertyNames.in:
1098         * css/CSSStyleSelector.cpp:
1099         (WebCore::CSSStyleSelector::adjustRenderStyle):
1100         (WebCore::convertToLength):
1101         (WebCore::CSSStyleSelector::applyProperty):
1102         (WebCore::CSSStyleSelector::mapFillSize):
1103         (WebCore::CSSStyleSelector::mapFillXPosition):
1104         (WebCore::CSSStyleSelector::mapFillYPosition):
1105         (WebCore::getTransformOperationType):
1106         (WebCore::CSSStyleSelector::createTransformOperations):
1107         * css/CSSValueKeywords.in:
1108         * css/WebKitCSSTransformValue.cpp:
1109         (WebCore::WebKitCSSTransformValue::cssText):
1110         * css/WebKitCSSTransformValue.h:
1111         (WebCore::WebKitCSSTransformValue::):
1112         * css/WebKitCSSTransformValue.idl:
1113         * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
1114         * platform/graphics/transforms/Matrix3DTransformOperation.h:
1115         * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
1116         * platform/graphics/transforms/PerspectiveTransformOperation.h:
1117         * platform/graphics/transforms/RotateTransformOperation.cpp:
1118         (WebCore::RotateTransformOperation::blend):
1119         * platform/graphics/transforms/RotateTransformOperation.h:
1120         (WebCore::RotateTransformOperation::RotateTransformOperation):
1121         * platform/graphics/transforms/ScaleTransformOperation.h:
1122         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
1123         * platform/graphics/transforms/TransformOperation.h:
1124         (WebCore::TransformOperation::is3DOperation):
1125         * platform/graphics/transforms/TransformOperations.h:
1126         (WebCore::TransformOperations::has3DOperation):
1127         * platform/graphics/transforms/TranslateTransformOperation.h:
1128         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
1129         
1130 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
1131
1132         wx build fix.
1133
1134         * webcore-base.bkl:
1135
1136 2009-02-12  Brady Eidson  <beidson@apple.com>
1137
1138         Reviewed by Darin Adler
1139
1140         Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
1141
1142         * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
1143         (-[WebCoreSharedBufferData dealloc]):
1144         (-[WebCoreSharedBufferData finalize]):
1145         (-[WebCoreSharedBufferData initWithSharedBuffer:]):
1146
1147 2009-02-12  David Hyatt  <hyatt@apple.com>
1148
1149         Remove calcWidth from RenderObject.  Nobody ever called it on RenderObjects.
1150
1151         Reviewed by Sam Weinig
1152
1153         * rendering/RenderObject.h:
1154
1155 2009-02-12  David Hyatt  <hyatt@apple.com>
1156
1157         Reviewed by Mark Rowe
1158
1159         Fix for regression where form controls would paint yellow highlights.  The containsComposition check needs to
1160         null check node() now.
1161
1162         * rendering/InlineTextBox.cpp:
1163         (WebCore::InlineTextBox::paint):
1164
1165 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1166
1167         Build fix
1168
1169         Change Animation::setDirection() to take the new enum value, and fix
1170         the single caller.
1171
1172         Fix build error in MediaPlayerPrivateQTKit.h.
1173         
1174         * css/CSSStyleSelector.cpp:
1175         (WebCore::CSSStyleSelector::mapAnimationDirection):
1176         * platform/animation/Animation.h:
1177         (WebCore::Animation::setDirection):
1178         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1179
1180 2009-02-12  David Hyatt  <hyatt@apple.com>
1181
1182         Reviewed by Simon Fraser
1183
1184         Remove the overrideSize methods from RenderObject.  Devirtualize all of the accessors on RenderBox.
1185
1186         * rendering/RenderBox.h:
1187         * rendering/RenderObject.h:
1188
1189 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1190
1191         Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
1192         
1193         Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
1194         https://bugs.webkit.org/show_bug.cgi?id=23797
1195
1196         * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
1197
1198         * html/HTMLMediaElement.cpp:
1199         (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
1200         MediaPlayer::load so it can choose the right media engine
1201         (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
1202         functions to strip params from the url and extract the codecs parameter. call 
1203         MediaPlayer::supportsType to see if we can open the file since only a media engine can
1204         answer questions about supported type+codecs.
1205         * html/HTMLMediaElement.h:
1206
1207         * platform/MIMETypeRegistry.cpp:
1208         (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
1209         (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
1210         * platform/MIMETypeRegistry.h:
1211
1212         * platform/graphics/MediaPlayer.cpp:
1213         (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
1214         (WebCore::NullMediaPlayerPrivate::load):
1215         (WebCore::NullMediaPlayerPrivate::cancelLoad):
1216         (WebCore::NullMediaPlayerPrivate::play):
1217         (WebCore::NullMediaPlayerPrivate::pause):
1218         (WebCore::NullMediaPlayerPrivate::naturalSize):
1219         (WebCore::NullMediaPlayerPrivate::hasVideo):
1220         (WebCore::NullMediaPlayerPrivate::setVisible):
1221         (WebCore::NullMediaPlayerPrivate::duration):
1222         (WebCore::NullMediaPlayerPrivate::currentTime):
1223         (WebCore::NullMediaPlayerPrivate::seek):
1224         (WebCore::NullMediaPlayerPrivate::seeking):
1225         (WebCore::NullMediaPlayerPrivate::setEndTime):
1226         (WebCore::NullMediaPlayerPrivate::setRate):
1227         (WebCore::NullMediaPlayerPrivate::paused):
1228         (WebCore::NullMediaPlayerPrivate::setVolume):
1229         (WebCore::NullMediaPlayerPrivate::networkState):
1230         (WebCore::NullMediaPlayerPrivate::readyState):
1231         (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
1232         (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
1233         (WebCore::NullMediaPlayerPrivate::dataRate):
1234         (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
1235         (WebCore::NullMediaPlayerPrivate::totalBytes):
1236         (WebCore::NullMediaPlayerPrivate::bytesLoaded):
1237         (WebCore::NullMediaPlayerPrivate::setRect):
1238         (WebCore::NullMediaPlayerPrivate::paint):
1239         (WebCore::createNullMediaPlayer):
1240         Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
1241
1242         (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
1243         (WebCore::installedMediaEngines): New, returns vector of all installed engines.
1244         (WebCore::addMediaEngine): New, add a media engine to the cache.
1245         (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
1246         (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
1247         (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
1248         (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
1249           media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
1250           based on the MIME type and codecs parameter.
1251         (WebCore::MediaPlayer::currentTime): Remove excess white space.
1252         (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
1253         indicate "maybe" condition.
1254         (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
1255         (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
1256
1257         * platform/graphics/MediaPlayer.h:
1258         (WebCore::MediaPlayer::):
1259         (WebCore::MediaPlayer::frameView): accessor function.
1260
1261         * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
1262         (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
1263         (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
1264
1265         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory 
1266
1267         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1268         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1269         (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
1270         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1271         (WebCore::MediaPlayerPrivate::duration): Declare const.
1272         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
1273         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
1274         (WebCore::MediaPlayerPrivate::networkState): Ditto.
1275         (WebCore::MediaPlayerPrivate::readyState): Ditto.
1276         (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
1277         (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
1278         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
1279         (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
1280         (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
1281         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
1282         (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
1283         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
1284         (WebCore::MediaPlayerPrivate::isAvailable):
1285
1286         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1287         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1288         (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
1289         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
1290         (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
1291         use accessor function.
1292         (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
1293         (WebCore::MediaPlayerPrivate::paint): Ditto.
1294         (WebCore::mimeTypeCache): New.
1295         (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
1296         (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
1297         (-[WebCoreMovieObserver initWithCallback:]): fix formatting
1298
1299         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1300         (WebCore::MediaPlayerPrivate::create):
1301         (WebCore::MediaPlayerPrivate::registerMediaEngine):
1302         (WebCore::MediaPlayerPrivate::supportsType):
1303         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1304         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
1305         (WebCore::MediaPlayerPrivate::isAvailable):
1306
1307         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1308         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1309         (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
1310         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1311         (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
1312         use accessor function.
1313         (WebCore::mimeTypeCache): New.
1314         (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
1315         (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
1316         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1317
1318 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
1319
1320         Reviewed by Darin Adler.
1321
1322         Test: fast/dom/prefixed-image-tag.xhtml
1323
1324         Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
1325
1326         Instead we now directly propage the QualifiedName inside the generated Factory.
1327
1328         Test: fast/dom/prefixed-image-tag.xhtml
1329
1330         * dom/Document.cpp:
1331         (WebCore::Document::createElement): Removed the setPrefix work-around
1332         and replaced it with an ASSERT to catch mistakes inside the Factory code.
1333         Remove the unneeded ExceptionCode argument.
1334
1335         (WebCore::Document::createElementNS): Removed ExceptionCode argument.
1336         * dom/Document.h: Updated the signature.
1337         * dom/XMLTokenizerLibxml2.cpp:
1338         (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
1339         * dom/XMLTokenizerQt.cpp: Ditto.
1340         (WebCore::XMLTokenizer::parseStartElement): Ditto.
1341
1342         * dom/make_names.pl: Implemented the QualifiedName propogation logic
1343         in the Factory.
1344
1345 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1346
1347         Reviewed by Dave Hyatt
1348
1349         https://bugs.webkit.org/show_bug.cgi?id=23188
1350         
1351         Define enum values for Animation::direction(), and one for
1352         IterationCountInfinite to make the code more self-documenting.
1353         
1354         Order the member vars of Animation to optimize packing.
1355         
1356         * css/CSSComputedStyleDeclaration.cpp:
1357         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1358         * platform/animation/Animation.cpp:
1359         (WebCore::Animation::Animation):
1360         (WebCore::Animation::operator=):
1361         (WebCore::Animation::animationsMatch):
1362         * platform/animation/Animation.h:
1363         (WebCore::Animation::):
1364         (WebCore::Animation::direction):
1365         (WebCore::Animation::initialAnimationDirection):
1366         * platform/graphics/mac/GraphicsLayerCA.mm:
1367         (WebCore::GraphicsLayerCA::setBasicAnimation):
1368         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1369
1370 2009-02-12  Christian Dywan  <christian@twotoasts.de>
1371
1372         Reviewed by Holger Freyther.
1373
1374         * platform/network/soup/ResourceHandleSoup.cpp:
1375         (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
1376
1377 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
1378
1379         Reviewed by Darin Adler.
1380
1381         Bug 23826: Potential bug with before/after rule while moving element from one document to another
1382
1383         Moved the document before/after toggle from the constructor to insertedIntoDocument.
1384
1385         Test: fast/css-generated-content/beforeAfter-interdocument.html
1386
1387         * html/HTMLQuoteElement.cpp:
1388         (WebCore::HTMLQuoteElement::HTMLQuoteElement):
1389         (WebCore::HTMLQuoteElement::insertedIntoDocument):
1390         * html/HTMLQuoteElement.h:
1391
1392 2009-02-12  David Hyatt  <hyatt@apple.com>
1393
1394         Reviewed by Simon Fraser
1395
1396         Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
1397
1398         I have no idea why this broke.  As far as I can tell the old code never should have worked in
1399         the first place.  Add code to handleWheelEvent that will find an enclosing renderer for a node
1400         in order to attempt a wheel scroll.
1401
1402         * page/EventHandler.cpp:
1403         (WebCore::EventHandler::handleWheelEvent):
1404
1405 2009-02-12  David Hyatt  <hyatt@apple.com>
1406
1407         Move the functions that paint borders, box shadows and border images into RenderBoxModelObject.  drawBorder and drawBorderArc, because they are used
1408         for outlines as well as borders, need to stay in RenderObject.  Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
1409         more generic use.  Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
1410
1411         Reviewed by Simon Fraser
1412
1413         * rendering/InlineFlowBox.cpp:
1414         (WebCore::InlineFlowBox::paintFillLayer):
1415         (WebCore::InlineFlowBox::paintBoxShadow):
1416         (WebCore::InlineFlowBox::paintBoxDecorations):
1417         (WebCore::InlineFlowBox::paintMask):
1418         * rendering/RenderBlock.cpp:
1419         (WebCore::RenderBlock::paintColumns):
1420         * rendering/RenderBoxModelObject.cpp:
1421         (WebCore::RenderBoxModelObject::paintNinePieceImage):
1422         (WebCore::RenderBoxModelObject::paintBorder):
1423         (WebCore::RenderBoxModelObject::paintBoxShadow):
1424         * rendering/RenderBoxModelObject.h:
1425         * rendering/RenderFieldset.cpp:
1426         (WebCore::RenderFieldset::paintBorderMinusLegend):
1427         * rendering/RenderInline.cpp:
1428         (WebCore::RenderInline::paintOutlineForLine):
1429         * rendering/RenderObject.cpp:
1430         (WebCore::RenderObject::drawLineForBoxSide):
1431         (WebCore::RenderObject::drawArcForBoxSide):
1432         (WebCore::RenderObject::paintOutline):
1433         * rendering/RenderObject.h:
1434         (WebCore::):
1435         (WebCore::RenderObject::hasBoxDecorations):
1436         * rendering/RenderTableCell.cpp:
1437         (WebCore::CollapsedBorders::addBorder):
1438         (WebCore::RenderTableCell::paintCollapsedBorder):
1439
1440 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1441
1442         Reviewed by Simon Fraser
1443
1444         Bug 18322: video element should have ui when scripting is disabled
1445         https://bugs.webkit.org/show_bug.cgi?id=18322
1446
1447         * html/HTMLMediaElement.cpp:
1448         (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
1449         * manual-tests/media-controls-when-javascript-disabled.html: Added.
1450
1451 2009-02-12  Dimitri Glazkov  <dglazkov@chromium.org>
1452
1453         Reviewed by Eric Seidel.
1454
1455         https://bugs.webkit.org/show_bug.cgi?id=23906
1456         Add custom V8 bindings for HTMLPlugInElement.
1457
1458         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
1459         (WebCore::NAMED_PROPERTY_GETTER):
1460         (WebCore::NAMED_PROPERTY_SETTER):
1461         (WebCore::CALLBACK_FUNC_DECL):
1462         (WebCore::INDEXED_PROPERTY_GETTER):
1463         (WebCore::INDEXED_PROPERTY_SETTER):
1464
1465 2009-02-12  Gustavo Noronha Silva  <gns@gnome.org>
1466
1467         Reviewed by Mark Rowe.
1468
1469         [GTK] Soup backend must handle upload of multiple files
1470         https://bugs.webkit.org/show_bug.cgi?id=18343
1471
1472         * platform/network/soup/ResourceHandleSoup.cpp:
1473         (WebCore::):
1474         (WebCore::freeFileMapping):
1475         (WebCore::ResourceHandle::startHttp): Support multipart request bodies
1476         mmap'ing files to be uploaded.
1477
1478 2009-02-12  Adam Treat  <adam.treat@torchmobile.com>
1479
1480         Fix the Qt build following r40871 which changed RenderObject::element()
1481         into RenderObject::node().
1482
1483         * platform/qt/RenderThemeQt.cpp:
1484         (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
1485         (WebCore::RenderThemeQt::getMediaControlForegroundColor):
1486
1487 2009-02-12  Alexey Proskuryakov  <ap@webkit.org>
1488
1489         Build fix.
1490
1491         * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
1492
1493 2009-02-12  Jian Li  <jianli@chromium.org>
1494
1495         Reviewed by Alexey Proskuryakov.
1496
1497         Change worker code to use different proxy class pointers.
1498         https://bugs.webkit.org/show_bug.cgi?id=23859
1499
1500         This is a step towards using separate proxies in multi-process implementation.
1501
1502         * bindings/js/WorkerScriptController.cpp:
1503         (WebCore::WorkerScriptController::evaluate):
1504         * dom/Worker.cpp:
1505         (WebCore::Worker::Worker):
1506         (WebCore::Worker::~Worker):
1507         (WebCore::Worker::postMessage):
1508         (WebCore::Worker::terminate):
1509         (WebCore::Worker::hasPendingActivity):
1510         (WebCore::Worker::notifyFinished):
1511         (WebCore::Worker::dispatchMessage):
1512         * dom/Worker.h:
1513         * dom/WorkerContext.cpp:
1514         (WebCore::WorkerContext::~WorkerContext):
1515         (WebCore::WorkerContext::reportException):
1516         (WebCore::WorkerContext::addMessage):
1517         (WebCore::WorkerContext::postMessage):
1518         (WebCore::WorkerContext::dispatchMessage):
1519         * dom/WorkerContext.h:
1520         * dom/WorkerContextProxy.h:
1521         * dom/WorkerMessagingProxy.cpp:
1522         (WebCore::MessageWorkerContextTask::performTask):
1523         (WebCore::MessageWorkerTask::performTask):
1524         (WebCore::WorkerContextProxy::create):
1525         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
1526         (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
1527         (WebCore::WorkerMessagingProxy::startWorkerContext):
1528         (WebCore::postConsoleMessageTask):
1529         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1530         (WebCore::WorkerMessagingProxy::workerThreadCreated):
1531         * dom/WorkerMessagingProxy.h:
1532         * dom/WorkerObjectProxy.h:
1533         * dom/WorkerThread.cpp:
1534         (WebCore::WorkerThread::create):
1535         (WebCore::WorkerThread::WorkerThread):
1536         (WebCore::WorkerThread::workerThread):
1537         * dom/WorkerThread.h:
1538         (WebCore::WorkerThread::workerObjectProxy):
1539         * loader/WorkerThreadableLoader.cpp:
1540         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
1541
1542 2009-02-12  David Levin  <levin@chromium.org>
1543
1544         Reviewed by Alexey Proskuryakov.
1545
1546         Bug 23688: ThreadableLoader needs a sync implementation for Workers.
1547         <https://bugs.webkit.org/show_bug.cgi?id=23688>
1548
1549         Add ResourceError to ThreadableLoaderClient.
1550
1551         No observable change in behavior, so no test.
1552
1553         * loader/DocumentThreadableLoader.cpp:
1554         (WebCore::DocumentThreadableLoader::create):
1555         (WebCore::DocumentThreadableLoader::willSendRequest):
1556         (WebCore::DocumentThreadableLoader::didFail):
1557         * loader/ThreadableLoaderClient.h:
1558         (WebCore::ThreadableLoaderClient::didFail):
1559         (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
1560         * loader/ThreadableLoaderClientWrapper.h:
1561         (WebCore::ThreadableLoaderClientWrapper::didFail):
1562         * loader/WorkerThreadableLoader.cpp:
1563         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
1564         (WebCore::workerContextDidFail):
1565         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
1566         * loader/WorkerThreadableLoader.h:
1567         * xml/XMLHttpRequest.cpp:
1568         (WebCore::XMLHttpRequest::didFail):
1569         (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
1570         * xml/XMLHttpRequest.h:
1571
1572 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
1573
1574         Reviewed by Dave Hyatt
1575
1576         Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
1577
1578         * WebCore.xcodeproj/project.pbxproj:
1579         FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
1580         * platform/graphics/mac/GraphicsLayerCA.mm:
1581         (WebCore::getTransformFunctionValue):
1582         (WebCore::caValueFunctionSupported):
1583         (WebCore::GraphicsLayerCA::setAnchorPoint):
1584         (WebCore::GraphicsLayerCA::setPreserves3D):
1585         (WebCore::GraphicsLayerCA::setContentsToImage):
1586         (WebCore::GraphicsLayerCA::setBasicAnimation):
1587         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1588         * rendering/RenderLayer.h:
1589         (WebCore::RenderLayer::isRootLayer):
1590         Fix isRootLayer to return true for the renderView's layer, not the root
1591         renderer's layer.
1592
1593 2009-02-11  Adele Peterson  <adele@apple.com>
1594
1595         Reviewed by Oliver Hunt.
1596
1597         Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
1598         <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
1599
1600         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
1601         When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
1602
1603 2009-02-11  David Hyatt  <hyatt@apple.com>
1604
1605         Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox.  Devirtualize the functions.
1606         Patch all of the call sites to convert to a RenderBox.
1607
1608         Reviewed by Simon Fraser
1609
1610         * dom/Position.cpp:
1611         (WebCore::nextRenderedEditable):
1612         (WebCore::previousRenderedEditable):
1613         (WebCore::Position::getInlineBoxAndOffset):
1614         * rendering/InlineBox.cpp:
1615         (WebCore::InlineBox::deleteLine):
1616         (WebCore::InlineBox::extractLine):
1617         (WebCore::InlineBox::attachLine):
1618         * rendering/RenderLineBoxList.cpp:
1619         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1620         * rendering/RenderObject.cpp:
1621         * rendering/RenderObject.h:
1622         * rendering/RenderObjectChildList.cpp:
1623         (WebCore::RenderObjectChildList::removeChildNode):
1624         * rendering/RenderTextControl.cpp:
1625         (WebCore::RenderTextControl::textWithHardLineBreaks):
1626
1627 2009-02-11  David Hyatt  <hyatt@apple.com>
1628
1629         Eliminate createInlineBox and dirtyLineBoxes from RenderObject.  These functions have been devirtualized.
1630         The single call site now calls a helper function that just bit checks and casts before calling the correct
1631         type.  RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
1632         just been removed.
1633
1634         Reviewed by Eric Seidel
1635
1636         * rendering/RenderBR.cpp:
1637         * rendering/RenderBR.h:
1638         * rendering/RenderBlock.cpp:
1639         (WebCore::RenderBlock::createRootInlineBox):
1640         * rendering/RenderBlock.h:
1641         * rendering/RenderBox.cpp:
1642         (WebCore::RenderBox::createInlineBox):
1643         * rendering/RenderBox.h:
1644         * rendering/RenderCounter.cpp:
1645         * rendering/RenderCounter.h:
1646         * rendering/RenderInline.cpp:
1647         (WebCore::RenderInline::createInlineFlowBox):
1648         * rendering/RenderInline.h:
1649         * rendering/RenderObject.cpp:
1650         * rendering/RenderObject.h:
1651         * rendering/RenderSVGInlineText.cpp:
1652         (WebCore::RenderSVGInlineText::createTextBox):
1653         * rendering/RenderSVGInlineText.h:
1654         (WebCore::RenderSVGInlineText::isSVGText):
1655         * rendering/RenderText.cpp:
1656         (WebCore::RenderText::createTextBox):
1657         (WebCore::RenderText::createInlineTextBox):
1658         * rendering/RenderText.h:
1659         * rendering/bidi.cpp:
1660         (WebCore::createInlineBoxForRenderer):
1661         (WebCore::RenderBlock::createLineBoxes):
1662         (WebCore::RenderBlock::constructLine):
1663         (WebCore::RenderBlock::layoutInlineChildren):
1664
1665 2009-02-11  Chris Marrin  <cmarrin@apple.com>
1666
1667         Reviewed by Dave Hyatt.
1668
1669         https://bugs.webkit.org/show_bug.cgi?id=23905
1670
1671         Adds support for 3D CSS properties (transform-style-3d, perspective, 
1672         perspective-origin, and backface-visibility) to RenderStyle and friends
1673
1674         * platform/graphics/transforms/TransformOperation.h
1675         * rendering/style/RenderStyle.cpp:
1676         (WebCore::RenderStyle::diff):
1677         (WebCore::RenderStyle::applyTransform):
1678         * rendering/style/RenderStyle.h:
1679         (WebCore::InheritedFlags::transformOriginZ):
1680         (WebCore::InheritedFlags::hasTransformRelatedProperty):
1681         (WebCore::InheritedFlags::transformStyle3D):
1682         (WebCore::InheritedFlags::backfaceVisibility):
1683         (WebCore::InheritedFlags::perspective):
1684         (WebCore::InheritedFlags::perspectiveOriginX):
1685         (WebCore::InheritedFlags::perspectiveOriginY):
1686         (WebCore::InheritedFlags::setTransformOriginZ):
1687         (WebCore::InheritedFlags::setTransformStyle3D):
1688         (WebCore::InheritedFlags::setBackfaceVisibility):
1689         (WebCore::InheritedFlags::setPerspective):
1690         (WebCore::InheritedFlags::setPerspectiveOriginX):
1691         (WebCore::InheritedFlags::setPerspectiveOriginY):
1692         (WebCore::InheritedFlags::initialTransformOriginZ):
1693         (WebCore::InheritedFlags::initialTransformStyle3D):
1694         (WebCore::InheritedFlags::initialBackfaceVisibility):
1695         (WebCore::InheritedFlags::initialPerspective):
1696         (WebCore::InheritedFlags::initialPerspectiveOriginX):
1697         (WebCore::InheritedFlags::initialPerspectiveOriginY):
1698         * rendering/style/RenderStyleConstants.h:
1699         (WebCore::):
1700         * rendering/style/StyleRareNonInheritedData.cpp:
1701         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1702         (WebCore::StyleRareNonInheritedData::operator==):
1703         * rendering/style/StyleRareNonInheritedData.h:
1704         * rendering/style/StyleTransformData.cpp:
1705         (WebCore::StyleTransformData::StyleTransformData):
1706         (WebCore::StyleTransformData::operator==):
1707         * rendering/style/StyleTransformData.h:
1708
1709 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
1710
1711         No review.
1712
1713         Fix ACCELERATED_COMPOSITING build.
1714
1715         * rendering/RenderLayerBacking.cpp:
1716         (WebCore::RenderLayerBacking::createGraphicsLayer):
1717         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1718         * rendering/RenderLayerCompositor.cpp:
1719         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
1720
1721 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
1722
1723         Reviewed by Dave Hyatt
1724
1725         https://bugs.webkit.org/show_bug.cgi?id=23862
1726         
1727         Add a bit on RenderStyle that gets set when running accelerated
1728         transitions of transform or opacity. These ensure that styles
1729         compare as different during the transition, so that interruption
1730         can be detected reliably.
1731
1732         * page/animation/ImplicitAnimation.cpp:
1733         (WebCore::ImplicitAnimation::animate):
1734         * rendering/style/RenderStyle.h:
1735         (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
1736         (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
1737         * rendering/style/StyleRareNonInheritedData.cpp:
1738         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1739         (WebCore::StyleRareNonInheritedData::operator==):
1740         * rendering/style/StyleRareNonInheritedData.h:
1741
1742 2009-02-11  David Hyatt  <hyatt@apple.com>
1743
1744         Eliminate the virtual position() function from RenderObject.  Rename the position() overrides
1745         in RenderText and RenderBox to positionLineBox and devirtualize them.
1746         
1747         Patch the one call site to just check for isText() and isBox() and call the methods directly.
1748         
1749         Remove some unnecessary overrides of position() on table sections and rows.
1750     
1751         Reviewed by Simon Fraser
1752
1753         * rendering/RenderBox.cpp:
1754         (WebCore::RenderBox::positionLineBox):
1755         * rendering/RenderBox.h:
1756         * rendering/RenderObject.h:
1757         * rendering/RenderSVGRoot.cpp:
1758         * rendering/RenderSVGRoot.h:
1759         * rendering/RenderTableRow.h:
1760         (WebCore::RenderTableRow::lineHeight):
1761         * rendering/RenderTableSection.h:
1762         (WebCore::RenderTableSection::lineHeight):
1763         * rendering/RenderText.cpp:
1764         (WebCore::RenderText::positionLineBox):
1765         * rendering/RenderText.h:
1766         * rendering/bidi.cpp:
1767         (WebCore::RenderBlock::computeVerticalPositionsForLine):
1768
1769 2009-02-11  Dimitri Glazkov  <dglazkov@chromium.org>
1770
1771         Reviewed by Eric Seidel.
1772
1773         https://bugs.webkit.org/show_bug.cgi?id=23901
1774         Add HTML options/collections V8 custom bindings.
1775
1776         * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
1777         (WebCore::getNamedItems):
1778         (WebCore::getItem):
1779         (WebCore::NAMED_PROPERTY_GETTER):
1780         (WebCore::CALLBACK_FUNC_DECL):
1781         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
1782         (WebCore::NAMED_PROPERTY_GETTER):
1783         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1784         (WebCore::ACCESSOR_GETTER):
1785         (WebCore::ACCESSOR_SETTER):
1786         (WebCore::CALLBACK_FUNC_DECL):
1787         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1788         (WebCore::CALLBACK_FUNC_DECL):
1789         (WebCore::ACCESSOR_SETTER):
1790         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
1791         (WebCore::CALLBACK_FUNC_DECL):
1792         (WebCore::removeElement):
1793         * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
1794         * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
1795         (WebCore::V8NamedNodesCollection::item):
1796         (WebCore::V8NamedNodesCollection::itemWithName):
1797         * bindings/v8/custom/V8NamedNodesCollection.h: Added.
1798         (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
1799         (WebCore::V8NamedNodesCollection::length):
1800
1801 2009-02-11  Dimitri Dupuis-latour  <dupuislatour@apple.com>
1802
1803         Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
1804         This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
1805
1806         Reviewed by Timothy Hatcher.
1807
1808         * inspector/InspectorClient.h:
1809         * inspector/InspectorController.cpp:
1810         (WebCore::hiddenPanels):
1811         (WebCore::InspectorController::hiddenPanels):
1812         (WebCore::InspectorController::windowScriptObjectAvailable):
1813         * inspector/InspectorController.h:
1814         * inspector/front-end/inspector.js:
1815         (WebInspector.loaded):
1816         * loader/EmptyClients.h:
1817         (WebCore::EmptyInspectorClient::hiddenPanels):
1818
1819 2009-02-11  David Hyatt  <hyatt@apple.com>
1820
1821         Combine RenderObject::element() and RenderObject::node() into a single function.  
1822         node() now has the "anonymous bit" checking behavior of element() and will
1823         return 0 for anonymous content.  This patch switches all callers of element() 
1824         to node() and patches old callers of node() to deal with situations where they
1825         did not expect node() to be 0.  A bunch of node() calls were calling stuff on 
1826         Document that they clearly didn't intend, so overall this is a nice improvement.
1827     
1828         Reviewed by Sam Weinig
1829
1830         * dom/ContainerNode.cpp:
1831         (WebCore::ContainerNode::getUpperLeftCorner):
1832         * dom/Element.cpp:
1833         (WebCore::Element::offsetParent):
1834         * dom/Position.cpp:
1835         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
1836         * editing/ModifySelectionListLevel.cpp:
1837         (WebCore::getStartEndListChildren):
1838         (WebCore::IncreaseSelectionListLevelCommand::doApply):
1839         (WebCore::DecreaseSelectionListLevelCommand::doApply):
1840         * editing/TextIterator.cpp:
1841         (WebCore::TextIterator::advance):
1842         * editing/VisiblePosition.cpp:
1843         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1844         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1845         * editing/visible_units.cpp:
1846         (WebCore::startPositionForLine):
1847         (WebCore::endPositionForLine):
1848         * page/AXObjectCache.cpp:
1849         (WebCore::AXObjectCache::get):
1850         * page/AccessibilityList.cpp:
1851         (WebCore::AccessibilityList::isUnorderedList):
1852         (WebCore::AccessibilityList::isOrderedList):
1853         (WebCore::AccessibilityList::isDefinitionList):
1854         * page/AccessibilityListBox.cpp:
1855         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
1856         * page/AccessibilityRenderObject.cpp:
1857         (WebCore::AccessibilityRenderObject::isPasswordField):
1858         (WebCore::AccessibilityRenderObject::isFileUploadButton):
1859         (WebCore::AccessibilityRenderObject::isInputImage):
1860         (WebCore::AccessibilityRenderObject::isMultiSelect):
1861         (WebCore::AccessibilityRenderObject::isControl):
1862         (WebCore::AccessibilityRenderObject::getAttribute):
1863         (WebCore::AccessibilityRenderObject::anchorElement):
1864         (WebCore::AccessibilityRenderObject::actionElement):
1865         (WebCore::AccessibilityRenderObject::mouseButtonListener):
1866         (WebCore::AccessibilityRenderObject::helpText):
1867         (WebCore::AccessibilityRenderObject::textUnderElement):
1868         (WebCore::AccessibilityRenderObject::hasIntValue):
1869         (WebCore::AccessibilityRenderObject::intValue):
1870         (WebCore::AccessibilityRenderObject::labelElementContainer):
1871         (WebCore::AccessibilityRenderObject::title):
1872         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1873         (WebCore::AccessibilityRenderObject::boundingBoxRect):
1874         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
1875         (WebCore::AccessibilityRenderObject::titleUIElement):
1876         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1877         (WebCore::AccessibilityRenderObject::text):
1878         (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
1879         (WebCore::AccessibilityRenderObject::accessKey):
1880         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1881         (WebCore::AccessibilityRenderObject::url):
1882         (WebCore::AccessibilityRenderObject::isFocused):
1883         (WebCore::AccessibilityRenderObject::setFocused):
1884         (WebCore::AccessibilityRenderObject::setValue):
1885         (WebCore::AccessibilityRenderObject::isEnabled):
1886         (WebCore::AccessibilityRenderObject::visiblePositionRange):
1887         (WebCore::AccessibilityRenderObject::index):
1888         (WebCore::AccessibilityRenderObject::activeDescendant):
1889         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
1890         (WebCore::AccessibilityRenderObject::observableObject):
1891         (WebCore::AccessibilityRenderObject::roleValue):
1892         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
1893         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
1894         * page/AccessibilityTable.cpp:
1895         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1896         (WebCore::AccessibilityTable::title):
1897         * page/AccessibilityTableCell.cpp:
1898         (WebCore::AccessibilityTableCell::titleUIElement):
1899         * page/AccessibilityTableColumn.cpp:
1900         (WebCore::AccessibilityTableColumn::headerObjectForSection):
1901         * page/AccessibilityTableRow.cpp:
1902         (WebCore::AccessibilityTableRow::headerObject):
1903         * page/EventHandler.cpp:
1904         (WebCore::EventHandler::dispatchMouseEvent):
1905         (WebCore::EventHandler::canMouseDownStartSelect):
1906         (WebCore::EventHandler::canMouseDragExtendSelect):
1907         (WebCore::EventHandler::shouldDragAutoNode):
1908         * page/Frame.cpp:
1909         (WebCore::Frame::searchForLabelsAboveCell):
1910         (WebCore::Frame::setFocusedNodeIfNeeded):
1911         * page/FrameView.cpp:
1912         (WebCore::FrameView::updateOverflowStatus):
1913         * page/animation/AnimationBase.cpp:
1914         (WebCore::AnimationBase::updateStateMachine):
1915         * page/animation/AnimationController.cpp:
1916         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1917         (WebCore::AnimationController::cancelAnimations):
1918         (WebCore::AnimationController::updateAnimations):
1919         * page/animation/KeyframeAnimation.cpp:
1920         (WebCore::KeyframeAnimation::KeyframeAnimation):
1921         (WebCore::KeyframeAnimation::endAnimation):
1922         * page/mac/AccessibilityObjectWrapper.mm:
1923         (blockquoteLevel):
1924         (AXAttributeStringSetHeadingLevel):
1925         * page/mac/FrameMac.mm:
1926         (WebCore::Frame::searchForNSLabelsAboveCell):
1927         * rendering/InlineFlowBox.cpp:
1928         (WebCore::InlineFlowBox::verticallyAlignBoxes):
1929         (WebCore::InlineFlowBox::paint):
1930         (WebCore::shouldDrawTextDecoration):
1931         * rendering/InlineTextBox.cpp:
1932         (WebCore::InlineTextBox::paintDocumentMarkers):
1933         * rendering/RenderBR.cpp:
1934         (WebCore::RenderBR::positionForCoordinates):
1935         * rendering/RenderBlock.cpp:
1936         (WebCore::RenderBlock::layoutBlock):
1937         (WebCore::RenderBlock::handleRunInChild):
1938         (WebCore::RenderBlock::paintObject):
1939         (WebCore::RenderBlock::isSelectionRoot):
1940         (WebCore::RenderBlock::rightmostPosition):
1941         (WebCore::RenderBlock::positionForBox):
1942         (WebCore::RenderBlock::positionForRenderer):
1943         (WebCore::RenderBlock::positionForCoordinates):
1944         (WebCore::RenderBlock::hasLineIfEmpty):
1945         (WebCore::RenderBlock::updateFirstLetter):
1946         (WebCore::RenderBlock::updateHitTestResult):
1947         (WebCore::RenderBlock::addFocusRingRects):
1948         * rendering/RenderBox.cpp:
1949         (WebCore::RenderBox::styleWillChange):
1950         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1951         (WebCore::RenderBox::paintRootBoxDecorations):
1952         (WebCore::RenderBox::positionForCoordinates):
1953         * rendering/RenderButton.cpp:
1954         (WebCore::RenderButton::updateFromElement):
1955         (WebCore::RenderButton::canHaveChildren):
1956         * rendering/RenderCounter.cpp:
1957         (WebCore::planCounter):
1958         * rendering/RenderFieldset.cpp:
1959         (WebCore::RenderFieldset::findLegend):
1960         * rendering/RenderFlexibleBox.cpp:
1961         (WebCore::RenderFlexibleBox::layoutVerticalBox):
1962         * rendering/RenderForeignObject.cpp:
1963         (WebCore::RenderForeignObject::translationForAttributes):
1964         (WebCore::RenderForeignObject::calculateLocalTransform):
1965         * rendering/RenderFrame.h:
1966         (WebCore::RenderFrame::element):
1967         * rendering/RenderImage.cpp:
1968         (WebCore::RenderImage::paintReplaced):
1969         (WebCore::RenderImage::imageMap):
1970         (WebCore::RenderImage::nodeAtPoint):
1971         (WebCore::RenderImage::updateAltText):
1972         * rendering/RenderInline.cpp:
1973         (WebCore::RenderInline::cloneInline):
1974         (WebCore::RenderInline::updateHitTestResult):
1975         * rendering/RenderLayer.cpp:
1976         (WebCore::RenderLayer::isTransparent):
1977         (WebCore::RenderLayer::scrollToOffset):
1978         (WebCore::RenderLayer::resize):
1979         (WebCore::RenderLayer::createScrollbar):
1980         (WebCore::RenderLayer::updateOverflowStatus):
1981         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1982         (WebCore::RenderLayer::enclosingElement):
1983         (WebCore::RenderLayer::updateHoverActiveState):
1984         (WebCore::RenderLayer::updateScrollCornerStyle):
1985         (WebCore::RenderLayer::updateResizerStyle):
1986         * rendering/RenderLayer.h:
1987         (WebCore::RenderLayer::isRootLayer):
1988         * rendering/RenderListItem.cpp:
1989         (WebCore::getParentOfFirstLineBox):
1990         * rendering/RenderMarquee.cpp:
1991         (WebCore::RenderMarquee::marqueeSpeed):
1992         * rendering/RenderObject.cpp:
1993         (WebCore::RenderObject::RenderObject):
1994         (WebCore::RenderObject::isBody):
1995         (WebCore::RenderObject::isHR):
1996         (WebCore::RenderObject::isHTMLMarquee):
1997         (WebCore::RenderObject::isEditable):
1998         (WebCore::RenderObject::addPDFURLRect):
1999         (WebCore::RenderObject::showTreeForThis):
2000         (WebCore::RenderObject::draggableNode):
2001         (WebCore::RenderObject::hasOutlineAnnotation):
2002         (WebCore::RenderObject::positionForCoordinates):
2003         (WebCore::RenderObject::updateDragState):
2004         (WebCore::RenderObject::updateHitTestResult):
2005         (WebCore::RenderObject::getUncachedPseudoStyle):
2006         (WebCore::RenderObject::getTextDecorationColors):
2007         (WebCore::RenderObject::caretMaxOffset):
2008         (WebCore::RenderObject::offsetParent):
2009         * rendering/RenderObject.h:
2010         (WebCore::RenderObject::isRoot):
2011         (WebCore::RenderObject::isInlineContinuation):
2012         (WebCore::RenderObject::node):
2013         (WebCore::RenderObject::setNode):
2014         * rendering/RenderObjectChildList.cpp:
2015         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
2016         * rendering/RenderPart.cpp:
2017         (WebCore::RenderPart::updateWidgetPosition):
2018         * rendering/RenderPartObject.cpp:
2019         (WebCore::RenderPartObject::updateWidget):
2020         (WebCore::RenderPartObject::viewCleared):
2021         * rendering/RenderPath.cpp:
2022         (WebCore::RenderPath::calculateLocalTransform):
2023         (WebCore::RenderPath::layout):
2024         (WebCore::RenderPath::paint):
2025         (WebCore::RenderPath::drawMarkersIfNeeded):
2026         * rendering/RenderReplaced.cpp:
2027         (WebCore::RenderReplaced::positionForCoordinates):
2028         (WebCore::RenderReplaced::isSelected):
2029         * rendering/RenderSVGGradientStop.cpp:
2030         (WebCore::RenderSVGGradientStop::gradientElement):
2031         * rendering/RenderSVGImage.cpp:
2032         (WebCore::RenderSVGImage::calculateLocalTransform):
2033         * rendering/RenderSVGInlineText.cpp:
2034         (WebCore::RenderSVGInlineText::positionForCoordinates):
2035         * rendering/RenderSVGRoot.cpp:
2036         (WebCore::RenderSVGRoot::layout):
2037         (WebCore::RenderSVGRoot::applyContentTransforms):
2038         (WebCore::RenderSVGRoot::paint):
2039         (WebCore::RenderSVGRoot::calcViewport):
2040         (WebCore::RenderSVGRoot::absoluteTransform):
2041         * rendering/RenderSVGText.cpp:
2042         (WebCore::RenderSVGText::calculateLocalTransform):
2043         (WebCore::RenderSVGText::layout):
2044         * rendering/RenderSVGTextPath.cpp:
2045         (WebCore::RenderSVGTextPath::layoutPath):
2046         (WebCore::RenderSVGTextPath::startOffset):
2047         (WebCore::RenderSVGTextPath::exactAlignment):
2048         (WebCore::RenderSVGTextPath::stretchMethod):
2049         * rendering/RenderSVGTransformableContainer.cpp:
2050         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
2051         * rendering/RenderSVGViewportContainer.cpp:
2052         (WebCore::RenderSVGViewportContainer::calcViewport):
2053         (WebCore::RenderSVGViewportContainer::viewportTransform):
2054         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
2055         * rendering/RenderTable.cpp:
2056         (WebCore::RenderTable::addChild):
2057         * rendering/RenderTableCell.cpp:
2058         (WebCore::RenderTableCell::updateFromElement):
2059         (WebCore::RenderTableCell::calcPrefWidths):
2060         * rendering/RenderTableCol.cpp:
2061         (WebCore::RenderTableCol::updateFromElement):
2062         * rendering/RenderTableRow.cpp:
2063         (WebCore::RenderTableRow::addChild):
2064         * rendering/RenderTableSection.cpp:
2065         (WebCore::RenderTableSection::addChild):
2066         * rendering/RenderText.cpp:
2067         (WebCore::RenderText::originalText):
2068         (WebCore::RenderText::positionForCoordinates):
2069         * rendering/RenderTextControlMultiLine.cpp:
2070         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2071         * rendering/RenderTextControlSingleLine.cpp:
2072         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2073         * rendering/RenderTextFragment.cpp:
2074         (WebCore::RenderTextFragment::originalText):
2075         (WebCore::RenderTextFragment::previousCharacter):
2076         * rendering/RenderTheme.cpp:
2077         (WebCore::RenderTheme::isActive):
2078         (WebCore::RenderTheme::isChecked):
2079         (WebCore::RenderTheme::isIndeterminate):
2080         (WebCore::RenderTheme::isEnabled):
2081         (WebCore::RenderTheme::isFocused):
2082         (WebCore::RenderTheme::isPressed):
2083         (WebCore::RenderTheme::isReadOnlyControl):
2084         (WebCore::RenderTheme::isHovered):
2085         * rendering/RenderThemeMac.mm:
2086         (WebCore::RenderThemeMac::updatePressedState):
2087         (WebCore::RenderThemeMac::paintMediaFullscreenButton):
2088         (WebCore::RenderThemeMac::paintMediaMuteButton):
2089         (WebCore::RenderThemeMac::paintMediaPlayButton):
2090         (WebCore::RenderThemeMac::paintMediaSeekBackButton):
2091         (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
2092         (WebCore::RenderThemeMac::paintMediaSliderTrack):
2093         (WebCore::RenderThemeMac::paintMediaSliderThumb):
2094         (WebCore::RenderThemeMac::paintMediaTimelineContainer):
2095         (WebCore::RenderThemeMac::paintMediaCurrentTime):
2096         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
2097         * rendering/RenderThemeSafari.cpp:
2098         (WebCore::RenderThemeSafari::paintMediaMuteButton):
2099         (WebCore::RenderThemeSafari::paintMediaPlayButton):
2100         (WebCore::RenderThemeSafari::paintMediaSliderTrack):
2101         * rendering/RenderTreeAsText.cpp:
2102         (WebCore::operator<<):
2103         (WebCore::writeSelection):
2104         * rendering/RenderWidget.cpp:
2105         (WebCore::RenderWidget::setWidgetGeometry):
2106         (WebCore::RenderWidget::updateWidgetPosition):
2107         (WebCore::RenderWidget::nodeAtPoint):
2108         * rendering/RootInlineBox.cpp:
2109         (WebCore::isEditableLeaf):
2110         * rendering/SVGRenderSupport.cpp:
2111         (WebCore::prepareToRenderSVGContent):
2112         * rendering/SVGRenderTreeAsText.cpp:
2113         (WebCore::write):
2114         * rendering/SVGRootInlineBox.cpp:
2115         (WebCore::SVGRootInlineBox::buildLayoutInformation):
2116         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2117         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2118         (WebCore::SVGRootInlineBox::buildTextChunks):
2119         * rendering/style/SVGRenderStyle.cpp:
2120         (WebCore::SVGRenderStyle::cssPrimitiveToLength):
2121         * svg/SVGFont.cpp:
2122         (WebCore::SVGTextRunWalker::walk):
2123         (WebCore::floatWidthOfSubStringUsingSVGFont):
2124         (WebCore::Font::drawTextUsingSVGFont):
2125         * svg/SVGTextContentElement.cpp:
2126         (WebCore::findInlineTextBoxInTextChunks):
2127         * svg/graphics/SVGPaintServer.cpp:
2128         (WebCore::SVGPaintServer::fillPaintServer):
2129         (WebCore::SVGPaintServer::strokePaintServer):
2130
2131 2009-02-11  Brady Eidson  <beidson@apple.com>
2132
2133         Reviewed by Darin Adler
2134
2135         <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
2136
2137         * history/CachedFrame.cpp:
2138         (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
2139
2140         * loader/FrameLoader.cpp:
2141         (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method.  This method was
2142           the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
2143         (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
2144         (WebCore::FrameLoader::closeAndRemoveChild): Added.  Do the non-tree related cleanup that
2145           FrameTree::removeChild() used to do.
2146         (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
2147         (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
2148         * loader/FrameLoader.h:
2149
2150         * page/FrameTree.cpp:
2151         (WebCore::FrameTree::removeChild): Just remove the Frame from the tree.  Closing it and other
2152           cleanup is the responsibility of the FrameLoader.
2153         * page/FrameTree.h:
2154         (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
2155
2156 2009-02-11  Scott Violet  <sky@google.com>
2157
2158         Reviewed by Eric Seidel.
2159
2160         https://bugs.webkit.org/show_bug.cgi?id=23882
2161         GraphicsContextSkia draws round rects as solid rects
2162
2163         Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
2164         . fillRoundedRect had an extra call to fillRect, resulting in always
2165           drawing a solid rectangle.
2166         . if the total radius along a given axis is greater than the size of
2167           the axis to draw, a solid rect should be drawn.
2168
2169         The layout tests LayoutTests/fast/css/shadow-multiple.html and
2170         LayoutTests/fast/box-shadow/basic-shadows.html cover this.
2171
2172         * platform/graphics/skia/GraphicsContextSkia.cpp:
2173         (WebCore::GraphicsContext::fillRoundedRect):
2174
2175 2009-02-11  Julien Chaffraix  <jchaffraix@webkit.org>
2176
2177         Reviewed by Eric Seidel.
2178
2179         Bug 23536: Auto-generate HTMLElementFactory
2180
2181         Remove the HTMLElementFactory files. Farewell.
2182
2183         * html/HTMLElementFactory.cpp: Removed.
2184         * html/HTMLElementFactory.h: Removed.
2185
2186 2009-02-11  Julien Chaffraix  <jchaffraix@webkit.org>
2187
2188         Reviewed by Eric Seidel.
2189
2190         Bug 23536: Auto-generate HTMLElementFactory
2191
2192         Make the platform auto-generate the HTMLElementFactory.
2193
2194         * DerivedSources.make:
2195         * GNUmakefile.am:
2196         * WebCore.pro:
2197         * WebCore.scons:
2198         * WebCore.vcproj/WebCore.vcproj:
2199         * WebCore.xcodeproj/project.pbxproj:
2200         * WebCoreSources.bkl:
2201         * webcore-base.bkl:
2202
2203 2009-02-11  Sam Weinig  <sam@webkit.org>
2204
2205         Reviewed by David Hyatt.
2206
2207         Remove unneeded ASSERTS.
2208
2209         * rendering/RenderBox.h:
2210         (WebCore::RenderBox::width):
2211         (WebCore::RenderBox::height):
2212         (WebCore::RenderBox::size):
2213         (WebCore::RenderBox::frameRect):
2214
2215 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2216
2217         Reviewed by Dave Hyatt
2218
2219         Add function to RenderStyle to ask whether a background image has been specified.
2220
2221         * rendering/style/RenderStyle.h:
2222         (WebCore::InheritedFlags::hasBackgroundImage):
2223
2224 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2225
2226         Reviewed by Dave Hyatt
2227
2228         https://bugs.webkit.org/show_bug.cgi?id=23548
2229
2230         When opacity or transform change on an object which has a compositing layer,
2231         avoid repainting the layer.
2232         
2233         Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
2234         that the only thing styleChanged() has to do is to update composited properties of
2235         the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
2236         properties, currently for opacity and transform. When one of these changes, we need
2237         to see if we have a compositing layer before we decide whether to layout/repaint,
2238         or just update the composited layer, via adjustStyleDifference().
2239         
2240         * rendering/RenderObject.cpp:
2241         (WebCore::RenderObject::adjustStyleDifference):
2242         (WebCore::RenderObject::setStyle):
2243         (WebCore::RenderObject::styleDidChange):
2244         * rendering/RenderObject.h:
2245         * rendering/style/RenderStyle.cpp:
2246         (WebCore::RenderStyle::diff):
2247         * rendering/style/RenderStyle.h:
2248         * rendering/style/RenderStyleConstants.h:
2249         (WebCore::):
2250
2251 2009-02-11  Alexey Proskuryakov  <ap@webkit.org>
2252
2253         Reviewed by Darin Adler.
2254
2255         <rdar://problem/6562920> Pasted text should be normalized to NFC
2256
2257         Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
2258
2259         * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
2260         -[NSString precomposedStringWithCanonicalMapping].
2261
2262 2009-02-10  Chris Marrin  <cmarrin@apple.com>
2263
2264         Reviewed by Simon Fraser.
2265
2266         https://bugs.webkit.org/show_bug.cgi?id=23883
2267
2268         Added new TransformOperation subclasses and methods to existing ones
2269         to support 3D.
2270
2271         * WebCore.xcodeproj/project.pbxproj:
2272         * platform/graphics/transforms/IdentityTransformOperation.h:
2273         (WebCore::IdentityTransformOperation::isAffine):
2274         * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
2275         (WebCore::Matrix3DTransformOperation::blend):
2276         * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
2277         (WebCore::Matrix3DTransformOperation::create):
2278         (WebCore::Matrix3DTransformOperation::isIdentity):
2279         (WebCore::Matrix3DTransformOperation::isAffine):
2280         (WebCore::Matrix3DTransformOperation::getOperationType):
2281         (WebCore::Matrix3DTransformOperation::isSameType):
2282         (WebCore::Matrix3DTransformOperation::operator==):
2283         (WebCore::Matrix3DTransformOperation::apply):
2284         (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
2285         * platform/graphics/transforms/MatrixTransformOperation.h:
2286         (WebCore::MatrixTransformOperation::isAffine):
2287         (WebCore::MatrixTransformOperation::apply):
2288         * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
2289         (WebCore::PerspectiveTransformOperation::blend):
2290         * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
2291         (WebCore::PerspectiveTransformOperation::create):
2292         (WebCore::PerspectiveTransformOperation::isIdentity):
2293         (WebCore::PerspectiveTransformOperation::isAffine):
2294         (WebCore::PerspectiveTransformOperation::getOperationType):
2295         (WebCore::PerspectiveTransformOperation::isSameType):
2296         (WebCore::PerspectiveTransformOperation::operator==):
2297         (WebCore::PerspectiveTransformOperation::apply):
2298         (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
2299         * platform/graphics/transforms/RotateTransformOperation.cpp:
2300         (WebCore::RotateTransformOperation::blend):
2301         * platform/graphics/transforms/RotateTransformOperation.h:
2302         (WebCore::RotateTransformOperation::create):
2303         (WebCore::RotateTransformOperation::angle):
2304         (WebCore::RotateTransformOperation::isAffine):
2305         (WebCore::RotateTransformOperation::operator==):
2306         (WebCore::RotateTransformOperation::apply):
2307         (WebCore::RotateTransformOperation::RotateTransformOperation):
2308         * platform/graphics/transforms/ScaleTransformOperation.cpp:
2309         (WebCore::ScaleTransformOperation::blend):
2310         * platform/graphics/transforms/ScaleTransformOperation.h:
2311         (WebCore::ScaleTransformOperation::create):
2312         (WebCore::ScaleTransformOperation::z):
2313         (WebCore::ScaleTransformOperation::isIdentity):
2314         (WebCore::ScaleTransformOperation::isAffine):
2315         (WebCore::ScaleTransformOperation::operator==):
2316         (WebCore::ScaleTransformOperation::apply):
2317         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
2318         * platform/graphics/transforms/SkewTransformOperation.h:
2319         (WebCore::SkewTransformOperation::isAffine):
2320         * platform/graphics/transforms/TransformOperation.h:
2321         (WebCore::TransformOperation::):
2322         (WebCore::TransformOperation::is3DOperation):
2323         * platform/graphics/transforms/TransformOperations.h:
2324         (WebCore::TransformOperations::isAffine):
2325         (WebCore::TransformOperations::has3DOperation):
2326         * platform/graphics/transforms/TranslateTransformOperation.cpp:
2327         (WebCore::TranslateTransformOperation::blend):
2328         * platform/graphics/transforms/TranslateTransformOperation.h:
2329         (WebCore::TranslateTransformOperation::create):
2330         (WebCore::TranslateTransformOperation::z):
2331         (WebCore::TranslateTransformOperation::isIdentity):
2332         (WebCore::TranslateTransformOperation::isAffine):
2333         (WebCore::TranslateTransformOperation::operator==):
2334         (WebCore::TranslateTransformOperation::apply):
2335         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
2336
2337 2009-02-11  David Hyatt  <hyatt@apple.com>
2338
2339         Move createAnonymousBlock() to RenderBlock.  Since anonymous blocks are always parented to some other block,
2340         we can move this function to RenderBlock.  Fix a couple of call sites as a result of this restriction.
2341
2342         Reviewed by Simon Fraser
2343
2344         * rendering/RenderBlock.cpp:
2345         (WebCore::RenderBlock::createAnonymousBlock):
2346         * rendering/RenderBlock.h:
2347         * rendering/RenderInline.cpp:
2348         (WebCore::RenderInline::childBecameNonInline):
2349         * rendering/RenderObject.cpp:
2350         (WebCore::RenderObject::handleDynamicFloatPositionChange):
2351         * rendering/RenderObject.h:
2352
2353 2009-02-11  David Hyatt  <hyatt@apple.com>
2354
2355         https://bugs.webkit.org/show_bug.cgi?id=23895
2356
2357         Remove two complete nonsense lines that I accidentally added from a cut and paste error.  This
2358         restores the original logic.
2359
2360         Reviewed by Simon Fraser
2361
2362         * rendering/RenderBox.cpp:
2363         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2364
2365 2009-02-11  David Hyatt  <hyatt@apple.com>
2366
2367         Rename getBaselineOfFirstLineBox to firstLineBoxBaseline.  Rename getBaselineOfLastLineBox to
2368         lastLineBoxBaseline.  Remove the functions from RenderObject and add them to RenderBox instead.
2369
2370         Reviewed by Eric Seidel
2371
2372         * rendering/RenderBlock.cpp:
2373         (WebCore::RenderBlock::baselinePosition):
2374         (WebCore::RenderBlock::firstLineBoxBaseline):
2375         (WebCore::RenderBlock::lastLineBoxBaseline):
2376         * rendering/RenderBlock.h:
2377         * rendering/RenderBox.h:
2378         (WebCore::RenderBox::firstLineBoxBaseline):
2379         (WebCore::RenderBox::lastLineBoxBaseline):
2380         * rendering/RenderFlexibleBox.cpp:
2381         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2382         * rendering/RenderObject.h:
2383         * rendering/RenderTable.cpp:
2384         (WebCore::RenderTable::firstLineBoxBaseline):
2385         * rendering/RenderTable.h:
2386         * rendering/RenderTableCell.cpp:
2387         (WebCore::RenderTableCell::baselinePosition):
2388         * rendering/RenderTableSection.cpp:
2389         (WebCore::RenderTableSection::firstLineBoxBaseline):
2390         * rendering/RenderTableSection.h:
2391
2392 2009-02-11  Eric Carlson  <eric.carlson@apple.com>
2393
2394         Reviewed by Simon Fraser
2395
2396         https://bugs.webkit.org/show_bug.cgi?id=23877
2397         Allow port to disable progress events from <video> and <audio> elements
2398
2399         * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
2400         (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
2401         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
2402         (WebCore::HTMLMediaElement::load): Ditto.
2403         * html/HTMLMediaElement.h: Add m_sendProgressEvents
2404
2405 2009-02-11  Adam Roben  <aroben@apple.com>
2406
2407         Windows build fix
2408
2409         * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
2410         it leads to ambiguities for symbols like "aTag", which exist in both
2411         the HTMLNames and SVGNames namespaces.
2412
2413         * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
2414         project directly. VS also decided to reformat this file a little bit.
2415
2416 2009-02-10  Julien Chaffraix  <jchaffraix@webkit.org>
2417
2418         Reviewed by Eric Seidel.
2419
2420         Bug 23536: Auto-generate HTMLElementFactory
2421
2422         Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
2423
2424         - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
2425           uses imgTag for example) and wired the code generation to be consistent with the current factory.
2426
2427         - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
2428
2429         - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
2430           close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
2431
2432         * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
2433           as closely as possible.
2434
2435         * html/HTMLElementFactory.cpp:
2436         (WebCore::quoteConstructor):
2437         * html/HTMLQuoteElement.cpp:
2438         (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
2439         part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
2440
2441         * html/HTMLTagNames.in: Corrected <image> parameters.
2442
2443 2009-02-10  David Hyatt  <hyatt@apple.com>
2444
2445         Fix for pixel test regression in fast/text.  Make sure not to add in
2446         the borderTop and paddingTop of the block to the baseline when painting
2447         strict mode text decorations.
2448         
2449         Reviewed by Mark Rowe
2450     
2451         * rendering/InlineFlowBox.cpp:
2452         (WebCore::InlineFlowBox::paintTextDecorations):
2453         * rendering/InlineFlowBox.h:
2454
2455 2009-02-10  Jon Honeycutt  <jhoneycutt@apple.com>
2456
2457         Windows build fix after r40837.
2458
2459         Not reviewed.
2460
2461         * DerivedSources.cpp:
2462
2463 2009-02-10  Jon Honeycutt  <jhoneycutt@apple.com>
2464
2465         <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
2466         after pan scrolling
2467
2468         Reviewed by Steve Falkenburg.
2469
2470         * platform/ScrollView.cpp:
2471         (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
2472         icon rect immediately; we will paint after the view has been scrolled.
2473
2474 2009-02-10  Oliver Hunt  <oliver@apple.com>
2475
2476         Reviewed by Adele Peterson.
2477
2478         <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
2479
2480         This problem was caused by incorrectly ignoring whether or not the
2481         default behaviour of the mousedown event was suppressed.  If a
2482         mousedown handler in a frame prevents default handling then the
2483         subsequent mousemove events fired for the drag should not be
2484         captured by that frame, should the mouse move out of its bounds.
2485
2486         Test: fast/events/mouse-drag-from-frame.html
2487
2488         * page/EventHandler.cpp:
2489         (WebCore::EventHandler::EventHandler):
2490         (WebCore::EventHandler::clear):
2491         (WebCore::EventHandler::handleMouseReleaseEvent):
2492             Reset new m_capturesDragging flag
2493
2494         (WebCore::EventHandler::handleMousePressEvent):
2495             Respect the m_capturesDragging flag when we propagate
2496             a mousedown event to a subframe.
2497
2498         * page/EventHandler.h:
2499         (WebCore::EventHandler::capturesDragging):
2500
2501 2009-02-10  Kevin Ollivier  <kevino@theolliviers.com>
2502
2503         wx build fixes for recent changes to TransformationMatrix and DOMElement.
2504
2505         * WebCoreSources.bkl:
2506         * dom/Element.cpp:
2507         * platform/graphics/transforms/TransformationMatrix.h:
2508         * platform/graphics/wx/TransformationMatrixWx.cpp:
2509         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
2510
2511 2009-02-10  David Hyatt  <hyatt@apple.com>
2512
2513         Some renames on line boxes.  xPos()/yPos() -> x()/y().  setXPos()/setYPos() -> setX()/setY().  m_object/object() -> m_renderer/renderer().  textObject() -> textRenderer().
2514         
2515         Reviewed by Sam Weinig
2516
2517         * dom/Position.cpp:
2518         (WebCore::Position::upstream):
2519         (WebCore::Position::downstream):
2520         * editing/VisiblePosition.cpp:
2521         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2522         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2523         (WebCore::VisiblePosition::localCaretRect):
2524         * editing/visible_units.cpp:
2525         (WebCore::startPositionForLine):
2526         (WebCore::endPositionForLine):
2527         (WebCore::previousLinePosition):
2528         (WebCore::nextLinePosition):
2529         * rendering/EllipsisBox.cpp:
2530         (WebCore::EllipsisBox::paint):
2531         (WebCore::EllipsisBox::nodeAtPoint):
2532         * rendering/InlineBox.cpp:
2533         (WebCore::InlineBox::showTreeForThis):
2534         (WebCore::InlineBox::height):
2535         (WebCore::InlineBox::caretMinOffset):
2536         (WebCore::InlineBox::caretMaxOffset):
2537         (WebCore::InlineBox::deleteLine):
2538         (WebCore::InlineBox::extractLine):
2539         (WebCore::InlineBox::attachLine):
2540         (WebCore::InlineBox::adjustPosition):
2541         (WebCore::InlineBox::paint):
2542         (WebCore::InlineBox::nodeAtPoint):
2543         (WebCore::InlineBox::selectionState):
2544         (WebCore::InlineBox::canAccommodateEllipsis):
2545         * rendering/InlineBox.h:
2546         (WebCore::InlineBox::InlineBox):
2547         (WebCore::InlineBox::renderer):
2548         (WebCore::InlineBox::setX):
2549         (WebCore::InlineBox::x):
2550         (WebCore::InlineBox::setY):
2551         (WebCore::InlineBox::y):
2552         (WebCore::InlineBox::topOverflow):
2553         (WebCore::InlineBox::bottomOverflow):
2554         (WebCore::InlineBox::leftOverflow):
2555         (WebCore::InlineBox::rightOverflow):
2556         (WebCore::InlineBox::visibleToHitTesting):
2557         (WebCore::InlineBox::boxModelObject):
2558         * rendering/InlineFlowBox.cpp:
2559         (WebCore::InlineFlowBox::height):
2560         (WebCore::InlineFlowBox::addToLine):
2561         (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
2562         (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
2563         (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
2564         (WebCore::InlineFlowBox::rendererLineBoxes):
2565         (WebCore::InlineFlowBox::onEndChain):
2566         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2567         (WebCore::InlineFlowBox::placeBoxesHorizontally):
2568         (WebCore::InlineFlowBox::verticallyAlignBoxes):
2569         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2570         (WebCore::verticalPositionForBox):
2571         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2572         (WebCore::InlineFlowBox::placeBoxesVertically):
2573         (WebCore::InlineFlowBox::nodeAtPoint):
2574         (WebCore::InlineFlowBox::paint):
2575         (WebCore::InlineFlowBox::paintFillLayer):
2576         (WebCore::InlineFlowBox::paintBoxShadow):
2577         (WebCore::InlineFlowBox::paintBoxDecorations):
2578         (WebCore::InlineFlowBox::paintMask):
2579         (WebCore::InlineFlowBox::paintTextDecorations):
2580         * rendering/InlineFlowBox.h:
2581         (WebCore::InlineFlowBox::borderLeft):
2582         (WebCore::InlineFlowBox::borderRight):
2583         (WebCore::InlineFlowBox::borderTop):
2584         (WebCore::InlineFlowBox::borderBottom):
2585         (WebCore::InlineFlowBox::baseline):
2586         * rendering/InlineTextBox.cpp:
2587         (WebCore::InlineTextBox::height):
2588         (WebCore::InlineTextBox::selectionState):
2589         (WebCore::InlineTextBox::selectionRect):
2590         (WebCore::InlineTextBox::deleteLine):
2591         (WebCore::InlineTextBox::extractLine):
2592         (WebCore::InlineTextBox::attachLine):
2593         (WebCore::InlineTextBox::placeEllipsisBox):
2594         (WebCore::InlineTextBox::isLineBreak):
2595         (WebCore::InlineTextBox::nodeAtPoint):
2596         (WebCore::InlineTextBox::paint):
2597         (WebCore::InlineTextBox::selectionStartEnd):
2598         (WebCore::InlineTextBox::paintSelection):
2599         (WebCore::InlineTextBox::paintCompositionBackground):
2600         (WebCore::InlineTextBox::paintCustomHighlight):
2601         (WebCore::InlineTextBox::paintDecoration):
2602         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2603         (WebCore::InlineTextBox::paintTextMatchMarker):
2604         (WebCore::InlineTextBox::paintDocumentMarkers):
2605         (WebCore::InlineTextBox::paintCompositionUnderline):
2606         (WebCore::InlineTextBox::textPos):
2607         (WebCore::InlineTextBox::offsetForPosition):
2608         (WebCore::InlineTextBox::positionForOffset):
2609         * rendering/InlineTextBox.h:
2610         (WebCore::InlineTextBox::textRenderer):
2611         * rendering/ListMarkerBox.cpp:
2612         (WebCore::ListMarkerBox::isText):
2613         * rendering/RenderBlock.cpp:
2614         (WebCore::RenderBlock::paintEllipsisBoxes):
2615         (WebCore::RenderBlock::lowestPosition):
2616         (WebCore::RenderBlock::rightmostPosition):
2617         (WebCore::RenderBlock::leftmostPosition):
2618         (WebCore::RenderBlock::positionForBox):
2619         (WebCore::RenderBlock::positionForCoordinates):
2620         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2621         (WebCore::RenderBlock::getBaselineOfLastLineBox):
2622         (WebCore::RenderBlock::adjustForBorderFit):
2623         (WebCore::RenderBlock::addFocusRingRects):
2624         * rendering/RenderBox.cpp:
2625         (WebCore::RenderBox::paintCustomHighlight):
2626         (WebCore::RenderBox::position):
2627         (WebCore::RenderBox::containingBlockWidthForPositioned):
2628         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2629         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2630         * rendering/RenderBoxModelObject.cpp:
2631         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2632         * rendering/RenderFlexibleBox.cpp:
2633         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2634         * rendering/RenderInline.cpp:
2635         (WebCore::RenderInline::absoluteRects):
2636         (WebCore::RenderInline::absoluteQuads):
2637         (WebCore::RenderInline::offsetLeft):
2638         (WebCore::RenderInline::offsetTop):
2639         (WebCore::RenderInline::linesBoundingBox):
2640         (WebCore::RenderInline::relativePositionedInlineOffset):
2641         (WebCore::RenderInline::addFocusRingRects):
2642         (WebCore::RenderInline::paintOutline):
2643         * rendering/RenderLayer.cpp:
2644         (WebCore::RenderLayer::localBoundingBox):
2645         * rendering/RenderSVGTSpan.cpp:
2646         (WebCore::RenderSVGTSpan::absoluteRects):
2647         (WebCore::RenderSVGTSpan::absoluteQuads):
2648         * rendering/RenderSVGText.cpp:
2649         (WebCore::RenderSVGText::absoluteRects):
2650         (WebCore::RenderSVGText::absoluteQuads):
2651         (WebCore::RenderSVGText::relativeBBox):
2652         * rendering/RenderSVGTextPath.cpp:
2653         (WebCore::RenderSVGTextPath::absoluteRects):
2654         (WebCore::RenderSVGTextPath::absoluteQuads):
2655         * rendering/RenderText.cpp:
2656         (WebCore::RenderText::absoluteRects):
2657         (WebCore::RenderText::absoluteRectsForRange):
2658         (WebCore::RenderText::absoluteQuads):
2659         (WebCore::RenderText::absoluteQuadsForRange):
2660         (WebCore::RenderText::localCaretRect):
2661         (WebCore::RenderText::linesBoundingBox):
2662         * rendering/RootInlineBox.cpp:
2663         (WebCore::RootInlineBox::height):
2664         (WebCore::RootInlineBox::clearTruncation):
2665         (WebCore::RootInlineBox::placeEllipsis):
2666         (WebCore::RootInlineBox::paintEllipsisBox):
2667         (WebCore::RootInlineBox::addHighlightOverflow):
2668         (WebCore::RootInlineBox::paintCustomHighlight):
2669         (WebCore::RootInlineBox::paint):
2670         (WebCore::RootInlineBox::nodeAtPoint):
2671         (WebCore::RootInlineBox::childRemoved):
2672         (WebCore::RootInlineBox::fillLineSelectionGap):
2673         (WebCore::RootInlineBox::block):
2674         (WebCore::isEditableLeaf):
2675         (WebCore::RootInlineBox::closestLeafChildForXPos):
2676         (WebCore::RootInlineBox::setVerticalOverflowPositions):
2677         * rendering/RootInlineBox.h:
2678         (WebCore::RootInlineBox::bottomOverflow):
2679         (WebCore::RootInlineBox::floats):
2680         (WebCore::RootInlineBox::setHorizontalOverflowPositions):
2681         (WebCore::RootInlineBox::setVerticalSelectionPositions):
2682         * rendering/SVGCharacterLayoutInfo.cpp:
2683         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
2684         * rendering/SVGInlineTextBox.cpp:
2685         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
2686         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
2687         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
2688         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
2689         (WebCore::SVGInlineTextBox::nodeAtPoint):
2690         (WebCore::SVGInlineTextBox::paintCharacters):
2691         (WebCore::SVGInlineTextBox::paintSelection):
2692         (WebCore::SVGInlineTextBox::paintDecoration):
2693         * rendering/SVGRenderTreeAsText.cpp:
2694         (WebCore::writeSVGInlineTextBox):
2695         * rendering/SVGRootInlineBox.cpp:
2696         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2697         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
2698         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
2699         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
2700         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
2701         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
2702         (WebCore::SVGRootInlineBox::paint):
2703         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
2704         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
2705         (WebCore::svgTextRunForInlineTextBox):
2706         (WebCore::cummulatedWidthOrHeightOfTextChunk):
2707         (WebCore::applyTextAnchorToTextChunk):
2708         (WebCore::SVGRootInlineBox::buildLayoutInformation):
2709         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2710         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2711         (WebCore::SVGRootInlineBox::buildTextChunks):
2712         * rendering/bidi.cpp:
2713         (WebCore::RenderBlock::constructLine):
2714         (WebCore::RenderBlock::computeVerticalPositionsForLine):
2715         (WebCore::RenderBlock::layoutInlineChildren):
2716         (WebCore::RenderBlock::checkLinesForTextOverflow):
2717         * svg/SVGTextContentElement.cpp:
2718         (WebCore::cumulativeCharacterRangeLength):
2719         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
2720         (WebCore::findInlineTextBoxInTextChunks):
2721
2722 2009-02-10  Simon Fraser  <simon.fraser@apple.com>
2723
2724         Reviewed by Dave Hyatt
2725
2726         Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
2727         that animation of an accelerated property must run in software for some reason.
2728         
2729         Also remove use of private headers in GraphicsLayerCA related to a case
2730         where we may have to fall back on software animation of transform.
2731
2732         * page/animation/AnimationBase.cpp:
2733         (WebCore::AnimationBase::blendProperties):
2734         * page/animation/AnimationBase.h:
2735         * page/animation/ImplicitAnimation.cpp:
2736         (WebCore::ImplicitAnimation::animate):
2737         * page/animation/KeyframeAnimation.cpp:
2738         (WebCore::KeyframeAnimation::animate):
2739         * platform/graphics/mac/GraphicsLayerCA.h:
2740         * platform/graphics/mac/GraphicsLayerCA.mm:
2741         (WebCore::getValueFunctionNameForTransformOperation):
2742         (WebCore::caValueFunctionSupported):
2743         (WebCore::GraphicsLayerCA::setBackgroundColor):
2744         (WebCore::GraphicsLayerCA::setOpacity):
2745         (WebCore::GraphicsLayerCA::animateTransform):
2746         (WebCore::GraphicsLayerCA::animateFloat):
2747         (WebCore::GraphicsLayerCA::setBasicAnimation):
2748         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2749
2750 2009-02-10  Simon Fraser  <simon.fraser@apple.com>
2751
2752         Reviewed by Dave Hyatt
2753
2754         Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
2755         relates to the RenderLayer z-order/overflow structure, rather than the render tree
2756         parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
2757         the enclosing layer excluding self.
2758         
2759         Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
2760         lists.
2761         
2762         Check for documentBeingDestroyed() in a few places to avoid work on document
2763         teardown.
2764         
2765         * rendering/RenderLayer.cpp:
2766         (WebCore::RenderLayer::enclosingCompositingLayer):
2767         (WebCore::RenderLayer::setParent):
2768         (WebCore::RenderLayer::dirtyZOrderLists):
2769         (WebCore::RenderLayer::dirtyOverflowList):
2770         * rendering/RenderLayer.h:
2771         (WebCore::RenderLayer::ancestorCompositingLayer):
2772         * rendering/RenderLayerBacking.cpp:
2773         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2774         * rendering/RenderLayerCompositor.cpp:
2775         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2776         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2777         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
2778         (WebCore::RenderLayerCompositor::clippedByAncestor):
2779         * rendering/RenderLayerCompositor.h:
2780         * rendering/RenderObject.cpp:
2781         (WebCore::RenderObject::containerForRepaint):
2782         * rendering/RenderObject.h:
2783
2784 2009-02-10  David Hyatt  <hyatt@apple.com>
2785
2786         Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox.  Rename setPos to setLocation.
2787
2788         Reviewed by Simon Fraser
2789
2790         * dom/MouseRelatedEvent.cpp:
2791         (WebCore::MouseRelatedEvent::receivedTarget):
2792         * rendering/RenderLayer.cpp:
2793         (WebCore::RenderLayer::updateLayerPosition):
2794         (WebCore::RenderLayer::convertToLayerCoords):
2795         * rendering/RenderLayer.h:
2796         (WebCore::RenderLayer::x):
2797         (WebCore::RenderLayer::y):
2798         (WebCore::RenderLayer::setLocation):
2799         * rendering/RenderTreeAsText.cpp:
2800         (WebCore::write):
2801         (WebCore::externalRepresentation):
2802
2803 2009-02-10  Darin Fisher  <darin@chromium.org>
2804
2805         Reviewed by Eric Seidel.
2806
2807         https://bugs.webkit.org/show_bug.cgi?id=23879
2808         Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
2809
2810         * platform/graphics/transforms/TransformationMatrix.h:
2811
2812 2009-02-10  Sam Weinig  <sam@webkit.org>
2813
2814         Reviewed by David Hyatt.
2815
2816         Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
2817         Please implement getBoundingClientRect and getClientRects
2818         <rdar://problem/6139669>
2819
2820         Cursory implementation of Element.getBoundingClientRect and
2821         Element.getClientRects. Adds necessary infrastructure classes
2822         ClientRect and ClientRectList.
2823
2824         Tests: fast/dom/getBoundingClientRect.html
2825                fast/dom/getClientRects.html
2826
2827         * DerivedSources.make:
2828         * GNUmakefile.am:
2829         * WebCore.pro:
2830         * WebCore.vcproj/WebCore.vcproj:
2831         * WebCore.xcodeproj/project.pbxproj:
2832         * WebCoreSources.bkl:
2833         * dom/ClientRect.cpp: Added.
2834         (WebCore::ClientRect::ClientRect):
2835         * dom/ClientRect.h: Added.
2836         (WebCore::ClientRect::create):
2837         (WebCore::ClientRect::top):
2838         (WebCore::ClientRect::right):
2839         (WebCore::ClientRect::bottom):
2840         (WebCore::ClientRect::left):
2841         (WebCore::ClientRect::width):
2842         (WebCore::ClientRect::height):
2843         * dom/ClientRect.idl: Added.
2844         * dom/ClientRectList.cpp: Added.
2845         (WebCore::ClientRectList::ClientRectList):
2846         (WebCore::ClientRectList::~ClientRectList):
2847         (WebCore::ClientRectList::length):
2848         (WebCore::ClientRectList::item):
2849         * dom/ClientRectList.h: Added.
2850         (WebCore::ClientRectList::create):
2851         * dom/ClientRectList.idl: Added.
2852         * dom/Element.cpp:
2853         (WebCore::Element::getClientRects):
2854         (WebCore::Element::getBoundingClientRect):
2855         * dom/Element.h:
2856         * dom/Element.idl:
2857         * page/DOMWindow.idl:
2858         * rendering/RenderInline.cpp:
2859         (WebCore::RenderInline::absoluteRects):
2860         (WebCore::RenderInline::absoluteQuads):
2861
2862 2009-02-10  David Hyatt  <hyatt@apple.com>
2863
2864         Get rid of capsLockStateMayHaveChanged on RenderObject.  It is only implemented by one class (text fields),
2865         so devirtualize and just query at the single call site.
2866
2867         Reviewed by Eric Seidel
2868
2869         * page/EventHandler.cpp:
2870         (WebCore::EventHandler::capsLockStateMayHaveChanged):
2871         * rendering/RenderObject.h:
2872         * rendering/RenderTextControlSingleLine.h:
2873
2874 2009-02-10  David Hyatt  <hyatt@apple.com>
2875
2876         Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes.  This patch moves the cached vertical position member to RenderInlines,
2877         since they were the only objects being queried across multiple lines.
2878         
2879         Reviewed by Sam Weinig
2880
2881         * rendering/InlineFlowBox.cpp:
2882         (WebCore::verticalPositionForBox):
2883         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2884         * rendering/RenderBoxModelObject.cpp:
2885         (WebCore::RenderBoxModelObject::verticalPosition):
2886         * rendering/RenderBoxModelObject.h:
2887         * rendering/RenderInline.cpp:
2888         (WebCore::RenderInline::RenderInline):
2889         (WebCore::RenderInline::verticalPositionFromCache):
2890         * rendering/RenderInline.h:
2891         (WebCore::RenderInline::invalidateVerticalPosition):
2892         * rendering/RenderObject.cpp:
2893         (WebCore::RenderObject::RenderObject):
2894         * rendering/RenderObject.h:
2895         * rendering/RenderText.cpp:
2896         * rendering/RenderText.h:
2897         * rendering/bidi.cpp:
2898         (WebCore::RenderBlock::layoutInlineChildren):
2899
2900 2009-02-10  Dimitri Glazkov  <dglazkov@chromium.org>
2901
2902         Reviewed by Mark Rowe.
2903
2904         https://bugs.webkit.org/show_bug.cgi?id=23868
2905         Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
2906
2907         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2908         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2909
2910 2009-02-10  Dimitri Glazkov  <dglazkov@chromium.org>
2911
2912         Reviewed by Eric Seidel.
2913
2914         https://bugs.webkit.org/show_bug.cgi?id=23868
2915         Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
2916
2917         * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
2918         (WebCore::ACCESSOR_GETTER):
2919         (WebCore::ACCESSOR_SETTER):
2920         (WebCore::CALLBACK_FUNC_DECL):
2921         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
2922         (WebCore::ACCESSOR_GETTER):
2923         (WebCore::ACCESSOR_SETTER):
2924
2925 2009-02-10  Adam Roben  <aroben@apple.com>
2926
2927         Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
2928         running http/tests/security/xss-DENIED-xsl-document-redirect.xml
2929
2930         <https://bugs.webkit.org/show_bug.cgi?id=23871>
2931
2932         Reviewed by Alexey Proskuryakov.
2933
2934         Covered by existing tests.
2935
2936         * dom/XMLTokenizerLibxml2.cpp:
2937         (WebCore::openFunc): Use the two-parameter KURL constructor so that
2938         the string will be parsed. libxml2 gives us a UTF-8-encoded string
2939         that needs to be parsed.
2940
2941 2009-02-10  David Hyatt  <hyatt@apple.com>
2942
2943         Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
2944         overflow boolean into the RenderObject base class.
2945
2946         Reviewed by Sam Weinig
2947
2948         * rendering/RenderObject.cpp:
2949         (WebCore::RenderObject::RenderObject):
2950         * rendering/RenderObject.h:
2951         (WebCore::RenderObject::replacedHasOverflow):
2952         (WebCore::RenderObject::setReplacedHasOverflow):
2953         * rendering/RenderReplaced.cpp:
2954         (WebCore::RenderReplaced::RenderReplaced):
2955         (WebCore::RenderReplaced::~RenderReplaced):
2956         (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
2957         (WebCore::RenderReplaced::overflowHeight):
2958         (WebCore::RenderReplaced::overflowWidth):
2959         (WebCore::RenderReplaced::overflowLeft):
2960         (WebCore::RenderReplaced::overflowTop):
2961         (WebCore::RenderReplaced::overflowRect):
2962         * rendering/RenderReplaced.h:
2963
2964 2009-02-10  Eric Carlson  <eric.carlson@apple.com>
2965
2966         Reviewed by Simon Fraser.
2967
2968         https://bugs.webkit.org/show_bug.cgi?id=23870
2969         Make it possible for a port to require a user gesture for an <audio> or <video> element
2970         to load a url.
2971
2972         * html/HTMLMediaElement.cpp:
2973         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
2974         (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
2975         (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set 
2976         and we are not preocessing a user gesture.
2977         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
2978         (WebCore::HTMLMediaElement::play): Ditto.
2979         (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
2980         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
2981         multiple times.
2982         (WebCore::HTMLMediaElement::processingUserGesture): New.
2983         * html/HTMLMediaElement.h:
2984         (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
2985
2986 2009-02-10  Holger Hans Peter Freyther  <zecke@selfish.org>
2987
2988         Reviewed by Sam Weinig.
2989
2990         Remove the SVG checks from FloatPoint3D as it is used
2991         by TransformationMatrix.
2992
2993         * platform/graphics/FloatPoint3D.cpp:
2994         * platform/graphics/FloatPoint3D.h:
2995
2996 2009-02-10  David Hyatt  <hyatt@apple.com>
2997
2998         Remove the m_baseline member variable from all line boxes, since it can easily be computed when needed and did not need to be cached.
2999
3000         Reviewed by Sam Weinig
3001
3002         * rendering/EllipsisBox.cpp:
3003         (WebCore::EllipsisBox::paint):
3004         (WebCore::EllipsisBox::nodeAtPoint):
3005         * rendering/EllipsisBox.h:
3006         (WebCore::EllipsisBox::EllipsisBox):
3007         * rendering/InlineBox.h:
3008         (WebCore::InlineBox::InlineBox):
3009         * rendering/InlineFlowBox.cpp:
3010         (WebCore::InlineFlowBox::verticallyAlignBoxes):
3011         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3012         (WebCore::InlineFlowBox::placeBoxesVertically):
3013         (WebCore::InlineFlowBox::paintTextDecorations):
3014         * rendering/InlineFlowBox.h:
3015         (WebCore::InlineFlowBox::marginBorderPaddingLeft):
3016         (WebCore::InlineFlowBox::marginBorderPaddingRight):
3017         (WebCore::InlineFlowBox::marginLeft):
3018         (WebCore::InlineFlowBox::marginRight):
3019         (WebCore::InlineFlowBox::borderLeft):
3020         (WebCore::InlineFlowBox::borderRight):
3021         (WebCore::InlineFlowBox::borderTop):
3022         (WebCore::InlineFlowBox::borderBottom):
3023         (WebCore::InlineFlowBox::paddingLeft):
3024         (WebCore::InlineFlowBox::paddingRight):
3025         (WebCore::InlineFlowBox::paddingTop):
3026         (WebCore::InlineFlowBox::paddingBottom):
3027         (WebCore::InlineFlowBox::includeLeftEdge):
3028         (WebCore::InlineFlowBox::includeRightEdge):
3029         (WebCore::InlineFlowBox::baseline):
3030         * rendering/InlineTextBox.cpp:
3031         (WebCore::InlineTextBox::paint):
3032         (WebCore::InlineTextBox::paintDecoration):
3033         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3034         (WebCore::InlineTextBox::paintCompositionUnderline):
3035         * rendering/RenderBlock.cpp:
3036         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
3037         (WebCore::RenderBlock::getBaselineOfLastLineBox):
3038         * rendering/RenderTableCell.cpp:
3039         (WebCore::RenderTableCell::baselinePosition):
3040         * rendering/RootInlineBox.cpp:
3041         (WebCore::RootInlineBox::placeEllipsis):
3042         * rendering/SVGInlineTextBox.cpp:
3043         (WebCore::SVGInlineTextBox::paintDecoration):
3044         * rendering/SVGRootInlineBox.cpp:
3045         (WebCore::applyTextAnchorToTextChunk):
3046         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3047
3048 2009-02-10  Alexey Proskuryakov  <ap@webkit.org>
3049
3050         Reviewed by Darin Adler.
3051
3052         https://bugs.webkit.org/show_bug.cgi?id=23867
3053         Eliminate obsolete frame->document() checks
3054
3055         * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
3056         (document vs. !document), fillWithRed was always set to false, and other branches were
3057         never taken. Removing the check for document restores debug-only red color filling.
3058
3059         * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
3060         after a document is created. A client can do anything in its delegate method, so we'd need
3061         to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
3062         custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
3063
3064         * bindings/js/JSDOMWindowBase.cpp:
3065         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
3066         * bindings/js/JSDOMWindowCustom.cpp:
3067         (WebCore::JSDOMWindow::addEventListener):
3068         (WebCore::JSDOMWindow::removeEventListener):
3069         * bindings/js/JSNavigatorCustom.cpp:
3070         (WebCore::needsYouTubeQuirk):
3071         * bindings/js/ScheduledAction.cpp:
3072         (WebCore::ScheduledAction::execute):
3073         * bindings/js/ScriptControllerMac.mm:
3074         (WebCore::updateRenderingForBindings):
3075         * dom/Document.cpp:
3076         (WebCore::Document::initSecurityContext):
3077         * editing/Editor.cpp:
3078         (WebCore::Editor::deleteWithDirection):
3079         (WebCore::Editor::dispatchCPPEvent):
3080         (WebCore::Editor::applyStyle):
3081         (WebCore::Editor::applyParagraphStyle):
3082         * editing/EditorCommand.cpp:
3083         (WebCore::Editor::Command::execute):
3084         (WebCore::Editor::Command::isEnabled):
3085         (WebCore::Editor::Command::state):
3086         (WebCore::Editor::Command::value):
3087         * editing/SelectionController.cpp:
3088         (WebCore::SelectionController::recomputeCaretRect):
3089         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3090         (WebCore::SelectionController::selectAll):
3091         (WebCore::SelectionController::setFocused):
3092         * inspector/InspectorController.cpp:
3093         (WebCore::getResourceDocumentNode):
3094         * inspector/JavaScriptDebugServer.cpp:
3095         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
3096         * loader/DocumentLoader.cpp:
3097         (WebCore::canonicalizedTitle):
3098         (WebCore::DocumentLoader::stopLoading):
3099         (WebCore::DocumentLoader::isLoadingInAPISense):
3100         (WebCore::DocumentLoader::subresource):
3101         (WebCore::DocumentLoader::getSubresources):
3102         * loader/FrameLoader.cpp:
3103         (WebCore::FrameLoader::urlSelected):
3104         (WebCore::FrameLoader::stop):
3105         (WebCore::FrameLoader::iconURL):
3106         (WebCore::FrameLoader::executeIfJavaScriptURL):
3107         (WebCore::FrameLoader::clear):
3108         (WebCore::FrameLoader::endIfNotLoadingMainResource):
3109         (WebCore::FrameLoader::restoreDocumentState):
3110         (WebCore::FrameLoader::gotoAnchor):
3111         (WebCore::FrameLoader::loadDone):
3112         (WebCore::FrameLoader::checkCompleted):
3113         (WebCore::FrameLoader::checkCallImplicitClose):
3114         (WebCore::FrameLoader::scheduleRefresh):
3115         (WebCore::FrameLoader::outgoingOrigin):
3116         (WebCore::FrameLoader::canCachePageContainingThisFrame):
3117         (WebCore::FrameLoader::logCanCacheFrameDecision):
3118         (WebCore::FrameLoader::updatePolicyBaseURL):
3119         (WebCore::FrameLoader::setPolicyBaseURL):
3120         (WebCore::FrameLoader::frameDetached):
3121         (WebCore::FrameLoader::shouldScrollToAnchor):
3122         (WebCore::FrameLoader::saveDocumentState):
3123         * loader/archive/cf/LegacyWebArchive.cpp:
3124         (WebCore::LegacyWebArchive::create):
3125         * loader/icon/IconFetcher.cpp:
3126         (WebCore::IconFetcher::create):
3127         * loader/icon/IconLoader.cpp:
3128         (WebCore::IconLoader::startLoading):
3129         * page/AccessibilityRenderObject.cpp:
3130         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
3131         * page/Chrome.cpp:
3132         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
3133         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
3134         * page/DOMWindow.cpp:
3135         (WebCore::DOMWindow::sessionStorage):
3136         (WebCore::DOMWindow::alert):
3137         (WebCore::DOMWindow::confirm):
3138         (WebCore::DOMWindow::prompt):
3139         (WebCore::DOMWindow::scrollX):
3140         (WebCore::DOMWindow::scrollY):
3141         (WebCore::DOMWindow::getMatchedCSSRules):
3142         (WebCore::DOMWindow::openDatabase):
3143         (WebCore::DOMWindow::scrollBy):
3144         (WebCore::DOMWindow::scrollTo):
3145         * page/EventHandler.cpp:
3146         (WebCore::EventHandler::allowDHTMLDrag):
3147         (WebCore::EventHandler::scrollOverflow):
3148         (WebCore::EventHandler::handleMousePressEvent):
3149         (WebCore::EventHandler::handleMouseDoubleClickEvent):
3150         (WebCore::EventHandler::handleMouseMoveEvent):
3151         (WebCore::EventHandler::handleMouseReleaseEvent):
3152         (WebCore::EventHandler::updateDragAndDrop):
3153         (WebCore::EventHandler::handleWheelEvent):
3154         (WebCore::EventHandler::sendContextMenuEvent):
3155         (WebCore::EventHandler::capsLockStateMayHaveChanged):
3156         (WebCore::EventHandler::sendResizeEvent):
3157         (WebCore::EventHandler::sendScrollEvent):
3158         * page/FocusController.cpp:
3159         (WebCore::deepFocusableNode):
3160         (WebCore::FocusController::advanceFocus):
3161         * page/Frame.cpp:
3162         (WebCore::Frame::setFocusedNodeIfNeeded):
3163         (WebCore::Frame::shouldApplyTextZoom):
3164         (WebCore::Frame::shouldApplyPageZoom):
3165         (WebCore::Frame::setZoomFactor):
3166         (WebCore::Frame::setPrinting):
3167         (WebCore::Frame::reapplyStyles):
3168         (WebCore::Frame::isContentEditable):
3169         (WebCore::Frame::computeAndSetTypingStyle):
3170         (WebCore::Frame::selectionComputedStyle):
3171         (WebCore::Frame::applyEditingStyleToBodyElement):
3172         (WebCore::Frame::removeEditingStyleFromBodyElement):
3173         (WebCore::Frame::contentRenderer):
3174         (WebCore::Frame::styleForSelectionStart):
3175         (WebCore::Frame::setSelectionFromNone):
3176         (WebCore::Frame::findString):
3177         (WebCore::Frame::markAllMatchesForText):
3178         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
3179         (WebCore::Frame::documentTypeString):
3180         (WebCore::Frame::shouldClose):
3181         (WebCore::Frame::respondToChangedSelection):
3182         * page/FrameView.cpp:
3183         (WebCore::FrameView::~FrameView):
3184         (WebCore::FrameView::createScrollbar):
3185         (WebCore::FrameView::layout):
3186         (WebCore::FrameView::layoutTimerFired):
3187         (WebCore::FrameView::scheduleRelayout):
3188         (WebCore::FrameView::needsLayout):
3189         (WebCore::FrameView::unscheduleRelayout):
3190         (WebCore::FrameView::windowClipRect):
3191         * page/Geolocation.cpp:
3192         (WebCore::Geolocation::disconnectFrame):
3193         * page/Page.cpp:
3194         (WebCore::networkStateChanged):
3195         (WebCore::Page::~Page):
3196         (WebCore::Page::unmarkAllTextMatches):
3197         (WebCore::Page::setMediaVolume):
3198         * page/animation/AnimationController.cpp:
3199         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
3200         * page/mac/EventHandlerMac.mm:
3201         (WebCore::EventHandler::currentKeyboardEvent):
3202         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
3203         * page/mac/FrameMac.mm:
3204         (WebCore::Frame::dashboardRegionsDictionary):
3205         (WebCore::Frame::setUserStyleSheetLocation):
3206         (WebCore::Frame::setUserStyleSheet):
3207         * storage/LocalStorageArea.cpp:
3208         (WebCore::LocalStorageArea::dispatchStorageEvent):
3209         * storage/SessionStorageArea.cpp:
3210         (WebCore::SessionStorageArea::dispatchStorageEvent):
3211         * svg/graphics/SVGImage.cpp:
3212         (WebCore::SVGImage::setContainerSize):
3213         (WebCore::SVGImage::usesContainerSize):
3214         (WebCore::SVGImage::size):
3215         (WebCore::SVGImage::hasRelativeWidth):
3216         (WebCore::SVGImage::hasRelativeHeight):
3217         Removed frame->document() checks.
3218
3219 2009-02-10  Adam Treat  <adam.treat@torchmobile.com>
3220
3221         Reviewed by George Staikos.
3222
3223         Attempt to fix the Qt build after r40791.
3224
3225         * rendering/RenderSVGRoot.cpp:
3226
3227 2009-02-10  Adam Treat  <adam.treat@torchmobile.com>
3228
3229         Reviewed by George Staikos.
3230
3231         Minor code cleanup.
3232
3233         * dom/ContainerNode.cpp:
3234         (WebCore::ContainerNode::replaceChild):
3235
3236 2009-02-10  Adam Treat  <adam.treat@torchmobile.com>
3237
3238         Fix Qt build following r40793.
3239
3240         * editing/qt/EditorQt.cpp:
3241
3242 2009-02-10  Feng Qian <feng@chromium.org>
3243
3244         Reviewed by Alexey Proskuryakov.
3245
3246         Fix crashes when accessing navigator object of a deleted frame.
3247         https://bugs.webkit.org/show_bug.cgi?id=23626
3248         A layout test is added: fast/dom/navigator-detached-no-crash.html
3249
3250         * page/Navigator.cpp:
3251         (WebCore::Navigator::cookieEnabled):
3252         (WebCore::Navigator::javaEnabled):
3253
3254 2009-02-10  Sverrir Berg  <sverrir@chromium.org>
3255
3256         Reviewed by Eric Seidel.
3257
3258         https://bugs.webkit.org/show_bug.cgi?id=23630
3259         Add complex font rendering using Skia instead of Windows ScriptTextOut.
3260         This adds support for enhanced webkit styles when drawing complex
3261         glyphs.
3262
3263         * platform/graphics/chromium/FontChromiumWin.cpp:
3264         (WebCore::Font::drawGlyphs):
3265         (WebCore::Font::drawComplexText):
3266         * platform/graphics/chromium/UniscribeHelper.cpp:
3267         (WebCore::containsMissingGlyphs):
3268         (WebCore::UniscribeHelper::draw):
3269         (WebCore::UniscribeHelper::shape):
3270         * platform/graphics/chromium/UniscribeHelper.h:
3271         * platform/graphics/skia/SkiaFontWin.cpp:
3272         (WebCore::windowsCanHandleTextDrawing):
3273         (WebCore::skiaDrawText):
3274         (WebCore::paintSkiaText):
3275         * platform/graphics/skia/SkiaFontWin.h:
3276
3277 2009-02-10  Darin Fisher  <darin@chromium.org>
3278
3279         Revert r40797 as requested by Sam Weinig.
3280
3281         https://bugs.webkit.org/show_bug.cgi?id=23809
3282
3283         * bindings/scripts/CodeGeneratorJS.pm:
3284         * dom/Document.idl:
3285         * html/HTMLCanvasElement.idl:
3286
3287 2009-02-09  Darin Fisher  <darin@chromium.org>
3288
3289         Reviewed by Eric Seidel.
3290
3291         https://bugs.webkit.org/show_bug.cgi?id=23855
3292         Fix TransformationMatrixSkia.cpp and GraphicsContextSkia.cpp bustage
3293
3294         * platform/graphics/skia/GraphicsContextSkia.cpp:
3295         (WebCore::GraphicsContext::getCTM):
3296         * platform/graphics/skia/TransformationMatrixSkia.cpp:
3297         (WebCore::TransformationMatrix::operator SkMatrix):
3298
3299 2009-02-09  Dan Bernstein  <mitz@apple.com>
3300
3301         Reviewed by Dave Hyatt.
3302
3303         - fix <rdar://problem/6568942> REGRESSION: Font rendering in Wikipedia input field is incorrect (default GDI text mode)
3304
3305         * platform/graphics/win/SimpleFontDataWin.cpp:
3306         (WebCore::SimpleFontData::widthForGDIGlyph): Make sure that the DC is
3307         in the advanced graphics mode before calling GetCharWidthI(), because
3308         otherwise that function returns incorrect results for the default UI
3309         font at a certain size.
3310
3311 2009-02-09  Chris Marrin  <cmarrin@apple.com>
3312
3313         Reviewed by Simon Fraser
3314
3315         https://bugs.webkit.org/show_bug.cgi?id=23689
3316
3317         Added 3D functions to WebKitCSSMatrix. This depends on the 3D functions
3318         added to TransformationMatrix in https://bugs.webkit.org/show_bug.cgi?id=6868
3319
3320         Test: transforms/3d/cssmatrix-3d-interface.xhtml
3321
3322         * css/WebKitCSSMatrix.cpp:
3323         * css/WebKitCSSMatrix.h:
3324         * css/WebKitCSSMatrix.idl:
3325
3326 2009-02-09  Mark Rowe  <mrowe@apple.com>
3327
3328         Reviewed by Darin Adler.
3329
3330         Fix <https://bugs.webkit.org/show_bug.cgi?id=23858>
3331         Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler
3332
3333         * html/HTMLSelectElement.cpp:
3334         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't store the renderer in a local variable
3335         as it can be invalidated by any of the calls to focus() within the function.  Instead, retrieve it and
3336         null-check it when it is needed.
3337
3338 2009-02-09  David Hyatt  <hyatt@apple.com>
3339
3340         Remove the m_height member from InlineBox.  This shaves 4 bytes off of all inline boxes.  Unfortunately SVG
3341         sets heights that are independent of the renderer or of the font, and so all SVG boxes have to retain m_height
3342         member variables.
3343
3344         height() on InlineBox is now a virtual function that does a dynamic computation (including shrinking boxes
3345         with no text children).  For SVG boxes there is also a non-virtual setHeight function for updating the
3346         m_height member variable like before.
3347     
3348         Reviewed by Darin Adler
3349
3350         * rendering/EllipsisBox.cpp:
3351         (WebCore::EllipsisBox::nodeAtPoint):
3352         * rendering/EllipsisBox.h:
3353         (WebCore::EllipsisBox::EllipsisBox):
3354         * rendering/InlineBox.cpp:
3355         (WebCore::InlineBox::height):
3356         (WebCore::InlineBox::root):
3357         * rendering/InlineBox.h:
3358         (WebCore::InlineBox::InlineBox):
3359         (WebCore::InlineBox::isInlineFlowBox):
3360         (WebCore::InlineBox::isRootInlineBox):
3361         (WebCore::InlineBox::topOverflow):
3362         (WebCore::InlineBox::bottomOverflow):
3363         (WebCore::InlineBox::leftOverflow):
3364         (WebCore::InlineBox::rightOverflow):
3365         * rendering/InlineFlowBox.cpp:
3366         (WebCore::InlineFlowBox::height):
3367         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3368         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3369         (WebCore::InlineFlowBox::placeBoxesVertically):
3370         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
3371         (WebCore::InlineFlowBox::nodeAtPoint):
3372         * rendering/InlineFlowBox.h:
3373         (WebCore::InlineFlowBox::isInlineFlowBox):
3374         * rendering/InlineTextBox.cpp:
3375         (WebCore::InlineTextBox::height):
3376         (WebCore::InlineTextBox::nodeAtPoint):
3377         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3378         (WebCore::InlineTextBox::paintCompositionUnderline):
3379         * rendering/InlineTextBox.h:
3380         * rendering/RootInlineBox.cpp:
3381         (WebCore::RootInlineBox::height):
3382         (WebCore::RootInlineBox::placeEllipsis):
3383         (WebCore::RootInlineBox::setVerticalOverflowPositions):
3384         * rendering/RootInlineBox.h:
3385         (WebCore::RootInlineBox::isRootInlineBox):
3386         (WebCore::RootInlineBox::topOverflow):
3387         (WebCore::RootInlineBox::bottomOverflow):
3388         (WebCore::RootInlineBox::leftOverflow):
3389         (WebCore::RootInlineBox::rightOverflow):
3390         (WebCore::RootInlineBox::selectionBottom):
3391         (WebCore::RootInlineBox::Overflow::Overflow):
3392         (WebCore::RootInlineBox::setVerticalSelectionPositions):
3393         * rendering/SVGInlineFlowBox.h:
3394         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
3395         (WebCore::SVGInlineFlowBox::height):
3396         (WebCore::SVGInlineFlowBox::setHeight):
3397         * rendering/SVGInlineTextBox.cpp:
3398         (WebCore::SVGInlineTextBox::SVGInlineTextBox):
3399         * rendering/SVGInlineTextBox.h:
3400         (WebCore::SVGInlineTextBox::height):
3401         (WebCore::SVGInlineTextBox::setHeight):
3402         * rendering/SVGRootInlineBox.cpp:
3403         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3404         * rendering/SVGRootInlineBox.h:
3405         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
3406         (WebCore::SVGRootInlineBox::height):
3407         (WebCore::SVGRootInlineBox::setHeight):
3408
3409 2009-02-09  Eric Seidel  <eric@webkit.org>
3410
3411         Reviewed by Sam Weinig.
3412
3413         Document our Selection DOM extensions
3414         (in preparation for re-writing Selection to work with ranges)
3415
3416         * page/DOMSelection.cpp:
3417         (WebCore::DOMSelection::type):
3418         * page/DOMSelection.h:
3419         * page/DOMSelection.idl:
3420
3421 2009-02-09  Eric Seidel  <eric@webkit.org>
3422
3423         Attempt to fix wx build
3424
3425         * WebCoreSources.bkl: change Selection to VisibleSelection
3426
3427 2009-02-06  Darin Fisher  <darin@chromium.org>
3428
3429         Reviewed by Eric Seidel.
3430
3431         https://bugs.webkit.org/show_bug.cgi?id=23809
3432         Return CanvasRenderingContext2D instead of DOMObject in IDL to avoid V8 #ifdefs
3433
3434         * bindings/scripts/CodeGeneratorJS.pm:
3435         * dom/Document.idl:
3436         * html/HTMLCanvasElement.idl:
3437
3438 2009-02-09  Dirk Schulze  <krit@webkit.org>
3439
3440         Reviewed by Eric Seidel.
3441
3442         Transform the gradient instead of the context for most platforms and
3443         transform the context after CGContextReplacePathWithStrokedPath for CG.
3444
3445         REGRESSION: SVG gradient transformation/BoundingBox can cause ugly stroke thickness
3446         https://bugs.webkit.org/show_bug.cgi?id=23547
3447
3448         * platform/graphics/Gradient.h:
3449         (WebCore::Gradient::setGradientSpaceTransform):
3450         (WebCore::Gradient::gradientSpaceTransform):
3451         * platform/graphics/cairo/GradientCairo.cpp:
3452         (WebCore::Gradient::platformGradient):
3453         * platform/graphics/cg/GraphicsContextCG.cpp:
3454         (WebCore::GraphicsContext::fillPath):
3455         (WebCore::GraphicsContext::strokePath):
3456         (WebCore::GraphicsContext::fillRect):
3457         * platform/graphics/qt/GraphicsContextQt.cpp:
3458         (WebCore::GraphicsContext::fillPath):
3459         (WebCore::GraphicsContext::strokePath):
3460         (WebCore::GraphicsContext::fillRect):
3461         * platform/graphics/skia/GradientSkia.cpp:
3462         (WebCore::Gradient::platformGradient):
3463         * svg/graphics/SVGPaintServerGradient.cpp:
3464         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
3465         (WebCore::clipToTextMask):
3466         (WebCore::SVGPaintServerGradient::setup):
3467         (WebCore::SVGPaintServerGradient::teardown):
3468
3469 2009-02-09  Sam Weinig  <sam@webkit.org>
3470
3471         Reviewed by David Hyatt.
3472
3473         Fix the highlight when inspecting inline elements.
3474
3475         * inspector/InspectorController.cpp:
3476         (WebCore::drawHighlightForBox):
3477         (WebCore::drawHighlightForLineBoxes):
3478         (WebCore::InspectorController::drawNodeHighlight):
3479
3480 2009-02-09  Eric Seidel  <eric@webkit.org>
3481
3482         Fix the gtk build by adding VisibleSelection and removing Selection.
3483
3484         * GNUmakefile.am:
3485
3486 2009-02-09  Eric Seidel  <eric@webkit.org>
3487
3488         Reviewed by Dave Hyatt.
3489
3490         Rename Selection to VisibleSelection to allow us to separate
3491         the selections the user works with from the ones used by
3492         the JS editing APIs.
3493         https://bugs.webkit.org/show_bug.cgi?id=23852
3494
3495         No functional changes, thus no tests.
3496
3497         * WebCore.base.exp:
3498         * WebCore.pro:
3499         * WebCore.scons:
3500         * WebCore.vcproj/WebCore.vcproj:
3501         * WebCore.xcodeproj/project.pbxproj:
3502         * dom/Element.cpp:
3503         (WebCore::Element::updateFocusAppearance):
3504         * editing/ApplyStyleCommand.cpp:
3505         (WebCore::ApplyStyleCommand::updateStartEnd):
3506         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
3507         * editing/BreakBlockquoteCommand.cpp:
3508         (WebCore::BreakBlockquoteCommand::doApply):
3509         * editing/CompositeEditCommand.cpp:
3510         (WebCore::CompositeEditCommand::inputText):
3511         (WebCore::CompositeEditCommand::deleteSelection):
3512         (WebCore::CompositeEditCommand::rebalanceWhitespace):
3513         (WebCore::CompositeEditCommand::pushAnchorElementDown):
3514         (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
3515         (WebCore::CompositeEditCommand::moveParagraphs):
3516         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3517         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
3518         * editing/CompositeEditCommand.h:
3519         * editing/CreateLinkCommand.cpp:
3520         (WebCore::CreateLinkCommand::doApply):
3521         * editing/DeleteButtonController.cpp:
3522         (WebCore::enclosingDeletableElement):
3523         (WebCore::DeleteButtonController::respondToChangedSelection):
3524         * editing/DeleteButtonController.h:
3525         * editing/DeleteSelectionCommand.cpp:
3526         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
3527         (WebCore::DeleteSelectionCommand::clearTransientState):
3528         (WebCore::DeleteSelectionCommand::doApply):
3529         * editing/DeleteSelectionCommand.h:
3530         (WebCore::DeleteSelectionCommand::create):
3531         * editing/EditCommand.cpp:
3532         (WebCore::EditCommand::setStartingSelection):
3533         (WebCore::EditCommand::setEndingSelection):
3534         * editing/EditCommand.h:
3535         (WebCore::EditCommand::startingSelection):
3536         (WebCore::EditCommand::endingSelection):
3537         * editing/Editor.cpp:
3538         (WebCore::Editor::selectionForCommand):
3539         (WebCore::Editor::respondToChangedSelection):
3540         (WebCore::Editor::respondToChangedContents):
3541         (WebCore::Editor::applyStyle):
3542         (WebCore::Editor::applyParagraphStyle):
3543         (WebCore::Editor::appliedEditing):
3544         (WebCore::Editor::unappliedEditing):
3545         (WebCore::Editor::reappliedEditing):
3546         (WebCore::Editor::insertTextWithoutSendingTextEvent):
3547         (WebCore::Editor::selectComposition):
3548         (WebCore::Editor::confirmComposition):
3549         (WebCore::Editor::advanceToNextMisspelling):
3550         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3551         (WebCore::markMisspellingsOrBadGrammar):
3552         (WebCore::Editor::markMisspellings):
3553         (WebCore::Editor::markBadGrammar):
3554         (WebCore::Editor::rangeForPoint):
3555         (WebCore::Editor::transpose):
3556         * editing/Editor.h:
3557         * editing/EditorCommand.cpp:
3558         (WebCore::expandSelectionToGranularity):
3559         (WebCore::executeSwapWithMark):
3560         (WebCore::enabledVisibleSelection):
3561         (WebCore::enabledVisibleSelectionAndMark):
3562         (WebCore::enableCaretInEditableText):
3563         * editing/FormatBlockCommand.cpp:
3564         (WebCore::FormatBlockCommand::modifyRange):
3565         (WebCore::FormatBlockCommand::doApply):
3566         * editing/IndentOutdentCommand.cpp:
3567         (WebCore::IndentOutdentCommand::indentRegion):
3568         (WebCore::IndentOutdentCommand::outdentRegion):
3569         (WebCore::IndentOutdentCommand::doApply):
3570         * editing/InsertLineBreakCommand.cpp:
3571         (WebCore::InsertLineBreakCommand::doApply):
3572         * editing/InsertListCommand.cpp:
3573         (WebCore::InsertListCommand::modifyRange):
3574         (WebCore::InsertListCommand::doApply):
3575         * editing/InsertParagraphSeparatorCommand.cpp:
3576         (WebCore::InsertParagraphSeparatorCommand::doApply):
3577         * editing/InsertTextCommand.cpp:
3578         (WebCore::InsertTextCommand::performTrivialReplace):
3579         (WebCore::InsertTextCommand::input):
3580         * editing/ModifySelectionListLevel.cpp:
3581         (WebCore::getStartEndListChildren):
3582         (WebCore::canIncreaseListLevel):
3583         (WebCore::canDecreaseListLevel):
3584         * editing/MoveSelectionCommand.cpp:
3585         (WebCore::MoveSelectionCommand::doApply):
3586         * editing/RemoveFormatCommand.cpp:
3587         * editing/ReplaceSelectionCommand.cpp:
3588         (WebCore::ReplacementFragment: