WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2009-05-07  Darin Adler  <darin@apple.com>
2
3         Reviewed by Simon Fraser.
4
5         Bug 25575: Registered mutation event listener crashes HTMLMediaElement
6         https://bugs.webkit.org/show_bug.cgi?id=25575
7
8         Test: fast/media/video-controls-with-mutation-event-handler.html
9
10         * rendering/MediaControlElements.cpp:
11         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Don't call setAttribute.
12         * rendering/RenderMedia.cpp:
13         (WebCore::RenderMedia::createTimeline): Call setAttribute here.
14
15 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
16
17         Rubber Stamped by Dave Hyatt
18         
19         Shuffle the data members to minimize padding.
20
21         * rendering/RenderTableSection.cpp:
22         (WebCore::RenderTableSection::RenderTableSection):
23         * rendering/RenderTableSection.h:
24
25 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
26
27         Rubber Stamped by Dave Hyatt
28         
29         Shuffle the data members to make Events 8 bytes smaller in 64-bit.
30
31         * dom/Event.cpp:
32         (WebCore::Event::Event):
33         * dom/Event.h:
34
35 2009-05-07  Eric Seidel  <eric@webkit.org>
36
37         Reviewed by Beth Dakin.
38
39         Fix regression caused by r41469, add test case to prevent it from 
40         happening again.
41         https://bugs.webkit.org/show_bug.cgi?id=25252
42   
43         hasLayer() was true during removeOnlyThisLayer()/
44         updateLayerPositions()
45         which caused updateLayerPosition()'s walk up the render tree to 
46         include offsets from the layer we were about to remove.
47   
48         I'm not 100% convinced that this wasn't a bug in 
49         updateLayerPosition() or in RenderBoxModelObject::styleDidChange, 
50         because the layer in question is not the containing block for the 
51         block which gets laid out wrong. But this restores the previous 
52         behavior and adds a test.  So the next time someone is in here re-
53         factoring, they will at least know if they break something.
54   
55         Test: fast/layers/remove-only-this-layer-update.html
56
57         * rendering/RenderBoxModelObject.cpp:
58         (WebCore::RenderBoxModelObject::destroyLayer):
59         * rendering/RenderLayer.cpp:
60         (WebCore::RenderLayer::removeOnlyThisLayer):
61         * rendering/RenderObject.cpp:
62         (WebCore::RenderObject::destroy):
63         * rendering/RenderWidget.cpp:
64         (WebCore::RenderWidget::destroy):
65
66 2009-05-07  Dmitry Titov  <dimich@chromium.org>
67
68         Attempt to fix GTK build.
69
70         * platform/graphics/GlyphPageTreeNode.h: add #include <string.h> to ensure memcpy and memset are defined.
71
72 2009-05-07  Oliver Hunt  <oliver@apple.com>
73
74         Reviewed by Gavin Barraclough.
75
76         Improve native call performance
77
78         Add calling convention declarations where necessary, and update bindings
79         script to generate them as well.
80
81         * bindings/js/JSHTMLCollectionCustom.cpp:
82         (WebCore::callHTMLCollection):
83         * bindings/js/JSNodeListCustom.cpp:
84         (WebCore::callNodeList):
85         * bindings/js/JSPluginElementFunctions.cpp:
86         (WebCore::callPlugin):
87         * bindings/js/JSQuarantinedObjectWrapper.h:
88         * bindings/scripts/CodeGeneratorJS.pm:
89         * bridge/runtime_method.cpp:
90         (JSC::callRuntimeMethod):
91         * bridge/runtime_object.cpp:
92         (JSC::callRuntimeObject):
93
94 2009-05-07  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
95
96         Reviewed by Dave Hyatt.
97
98         Fixes: https://bugs.webkit.org/show_bug.cgi?id=25617
99
100         Fix memory/performance regression because of too much form control related abstraction just for WMLs sake.
101
102         Remove FormControlElement and FormControlElementWithState base classes, as the overhead is too high for the
103         gain. HTML has no benefit of that kind of abstraction, so we're going to move the functionality to Element directly.
104
105         The functions now living in FormControlElement(WithState) lived in Node/Element/HTMLFormControlElement before.
106         This patches moves all of them in a central place in Element.h, as virtual functions with an inline default implementation.
107         To avoid confusion like isEnabled() living on Node, before the creation of the FormControlElement abstraction layer, all
108         methods are renamed to clarify where they belong to. All renames are listed here:
109
110         From FormControlElement:
111         - isEnabled() -> isEnabledFormControl()
112         - isReadOnly() -> isReadOnlyFormControl()
113         - isTextControl() -> isTextFormControl()
114         - valueMatchesRenderer() -> formControlValueMatchesRenderer()
115         - setValueMatchesRenderer() -> setFormControlValueMatchesRenderer()
116         - name() -> formControlName()
117         - type() -> formControlType()
118
119         From FormControlElementWithState:
120         - saveState() -> saveFormControlState()
121         - restoreState() -> restoreFormControlState()
122
123         A lot of Element -> FormControlElement(WithState) casting is gone again, so it's not only a memory, but also a performance progression.
124
125         No testcases affected, no new tests needed.
126
127         * GNUmakefile.am:
128         * WebCore.pro:
129         * WebCore.vcproj/WebCore.vcproj:
130         * WebCore.xcodeproj/project.pbxproj:
131         * WebCoreSources.bkl:
132         * css/CSSStyleSelector.cpp:
133         (WebCore::CSSStyleSelector::canShareStyleWithElement):
134         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
135         * dom/Document.cpp:
136         (WebCore::Document::formElementsState):
137         * dom/Document.h:
138         (WebCore::Document::registerFormElementWithState):
139         (WebCore::Document::unregisterFormElementWithState):
140         * dom/Element.h:
141         (WebCore::Element::isFormControlElement):
142         (WebCore::Element::isEnabledFormControl):
143         (WebCore::Element::isReadOnlyFormControl):
144         (WebCore::Element::isTextFormControl):
145         (WebCore::Element::formControlValueMatchesRenderer):
146         (WebCore::Element::setFormControlValueMatchesRenderer):
147         (WebCore::Element::formControlName):
148         (WebCore::Element::formControlType):
149         (WebCore::Element::saveFormControlState):
150         (WebCore::Element::restoreFormControlState):
151         * dom/FormControlElement.cpp: Removed.
152         * dom/FormControlElement.h: Removed.
153         * dom/FormControlElementWithState.cpp: Removed.
154         * dom/FormControlElementWithState.h: Removed.
155         * dom/InputElement.cpp:
156         (WebCore::InputElement::setValueFromRenderer):
157         * html/HTMLButtonElement.cpp:
158         (WebCore::HTMLButtonElement::formControlType):
159         * html/HTMLButtonElement.h:
160         * html/HTMLFieldSetElement.cpp:
161         (WebCore::HTMLFieldSetElement::formControlType):
162         * html/HTMLFieldSetElement.h:
163         * html/HTMLFormControlElement.cpp:
164         (WebCore::HTMLFormControlElement::attach):
165         (WebCore::HTMLFormControlElement::formControlName):
166         (WebCore::HTMLFormControlElement::willValidate):
167         (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
168         (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
169         (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument):
170         (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument):
171         (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
172         * html/HTMLFormControlElement.h:
173         (WebCore::HTMLFormControlElement::isTextFormControl):
174         (WebCore::HTMLFormControlElement::isEnabledFormControl):
175         (WebCore::HTMLFormControlElement::formControlValueMatchesRenderer):
176         (WebCore::HTMLFormControlElement::setFormControlValueMatchesRenderer):
177         (WebCore::HTMLFormControlElement::isReadOnlyFormControl):
178         (WebCore::HTMLFormControlElement::type):
179         (WebCore::HTMLFormControlElement::name):
180         * html/HTMLInputElement.cpp:
181         (WebCore::HTMLInputElement::formControlName):
182         (WebCore::HTMLInputElement::formControlType):
183         (WebCore::HTMLInputElement::saveFormControlState):
184         (WebCore::HTMLInputElement::restoreFormControlState):
185         (WebCore::HTMLInputElement::parseMappedAttribute):
186         (WebCore::HTMLInputElement::detach):
187         (WebCore::HTMLInputElement::setValue):
188         (WebCore::HTMLInputElement::setFileListFromRenderer):
189         * html/HTMLInputElement.h:
190         (WebCore::HTMLInputElement::readOnly):
191         (WebCore::HTMLInputElement::isTextFormControl):
192         * html/HTMLKeygenElement.cpp:
193         (WebCore::HTMLKeygenElement::formControlType):
194         * html/HTMLKeygenElement.h:
195         * html/HTMLLegendElement.cpp:
196         (WebCore::HTMLLegendElement::formControlType):
197         * html/HTMLLegendElement.h:
198         * html/HTMLOptGroupElement.cpp:
199         (WebCore::HTMLOptGroupElement::formControlType):
200         * html/HTMLOptGroupElement.h:
201         * html/HTMLOptionElement.cpp:
202         (WebCore::HTMLOptionElement::formControlType):
203         * html/HTMLOptionElement.h:
204         * html/HTMLSelectElement.cpp:
205         (WebCore::HTMLSelectElement::formControlType):
206         (WebCore::HTMLSelectElement::saveFormControlState):
207         (WebCore::HTMLSelectElement::restoreFormControlState):
208         * html/HTMLSelectElement.h:
209         * html/HTMLTextAreaElement.cpp:
210         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
211         (WebCore::HTMLTextAreaElement::formControlType):
212         (WebCore::HTMLTextAreaElement::saveFormControlState):
213         (WebCore::HTMLTextAreaElement::restoreFormControlState):
214         (WebCore::HTMLTextAreaElement::updateValue):
215         (WebCore::HTMLTextAreaElement::setValue):
216         * html/HTMLTextAreaElement.h:
217         (WebCore::HTMLTextAreaElement::readOnly):
218         (WebCore::HTMLTextAreaElement::isTextFormControl):
219         * page/AccessibilityRenderObject.cpp:
220         (WebCore::AccessibilityRenderObject::isEnabled):
221         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
222         * page/DragController.cpp:
223         (WebCore::DragController::concludeEditDrag):
224         * rendering/RenderMenuList.cpp:
225         (WebCore::RenderMenuList::itemIsEnabled):
226         * rendering/RenderTextControl.cpp:
227         (WebCore::updateUserModifyProperty):
228         (WebCore::RenderTextControl::setInnerTextValue):
229         * rendering/RenderTextControl.h:
230         * rendering/RenderTextControlMultiLine.cpp:
231         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
232         * rendering/RenderTextControlSingleLine.cpp:
233         (WebCore::RenderTextControlSingleLine::updateFromElement):
234         * rendering/RenderTheme.cpp:
235         (WebCore::RenderTheme::isEnabled):
236         (WebCore::RenderTheme::isReadOnlyControl):
237         * rendering/RenderThemeChromiumMac.mm:
238         (WebCore::RenderThemeChromiumMac::adjustMenuListStyle):
239         * rendering/RenderThemeMac.mm:
240         (WebCore::RenderThemeMac::adjustMenuListStyle):
241         * rendering/RenderThemeSafari.cpp:
242         (WebCore::RenderThemeSafari::adjustMenuListStyle):
243         * wml/WMLFormControlElement.cpp:
244         * wml/WMLFormControlElement.h:
245         (WebCore::WMLFormControlElement::isReadOnlyFormControl):
246         (WebCore::WMLFormControlElement::isTextFormControl):
247         (WebCore::WMLFormControlElement::formControlValueMatchesRenderer):
248         (WebCore::WMLFormControlElement::setFormControlValueMatchesRenderer):
249         * wml/WMLInputElement.cpp:
250         (WebCore::WMLInputElement::WMLInputElement):
251         (WebCore::WMLInputElement::isKeyboardFocusable):
252         (WebCore::WMLInputElement::isMouseFocusable):
253         (WebCore::WMLInputElement::dispatchBlurEvent):
254         (WebCore::WMLInputElement::formControlType):
255         (WebCore::WMLInputElement::formControlName):
256         (WebCore::WMLInputElement::setValue):
257         (WebCore::WMLInputElement::saveFormControlState):
258         (WebCore::WMLInputElement::restoreFormControlState):
259         (WebCore::WMLInputElement::parseMappedAttribute):
260         (WebCore::WMLInputElement::detach):
261         (WebCore::WMLInputElement::appendFormData):
262         (WebCore::WMLInputElement::init):
263         * wml/WMLInputElement.h:
264         (WebCore::WMLInputElement::isTextFormControl):
265         * wml/WMLOptGroupElement.cpp:
266         (WebCore::WMLOptGroupElement::formControlType):
267         * wml/WMLOptGroupElement.h:
268         * wml/WMLOptionElement.cpp:
269         (WebCore::WMLOptionElement::formControlType):
270         * wml/WMLOptionElement.h:
271
272 2009-05-07  Dmitry Titov  <dimich@chromium.org>
273
274         Reviewed by Alexey Proskuryakov and Adam Roben.
275
276         https://bugs.webkit.org/show_bug.cgi?id=25348
277         Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.
278
279         Most of the change is in WTF.
280         Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
281         method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
282         is now a class rather then an integer.
283         Also, there is no need to initialize threadID in constructors to 0 now.
284
285         * dom/XMLTokenizerLibxml2.cpp:
286         (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
287         since now ThreadIdentifier needs construction and we avoid having global initializers.
288         (WebCore::matchFunc): use the new accessor function.
289         (WebCore::openFunc): ditto.
290         (WebCore::createStringParser): ditto.
291         (WebCore::createMemoryParser): ditto.
292         * loader/icon/IconDatabase.cpp:
293         (WebCore::IconDatabase::open):
294         * platform/sql/SQLiteDatabase.cpp:
295         (WebCore::SQLiteDatabase::SQLiteDatabase):
296         (WebCore::SQLiteDatabase::close):
297         * storage/DatabaseThread.cpp:
298         (WebCore::DatabaseThread::start):
299         (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
300         * storage/LocalStorageThread.cpp:
301         (WebCore::LocalStorageThread::start):
302         (WebCore::LocalStorageThread::scheduleImport):
303         (WebCore::LocalStorageThread::scheduleSync):
304         (WebCore::LocalStorageThread::terminate):
305         * workers/WorkerThread.cpp:
306         (WebCore::WorkerThread::start):
307         (WebCore::WorkerThread::WorkerThread):
308         (WebCore::WorkerThread::start):
309
310 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
311
312         Rubber Stamped by Dave Hyatt
313         
314         Shuffle the data members to minimize padding.
315
316         * dom/ClassNames.h:
317
318 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
319
320         Reviewed by Darin Adler
321
322         <rdar://problem/6864062> Shrink GlyphPage from 4112 to 2576 bytes in 64-bit
323         https://bugs.webkit.org/show_bug.cgi?id=25605
324
325         Shrink GlyphPage by splitting the array of GlyphData, which has lots
326         of padding, into separate Glyph and SimpleFontData* arrays.
327
328         * platform/graphics/Font.h:
329         glyphDataForCharacter has to return a GlyphData by value now.
330         
331         * platform/graphics/FontFastPath.cpp:
332         (WebCore::Font::glyphDataForCharacter):
333         Return GlyphData by value.
334         
335         * platform/graphics/GlyphPageTreeNode.cpp:
336         (WebCore::GlyphPageTreeNode::initializePage):
337         Better encapsulation of GlyphPage, using the new methods.
338
339         * platform/graphics/Font.h:
340         * platform/graphics/FontFastPath.cpp:
341         (WebCore::Font::glyphDataForCharacter):
342         * platform/graphics/GlyphPageTreeNode.cpp:
343         (WebCore::GlyphPageTreeNode::initializePage):
344         * platform/graphics/GlyphPageTreeNode.h:
345         (WebCore::GlyphData::GlyphData):
346         (WebCore::GlyphPage::indexForCharacter):
347         (WebCore::GlyphPage::glyphDataForCharacter):
348         (WebCore::GlyphPage::glyphDataForIndex):
349         (WebCore::GlyphPage::glyphAt):
350         (WebCore::GlyphPage::fontDataForCharacter):
351         (WebCore::GlyphPage::setGlyphDataForCharacter):
352         (WebCore::GlyphPage::setGlyphDataForIndex):
353         (WebCore::GlyphPage::copyFrom):
354         (WebCore::GlyphPage::clear):
355
356 2009-05-07  Dimitri Glazkov  <dglazkov@chromium.org>
357
358         Reviewed by Darin Fisher.
359
360         https://bugs.webkit.org/show_bug.cgi?id=25625
361         Implement Image/Option constructors in V8 bindings.
362
363         * bindings/v8/custom/V8DOMWindowCustom.cpp:
364         (WebCore::NAMED_PROPERTY_GETTER): Removed old JS-based code.
365         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Added.
366         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Added.
367
368 2009-05-07  Brady Eidson  <beidson@apple.com>
369
370         I hate myself for doing this, but need to fix that ChangeLog entry.
371
372         * ChangeLog:
373
374 2009-05-07  Brady Eidson  <beidson@apple.com>
375
376         Rubberstamped by Darin Adler
377
378         * html/HTMLParser.cpp: Use the correct style of BUILDING_ON_* for WebCore.
379         * html/HTMLParser.h: Ditto
380
381 2009-05-07  David Hyatt  <hyatt@apple.com>
382
383         Restore intrinsic margins to all form controls on Mac and Windows.  Some of this regressed in 43007
384         when textareas were given explicit margins.  Some of it had already regressed earlier whenever intrinsic
385         margins were turned off in themeWin.css.
386
387         Reviewed by Beth Dakin.
388
389         * css/html4.css:
390         * css/themeWin.css:
391
392 2009-05-07  Brady Eidson  <beidson@apple.com>
393
394         Reviewed by Darin Adler and Alexey Proskuryakov.
395
396         <rdar://problem/6863795> Exception occurs in Mail when attempting to create signatures due to <head> element creation
397
398         * dom/Document.cpp:
399         (WebCore::Document::implicitClose): Check shouldCreateImplicitHead() before creating it.
400
401         * html/HTMLParser.cpp:
402         (WebCore::HTMLParser::handleError): Check shouldCreateImplicitHead() before creating it.
403         (WebCore::HTMLParser::bodyCreateErrorCheck): Ditto.
404         (WebCore::shouldCreateImplicitHead): For Tiger/Leopard when running under Mail, the implicit <head> shouldn't be created.
405         * html/HTMLParser.h:
406         (WebCore::shouldCreateImplicitHead): Inline implementation for non-Tiger/Leopard platforms
407
408 2009-05-07  Antony Sargent  <asargent@chromium.org>
409
410         Reviewed by Darin Fisher.
411
412         Fix a memory leak in V8EventListenerList::remove.
413
414         https://bugs.webkit.org/show_bug.cgi?id=25618
415
416         No new functionality so no new tests. 
417
418         * bindings/v8/V8EventListenerList.cpp:
419         (WebCore::V8EventListenerList::remove):
420
421 2009-05-07  Darin Fisher  <darin@chromium.org>
422
423         Fix Chromium build bustage.
424
425         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Add missing
426         HTMLCollection.h include.
427
428 2009-05-07  Chris Fleizach  <cfleizach@apple.com>
429
430         Reviewed by Beth Dakin.
431
432         Bug 25598: AX: if a radio button has a label and a title, the label is not exposed
433         https://bugs.webkit.org/show_bug.cgi?id=25598
434
435         Test: accessibility/radio-button-title-label.html
436
437         * page/AccessibilityObject.h:
438         (WebCore::AccessibilityObject::exposesTitleUIElement):
439         * page/AccessibilityRenderObject.cpp:
440         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
441         (WebCore::AccessibilityRenderObject::titleUIElement):
442         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
443         * page/AccessibilityRenderObject.h:
444
445 2009-05-07  Darin Fisher  <darin@chromium.org>
446
447         Fix Chromium build bustage.
448
449         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
450         (WebCore::INDEXED_PROPERTY_GETTER): ":" should be "::"
451
452 2009-05-07  Xan Lopez  <xlopez@igalia.com>
453
454         Reviewed by Gustavo Noronha.
455
456         https://bugs.webkit.org/show_bug.cgi?id=25610
457         [GTK] text.caretOffset is reportedly always 0
458
459         Use the right function to get the caret offset in an
460         element. selectionStart() would only work for text
461         controls (there's even an ASSERT when calculating the selected
462         text range). Instead just get the selection and get the offset of
463         the start position.
464
465         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
466
467 2009-05-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
468
469         Reviewed by Simon Hausmann.
470
471         [Qt] Fix support for antialiased CSS border-radius
472         
473         WebKit implements border-radius by drawing a double-size border,
474         and then letting the clip constrain the border to the right width
475         and position. This requires support for antialiased clipping, as
476         well as painting, to get a nice smooth border.
477         
478         Qt only does antialiased clipping if the anti-alias flag is set
479         at the time of clipping, so we have to enable this in the method
480         addInnerRoundedRectClip(), as well as when we draw the border.
481         
482         Currently the raster-engine is the only Qt paint engine to support
483         anti-aliased clipping, but the OpenGL and Mac paint engines could
484         potentially support this in the future.
485
486         * platform/graphics/qt/GraphicsContextQt.cpp:
487         (WebCore::GraphicsContext::strokeArc):
488         (WebCore::GraphicsContext::addInnerRoundedRectClip):
489
490 2009-05-07  Adam Langley  <agl@google.com>
491
492         Reviewed by Eric Seidel.
493
494         Render empty optgroup elements.
495
496         https://bugs.webkit.org/show_bug.cgi?id=24900
497
498         Currently, optgroup elements which are empty are not rendered. The
499         HTML specification gives no guidance on this situation.
500
501         However, the test for being empty is that they have no children, thus
502         this will not render:
503           <optgroup label="test"></optgroup>
504         while this /will/ render (because of the text node child):
505           <optgroup label="test"> </optgroup>
506
507         This patch will cause both cases to render which matches IE's and
508         Firefox's behaviour.
509
510         The difference only appears when opening the select element and does
511         not appear in the render tree. Thus, a manual layout-test is required.
512
513         * html/HTMLSelectElement.cpp:
514         (WebCore::HTMLSelectElement::recalcListItems):
515         * manual-tests/optgroup-empty-and-nested.html: Added.
516
517 2009-05-06  Julie Parent  <jparent@google.com>
518
519         Reviewed by Eric Seidel.
520
521         Bug 25608: Unused m_frame in ChromiumClipboard.
522         https://bugs.webkit.org/show_bug.cgi?id=25608
523
524         * platform/chromium/ClipboardChromium.h:
525         
526         No tests added as this is only removing dead code, no functional changes.
527
528 2009-05-06  Dan Bernstein  <mitz@apple.com>
529
530         Reviewed by Simon Fraser and Justin Garcia.
531
532         - fix another part of <rdar://problem/6703873> Triple-click quoted line
533           and type Return creates an extra quoted blank line
534
535         Test: editing/inserting/6703873-2.html
536
537         * editing/BreakBlockquoteCommand.cpp:
538         (WebCore::BreakBlockquoteCommand::doApply): Corrected the logic for
539         determining the first node that should go into the new blockquote
540         given the split position: if it is at the end of a container, use the
541         next node after the container. Otherwise, use the child at the
542         position's offset.
543
544 2009-05-06  Kevin Ollivier  <kevino@theolliviers.com>
545
546         wx build fix, fixes for wx trunk builds.
547
548         * platform/graphics/wx/ImageWx.cpp:
549         (WebCore::BitmapImage::draw):
550         * platform/wx/RenderThemeWx.cpp:
551         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
552         (wxFontProperties::wxFontProperties):
553
554 2009-05-06  Albert J. Wong  <ajwong@chromium.org>
555
556         Reviewed by Darin Fisher.
557
558         https://bugs.webkit.org/show_bug.cgi?id=25597
559         Fix API drift compile errors that occurred while this was ifdef-ed out.
560         The two big issues were that RenderObject::element() became
561         RenderObject::node() and some of the wk* drawing functions had
562         an extra theme parameter added to the argument list.
563
564         * rendering/RenderThemeChromiumMac.mm:
565         (WebCore::RenderThemeChromiumMac::paintMediaFullscreenButton):
566         (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
567         (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
568         (WebCore::RenderThemeChromiumMac::paintMediaSeekBackButton):
569         (WebCore::RenderThemeChromiumMac::paintMediaSeekForwardButton):
570         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
571         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
572
573 2009-05-06  Jian Li  <jianli@chromium.org>
574
575         Reviewed by Dimitri Glazkov.
576
577         https://bugs.webkit.org/show_bug.cgi?id=25385
578         Upstream changes to V8 bindings for supporting nested workers.
579
580         * bindings/v8/WorkerContextExecutionProxy.cpp:
581         (WebCore::WorkerContextExecutionProxy::ToV8Object):
582         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
583         * bindings/v8/custom/V8WorkerCustom.cpp:
584         (WebCore::getEventListener):
585         (WebCore::ACCESSOR_SETTER WorkerOnmessage):
586         (WebCore::CALLBACK_FUNC_DECL WorkerAddEventListener):
587
588 2009-05-06  Dave Moore  <davemoore@google.com>
589
590         Reviewed by Dimitri Glazkov.
591
592         https://bugs.webkit.org/show_bug.cgi?id=25513
593         The V8 bindings convert every javascript property to its associated css style
594         name. It then calls functions that convert that name to an id. This makes
595         getting or setting css styles on elements slow.
596         
597         The patch fixes this by caching the results of the transformation, mapping a
598         javascript property name to its css property id. It then calls the already
599         public webkit methods that take the id in place of the string property names.
600
601         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
602
603 2009-05-06  Nate Chapin  <japhet@google.com>
604
605         Reviewed by Dimitri Glazkov.
606
607         https://bugs.webkit.org/show_bug.cgi?id=25591
608         Upstream V8HTMLFormElement from the Chromium repository.
609
610         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
611         (WebCore::INDEXED_PROPERTY_GETTER HTMLFormElement): Upstreamed from Chromium repository
612         (WebCore::NAMED_PROPERTY_GETTER HTMLFormElement): Changed empty element return case to return notHandledByInterceptor();
613         (WebCore::CALLBACK_FUNC_DECL HTMLFormElementSubmit): Upstreamed from Chromium repository
614
615 2009-05-06  Albert J. Wong  <ajwong@chromium.org>
616
617         Reviewed by Dimitri Glazkov.
618
619         https://bugs.webkit.org/show_bug.cgi?id=25595
620         Upstream V8CanvasPixelArrayCustom from chromium port tree.
621
622         * bindings/v8/V8CanvasPixelArrayCustom.cpp: Added.
623
624 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
625
626         Rubber-stampted by Eric Seidel
627
628         Add braces to clarify logic flow in RenderObject::adjustStyleDifference.
629         Only affects ACCELERATED_COMPOSITING builds.
630
631         * rendering/RenderObject.cpp:
632         (WebCore::RenderObject::adjustStyleDifference):
633
634 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
635
636         Reviewed by Dan Bernstein
637
638         <rdar://problem/6862550> Reduce size of RenderText in 64-bit
639         
640         Rearrange data members of RenderText so that an int comes
641         first, to minimize padding.
642
643         * rendering/RenderText.cpp:
644         (WebCore::RenderText::RenderText):
645         * rendering/RenderText.h:
646
647 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
648
649         Reviewed by Dan Bernstein
650
651         <rdar://problem/6862823> Reduce size of RenderStyle in 64-bit
652         
653         Rearrange data members of RenderStyle to minimize padding
654         when building for 64-bit.
655
656         * rendering/style/RenderStyle.cpp:
657         (WebCore::RenderStyle::RenderStyle):
658         * rendering/style/RenderStyle.h:
659         (WebCore::):
660
661 2009-05-06  Darin Fisher  <darin@chromium.org>
662
663         Reviewed by Dimitri Glazkov.
664
665         https://bugs.webkit.org/show_bug.cgi?id=25596
666
667         Fixes Chromium build bustage caused by r43317 (making
668         RefCountedBase::m_refCount private)
669
670         * page/chromium/AccessibilityObjectWrapper.h:
671         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
672
673 2009-05-06  Hin-Chung Lam  <hclam@chromium.org>
674
675         Reviewed by Darin Fisher.
676
677         https://bugs.webkit.org/show_bug.cgi?id=25593
678
679         Refactor for MediaPlayerPrivate for Chromium port. Remove
680         the implementation of MediaPlayerPrivateInferface from it.
681
682         * platform\graphics\chromium\MediaPlayerPrivateChromium.h:
683
684 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
685
686         Reviewed by Dave Hyatt, Dan Bernstein
687         
688         <rdar://problem/6860197> Reduce the size of FontFallbackList in 64-bit
689
690         Re-order the data members of FontFallbackList to save 8 bytes when building 64-bit.
691
692         * platform/graphics/FontFallbackList.cpp:
693         (WebCore::FontFallbackList::FontFallbackList):
694         * platform/graphics/FontFallbackList.h:
695
696 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
697
698         Reviewed by Darin Adler, Dan Bernstein
699
700         <rdar://problem/6860068> Reduce size of InlineBox in 64-bit
701
702         Re-order the data members of InlineBox to save 8 bytes when building 64-bit.
703
704         * rendering/InlineBox.h:
705         (WebCore::InlineBox::InlineBox):
706
707 2009-05-06  David Levin  <levin@chromium.org>
708
709         Reviewed by Dimitri Glazkov.
710
711         https://bugs.webkit.org/show_bug.cgi?id=25588
712         Adding the custom v8 bindings Document.location.
713
714         * bindings/v8/custom/V8DocumentLocationCustom.cpp: Added.
715
716 2009-05-06  Kevin McCullough  <kmccullough@apple.com>
717
718         -Clarified a comment
719
720         * editing/InsertParagraphSeparatorCommand.cpp:
721         (WebCore::InsertParagraphSeparatorCommand::doApply):
722
723 2009-05-06  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
724
725         Not reviewed. Fix WML enabled builds by including "MappedAttribute.h" in several places.
726
727         * wml/WMLAElement.cpp:
728         * wml/WMLAccessElement.cpp:
729         * wml/WMLBRElement.cpp:
730         * wml/WMLCardElement.cpp:
731         * wml/WMLDoElement.cpp:
732         * wml/WMLElement.cpp:
733         * wml/WMLFieldSetElement.cpp:
734         * wml/WMLGoElement.cpp:
735         * wml/WMLImageElement.cpp:
736         * wml/WMLInputElement.cpp:
737         * wml/WMLMetaElement.cpp:
738         * wml/WMLOnEventElement.cpp:
739         * wml/WMLOptGroupElement.cpp:
740         * wml/WMLOptionElement.cpp:
741         * wml/WMLPElement.cpp:
742         * wml/WMLPostfieldElement.cpp:
743         * wml/WMLSetvarElement.cpp:
744         * wml/WMLTableElement.cpp:
745         * wml/WMLTemplateElement.cpp:
746         * wml/WMLTimerElement.cpp:
747
748 2009-05-06  Xan Lopez  <xlopez@igalia.com>
749
750         Reviewed by Gustavo Noronha.
751
752         https://bugs.webkit.org/show_bug.cgi?id=25526
753         [Gtk] Additional support is needed for caret browsing
754
755         Emit AtkText::text-selection-changed when the selection changes
756         and the current selection is of Range (ie, the start and end
757         positions are different) type. This seems to match what Gecko
758         does.
759
760         * editing/gtk/SelectionControllerGtk.cpp:
761         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
762
763 2009-05-05  Xan Lopez  <xlopez@igalia.com>
764
765         Reviewed by Gustavo Noronha.
766
767         https://bugs.webkit.org/show_bug.cgi?id=25526
768         [Gtk] Additional support is needed for caret browsing
769
770         Emit AtkText::text-caret-moved when selection changes.
771
772         * GNUmakefile.am:
773         * editing/SelectionController.h:
774         * editing/gtk/SelectionController.cpp: Added.
775         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
776
777 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
778
779         Reviewed by Gustavo Noronha.
780
781         Use mozilla cursors for the previously not implemented
782         cursors. The manual-tests/cursor.html is looking complete
783         now.
784
785         * platform/gtk/CursorGtk.cpp:
786         (WebCore::cellCursor):
787         (WebCore::noDropCursor):
788         (WebCore::progressCursor):
789         (WebCore::noneCursor):
790         (WebCore::notAllowedCursor):
791         (WebCore::grabCursor):
792         (WebCore::grabbingCursor):
793         * platform/gtk/CursorGtk.h:
794
795 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
796
797         Reviewed by Xan Lopez.
798
799         Properly indent the header file.
800
801         * platform/gtk/CursorGtk.h:
802
803 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
804
805         Reviewed by Gustavo Noronha.
806
807         Use the mozilla copyright header. Use MPL1.1/GPL2.0
808         and LGPL2.1 as the license compared to LGPL2.0.
809
810         * platform/gtk/CursorGtk.h:
811
812 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
813
814         Reviewed by Gustavo Noronha.
815
816         Move PluginView::invalidateRegion from the
817         TemporaryLinkStubs to PluginViewGtk.cpp and implement
818         it with a call to Widget::invalidate() just like
819         mac is doing. Optimisations would have to be window
820         system specific.
821
822         * platform/gtk/TemporaryLinkStubs.cpp:
823         * plugins/gtk/PluginViewGtk.cpp:
824         (WebCore::PluginView::invalidateRegion):
825
826 2009-05-06  Jan Michael Alonzo  <jmalonzo@webkit.org>
827
828         Reviewed by Holger Freyther.
829
830         Misc fixes to InspectorClientGtk.
831
832         * GNUmakefile.am: Add localizedStrings.js to webinspector_DATA.
833         This prevents copious amounts "Localized string not found" errors
834         in the console
835
836 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
837
838         Reviewed by Ariya Hidayat.
839
840         Fix the Qt build on Windows.
841
842         * platform/graphics/GraphicsContext.h:
843         (WebCore::GraphicsContext::shouldIncludeChildWindows): Implemented dummy accessor.
844
845 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
846
847         Reviewed by Tor Arne Vestbø.
848
849         Tweak WebCore.pro for being able to override the generated sources dir for the
850         generated_files target.
851
852         * WebCore.pro:
853
854 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
855
856         Reviewed by Holger Freyther.
857
858         Fix the Qt/Windows build, use iface instead of interface to avoid conflict
859         with VS2005 headers.
860
861         * css/CSSStyleSelector.cpp:
862         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
863
864 2009-05-06  Joerg Bornemann  <joerg.bornemann@trolltech.com>
865
866         Reviewed by Simon Hausmann.
867
868         We need to include StringExtras.h on Windows CE to access the strdup function.
869
870         * plugins/PluginStream.cpp:
871
872 2009-05-06  Soren Gjesse  <sgjesse@chromium.org>
873
874         Reviewed by Eric Seidel.
875
876         Changed the toString behaviour for non document dom node event handlers in the V8 bindings.
877         https://bugs.webkit.org/show_bug.cgi?id=25544
878
879         In the V8 bindings non document dom node event handlers are wrapped in a number of with blocks and uses an inner
880         function. This causes the default toString on such a handler to return all this wrapper code. As some web sites
881         use the source of an event handler to create new functions this wrapper code causes compatibility problems.
882
883         Create a specific toString function for these handlers which will return a function source compatible with the
884         source returned by the JSC bindings and other browsers.
885
886         Test: fast/events/event-function-toString.html
887
888         * bindings/v8/ScriptEventListener.cpp:
889         (WebCore::createAttributeEventListener):
890         * bindings/v8/V8LazyEventListener.cpp:
891         (WebCore::V8LazyEventListener::V8LazyEventListener):
892         (WebCore::V8LazyEventListener::getListenerFunction):
893         (WebCore::V8LazyEventListenerToString):
894         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
895         * bindings/v8/V8LazyEventListener.h:
896         (WebCore::V8LazyEventListener::create):
897
898 2009-05-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
899
900         Reviewed by Simon Hausmann.
901
902         Build QtWebKit as a framework on Mac
903
904         This implies both debug and release build by default, unless
905         one of the --debug or --release config options are passed to
906         the build-webkit script.
907
908         Frameworks can be disabled by passing CONFIG+=webkit_no_framework
909         to the build-webkit script.
910
911         To be able to build both debug and release targets in parallel
912         we have to use separate output directories for the generated
913         sources, which is not optimal, but required to avoid race conditions.
914
915         An optimization would be to only require this spit-up on Mac.
916
917         * WebCore.pro:
918
919 2009-05-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
920
921         Reviewed by Simon Hausmann.
922
923         [Qt] Use $$GENERATED_SOURCES_DIR as output when running bison
924
925         A couple of the generators left the bison output file in the source
926         tree, and then moved it into $$GENERATED_SOURCES_DIR, which did not
927         work well when building release and debug configurations in parallel.
928
929         * WebCore.pro:
930
931 2009-05-06  Dan Bernstein  <mitz@apple.com>
932
933         Reviewed by Justin Garcia.
934
935         - fix an assertion failure in RemoveNodeCommand() when deleting a <br>
936           between a block and a mail blockquote
937
938         Test: editing/deleting/removeNodeCommand-assert.html
939
940         * editing/DeleteSelectionCommand.cpp:
941         (WebCore::DeleteSelectionCommand::mergeParagraphs): Pass the start block
942         to prune() instead of passing m_upstreamStart.node(), because the latter
943         may have been removed already.
944
945 2009-05-05  Eric Seidel  <eric@webkit.org>
946
947         No review, roll out only.
948
949         Roll out r23072 since it broke layout tests
950
951         * page/AccessibilityRenderObject.cpp:
952         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
953
954 2009-05-05  Ben Murdoch  <benm@google.com>
955
956         Reviewed by Eric Seidel.
957         
958         Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds.
959         https://bugs.webkit.org/show_bug.cgi?id=24776
960
961         No functional changes, thus no tests.
962
963         * bindings/js/JSCustomSQLStatementCallback.cpp:
964         * bindings/js/JSCustomSQLStatementCallback.h:
965         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
966         * bindings/js/JSCustomSQLStatementErrorCallback.h:
967         * bindings/js/JSCustomSQLTransactionCallback.cpp:
968         * bindings/js/JSCustomSQLTransactionCallback.h:
969         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
970         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
971         * bindings/js/JSDatabaseCustom.cpp:
972         * bindings/js/JSSQLTransactionCustom.cpp:
973         * loader/EmptyClients.h:
974         * page/ChromeClient.h:
975         * storage/ChangeVersionWrapper.cpp:
976         * storage/ChangeVersionWrapper.h:
977         * storage/Database.cpp:
978         (WebCore::Database::databaseInfoTableName):
979         * storage/Database.h:
980         * storage/Database.idl:
981         * storage/DatabaseTask.cpp:
982         * storage/DatabaseTask.h:
983         * storage/DatabaseThread.cpp:
984         * storage/DatabaseThread.h:
985         * storage/DatabaseTracker.cpp:
986         * storage/DatabaseTracker.h:
987         * storage/DatabaseTrackerClient.h:
988         * storage/OriginQuotaManager.cpp:
989         * storage/OriginQuotaManager.h:
990         * storage/SQLStatement.cpp:
991         * storage/SQLStatement.h:
992         * storage/SQLTransaction.cpp:
993         * storage/SQLTransaction.h:
994         * storage/SQLTransaction.idl:
995
996 2009-05-05  Jeremy Moskovich  <jeremy@chromium.org>
997
998         Reviewed by Eric Seidel.
999
1000         Add some documentation to InlineBox::x(),y().
1001         https://bugs.webkit.org/show_bug.cgi?id=25378
1002
1003         * rendering/InlineBox.h:
1004
1005 2009-05-05  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1006
1007         Reviewed by Eric Seidel.
1008
1009         Disable all the SVG features for WebKit/Qt if ENABLE_SVG=0 
1010         https://bugs.webkit.org/show_bug.cgi?id=24693
1011
1012         * WebCore.pro:
1013
1014 2009-05-05  Sankar Aditya Tanguturi  <sankaraditya@gmail.com>
1015
1016         Reviewed by Eric Seidel.
1017
1018         Anonymous blocks should not be exposed in accessibility tree.
1019         Part of https://bugs.webkit.org/show_bug.cgi?id=23072
1020
1021         Tests: accessibility/ignore-anonymous-block.html
1022                platform/win/accessibility/document-role.html
1023
1024         * page/AccessibilityRenderObject.cpp:
1025         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):Return
1026         true for Anonymous blocks. Matching Firefox 2.0.0.14
1027
1028 2009-05-05  Jungshik Shin  <jshin@chromium.org>
1029
1030         Reviewed by Alexey Proskuryakov.
1031
1032         http://bugs.webkit.org/show_bug.cgi?id=25487
1033
1034         For euc-kr and other 8bit Korean encodings
1035         (similar to euc-kr/windows-949), make document.charset return
1036         EUC-KR instead of windows-949. The latter is not recognized by
1037         Korean web servers.
1038
1039         Add domName method to TextEncoding to deal with cases where
1040         our internal encoding name does not match what's widely recognized
1041         by web servers. Currently, the only case is 'windows-949' (internal
1042         name) vs 'EUC-KR'.
1043
1044         Test: fast/encoding/euckr-name.html
1045
1046         * dom/Document.cpp:
1047         (WebCore::Document::encoding): Call TextEncoding.domName() instead
1048         of TextEncoding.name().
1049         * platform/text/TextEncoding.cpp:
1050         (WebCore::TextEncoding::domName): For the canonical name 'windows-949',
1051         return 'EUC-KR'. Otherwise, just return the canonical name.
1052         * platform/text/TextEncoding.h:
1053
1054 2009-05-05  Adam Langley  <agl@google.com>
1055
1056         Reviewed by Darin Adler.
1057
1058         Rendering fix for <select> elements.
1059         https://bugs.webkit.org/show_bug.cgi?id=25558
1060
1061         When switching a <select> element from display:none to default
1062         display, we would fail to invalidate the parent's pref widths in some
1063         situations:
1064
1065         When attaching the element, RenderMenuList::updateOptionsWidth would
1066         call setNeedsLayoutAndPrefWidthsRecalc before the parent pointer was
1067         set. This would mark the pref widths as dirty, but not for any parent
1068         objects.
1069
1070         When RenderObjectChildList::appendChildNode later calls
1071         setNeedsLayoutAndPrefWidthsRecalc again, with a valid parent pointer,
1072         nothing would be done because the pref widths were already dirty for.
1073         the RenderMenuList.
1074
1075         * rendering/RenderMenuList.cpp:
1076         (WebCore::RenderMenuList::updateOptionsWidth):
1077
1078 2009-05-05  Antony Sargent  <asargent@chromium.org>
1079
1080         Reviewed by Dimitri Glazkov.
1081
1082         Switch V8EventListenerList to use HashTable<T>.
1083         https://bugs.webkit.org/show_bug.cgi?id=25496
1084         
1085         This avoids some tricky issues with event listener removal in the 
1086         current implementation and has slightly better performance.
1087
1088         No new functionality so no new tests.
1089
1090         * bindings/v8/V8EventListenerList.cpp: Added V8EventListenerListIterator.
1091         * bindings/v8/V8EventListenerList.h:
1092         (WebCore::V8EventListenerList::size):
1093         * bindings/v8/WorkerContextExecutionProxy.cpp:
1094         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
1095
1096 2009-05-05  Darin Fisher  <darin@chromium.org>
1097
1098         Fixing build bustage.
1099
1100         Add some missing includes to fix the Chromium build.
1101
1102         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1103         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1104
1105 2009-05-05  Darin Fisher  <darin@chromium.org>
1106
1107         Reviewed by Darin Adler.
1108
1109         https://bugs.webkit.org/show_bug.cgi?id=25570
1110
1111         history.{back,forward,go} should always be dispatched asynchronously,
1112         even when the history navigation would just result in scrolling the
1113         page.  This matches the behavior of other browsers like IE and FF.
1114
1115         Test: fast/history/back-forward-is-asynchronous.html
1116
1117         * loader/FrameLoader.cpp:
1118         (WebCore::FrameLoader::scheduleHistoryNavigation):
1119
1120 2009-05-05  Eric Seidel  <eric@webkit.org>
1121
1122         Reviewed by Simon Fraser.
1123
1124         Add an ASSERT(useTransforms) to mapLocalToContainer implementations in SVG.
1125         https://bugs.webkit.org/show_bug.cgi?id=25532
1126         https://bugs.webkit.org/show_bug.cgi?id=25568
1127
1128         Adding this ASSERT exposed a bug in SVGPaintServerPattern::setup
1129         which was causing transformed SVG text when filled/stroked with a
1130         pattern using patternUnits=objectBoundingBox to draw incorrectly.
1131
1132         I fixed the incorrect drawing (by removing the broken code) and added
1133         two test cases to test the fix:
1134         * svg/transforms/text-with-pattern-inside-transformed-html.xhtml
1135         * svg/transforms/text-with-pattern-with-svg-transform.svg
1136
1137         * rendering/RenderSVGRoot.cpp:
1138         (WebCore::RenderSVGRoot::mapLocalToContainer):
1139         * rendering/SVGRenderSupport.cpp:
1140         (WebCore::SVGRenderBase::mapLocalToContainer):
1141         * svg/graphics/SVGPaintServerPattern.cpp:
1142         (WebCore::SVGPaintServerPattern::setup):
1143
1144 2009-05-05  Greg Bolsinga  <bolsinga@apple.com>
1145
1146         Reviewed by Sam Weinig.
1147
1148         https://bugs.webkit.org/show_bug.cgi?id=25554
1149         
1150         Support HTML5 text control input types: email, number, tel, url
1151
1152         Test: fast/html/text-field-input-types.html
1153
1154         * bindings/objc/DOMHTML.mm:
1155         (-[DOMHTMLInputElement _isTextField]): Call HTMLInputElement::isTextField directly.
1156         * html/HTMLInputElement.cpp: Use the new types where appropriate.
1157         (WebCore::HTMLInputElement::setInputType):
1158         (WebCore::HTMLInputElement::type):
1159         (WebCore::HTMLInputElement::saveState):
1160         (WebCore::HTMLInputElement::restoreState):
1161         (WebCore::HTMLInputElement::accessKeyAction):
1162         (WebCore::HTMLInputElement::rendererIsNeeded):
1163         (WebCore::HTMLInputElement::createRenderer):
1164         (WebCore::HTMLInputElement::appendFormData):
1165         (WebCore::HTMLInputElement::valueWithDefault):
1166         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
1167         (WebCore::HTMLInputElement::defaultEventHandler):
1168         * html/HTMLInputElement.h: Ditto.
1169         (WebCore::HTMLInputElement::):
1170         (WebCore::HTMLInputElement::isTextField):
1171
1172 2009-04-01  miggilin  <mr.diggilin@gmail.com>
1173
1174         Reviewed by Kevin Ollivier.
1175
1176         Mouse wheel scrolling and keyboard shortcut support for wx.
1177         
1178         https://bugs.webkit.org/show_bug.cgi?id=24797
1179
1180         * platform/ScrollView.cpp:
1181         (WebCore::ScrollView::wheelEvent):
1182         * platform/wx/KeyboardEventWx.cpp:
1183         (WebCore::windowsKeyCodeForKeyEvent):
1184         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1185         * platform/wx/ScrollViewWx.cpp:
1186         (WebCore::ScrollView::platformSetScrollPosition):
1187
1188 2009-05-05  Kevin Ollivier  <kevino@theolliviers.com>
1189
1190         wx build fix for Windows, add missing include.
1191         
1192         https://bugs.webkit.org/show_bug.cgi?id=24798
1193
1194         * platform/wx/wxcode/win/non-kerned-drawing.cpp:
1195
1196 2009-05-05  Chris Fleizach  <cfleizach@apple.com>
1197
1198         Reviewed by Beth Dakin.
1199
1200         Bug 25574: AXImageMap children links don't respond properly to accessibilityHitTest:
1201         https://bugs.webkit.org/show_bug.cgi?id=25574
1202
1203         Enable accessibility hit-testing for image map links. 
1204         Allow image map links to return AXURLs and AXAccessKey information.
1205
1206         Test: platform/mac/accessibility/imagemap-hittest.html
1207
1208         * page/AccessibilityImageMapLink.cpp:
1209         (WebCore::AccessibilityImageMapLink::url):
1210         * page/AccessibilityImageMapLink.h:
1211         * page/AccessibilityObject.h:
1212         (WebCore::AccessibilityObject::minValueForRange):
1213         * page/AccessibilityRenderObject.cpp:
1214         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
1215         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
1216         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
1217         * page/AccessibilityRenderObject.h:
1218         * page/mac/AccessibilityObjectWrapper.mm:
1219         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1220
1221 2009-05-05  Kevin McCullough  <kmccullough@apple.com>
1222
1223         Reviewed by Dan Bernstein.
1224
1225         <rdar://problem/6552129> Select a quote line and paste elsewhere, you
1226         get that line and an extra quoted blank line
1227         <rdar://problem/6609308> Triple-click a quoted header line, copy, paste
1228         onto an empty line makes an extra quoted line
1229
1230         - When pasting a blockquote with a newline, make sure we put the newline
1231         outside of the blockquote so that it is not quoted.
1232
1233         * editing/InsertParagraphSeparatorCommand.cpp:
1234         (WebCore::InsertParagraphSeparatorCommand::doApply):
1235
1236 2009-05-05  Jan Michael Alonzo  <jmalonzo@webkit.org>
1237
1238         Reviewed by Xan Lopez.
1239
1240         Call moz_gtk_shutdown on RenderThemeGtk destruction.
1241
1242         * platform/gtk/RenderThemeGtk.cpp:
1243         (WebCore::RenderThemeGtk::~RenderThemeGtk):
1244         * platform/gtk/RenderThemeGtk.h:
1245
1246 2009-05-05  Darin Adler  <darin@apple.com>
1247
1248         Reviewed by Steve Falkenburg.
1249
1250         <rdar://problem/6858340> REGRESSION: can't drag local HTML files into Safari because CFURLCreateWithFileSystemPath inserts "localhost"
1251
1252         * platform/win/ClipboardUtilitiesWin.cpp: (WebCore::urlFromPath): Remove localhost.
1253
1254 2009-05-05  Peter Kasting  <pkasting@google.com>
1255
1256         Reviewed by Brady Eidson.
1257
1258         Safety-check m_documentLoader before dereferencing.  While it seems
1259         unlikely this could fail (as Safari 3 shipped without this),
1260         technically almost any call can change or reset m_documentLoader.
1261
1262         * loader/FrameLoader.cpp:
1263         (WebCore::FrameLoader::receivedFirstData):
1264
1265 2009-05-05  Dan Bernstein  <mitz@apple.com>
1266
1267         - Tiger build fix
1268
1269         * css/CSSComputedStyleDeclaration.cpp:
1270         (WebCore::toCSSIdentifier):
1271
1272 2009-05-05  Peter Kasting  <pkasting@google.com>
1273
1274         Reviewed by Eric Seidel.
1275
1276         https://bugs.webkit.org/show_bug.cgi?id=25303
1277         No need to ref the internal buffer inside the Skia ImageDecoder.
1278
1279         * platform/image-decoders/skia/ImageDecoder.h:
1280         (WebCore::RGBA32Buffer::RGBA32Buffer):
1281         (WebCore::RGBA32Buffer::operator=):
1282         (WebCore::RGBA32Buffer::clear):
1283         (WebCore::RGBA32Buffer::copyBitmapData):
1284         (WebCore::RGBA32Buffer::bitmap):
1285         (WebCore::RGBA32Buffer::setSize):
1286         (WebCore::RGBA32Buffer::width):
1287         (WebCore::RGBA32Buffer::height):
1288         (WebCore::RGBA32Buffer::hasAlpha):
1289         (WebCore::RGBA32Buffer::setStatus):
1290         (WebCore::RGBA32Buffer::setHasAlpha):
1291         (WebCore::RGBA32Buffer::setRGBA):
1292
1293 2009-05-05  Dan Bernstein  <mitz@apple.com>
1294
1295         Reviewed by Darin Adler.
1296
1297         - fix https://bugs.webkit.org/show_bug.cgi?id=24192
1298           <rdar://problem/5760774> Replying to a Mail message that contains
1299           fixed width text can change the size of the text
1300
1301         Covered by existing tests: editing/pasteboard/5027857.html
1302                                    editing/pasteboard/paste-pre-002.html
1303
1304         * css/CSSComputedStyleDeclaration.cpp:
1305         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
1306         Added. If the font-size is keyword-based, returns the keyword value
1307         instead of the pixel size.
1308         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): If
1309         font-family is a generic family, return the generic family instead of
1310         the the internal string -webkit-[serif|sans-serif|cursive|fantasy
1311         |monospace].
1312         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties):
1313         For the font-size property, prefer a keyword value over a pixel size.
1314         * css/CSSComputedStyleDeclaration.h:
1315         * editing/ApplyStyleCommand.cpp:
1316         (WebCore::StyleChange::currentlyHasStyle): For the font-size property,
1317         call getFontSizeCSSValuePreferringKeyword().
1318         * platform/graphics/FontDescription.h:
1319         (WebCore::FontDescription::keywordSize): Changed the return type to
1320         unsigned.
1321         (WebCore::FontDescription::setKeywordSize): Changed the parameter type
1322         to unsigned.
1323         (WebCore::FontDescription::m_keywordSize): Changed the type of this
1324         4-bit field to unsigned, because it takes values as high as 8.
1325
1326 2009-05-05  Oliver Hunt  <oliver@apple.com>
1327
1328         Reviewed by Maciej Stachowiak.
1329
1330         Fix http/tests/misc/DOMContentLoaded-event.html
1331
1332         The native call performance improvement removed a few places where we
1333         unintentionally performed a toThisObject conversion.  This patch updates
1334         the bindings codegen to not rely on this bug.
1335
1336         * bindings/scripts/CodeGeneratorJS.pm:
1337
1338 2009-05-05  Holger Hans Peter Freyther  <zecke@selfish.org>
1339
1340         Reviewed by Xan Lopez and Gustavo Noronha.
1341
1342         Implement WebCore::directoryName for Gtk+.
1343
1344         * platform/gtk/FileSystemGtk.cpp:
1345         (WebCore::directoryName):
1346
1347 2009-05-05  Eric Seidel  <eric@webkit.org>
1348
1349         Reviewed by Adam Roben.
1350
1351         Fix mappedAttributes() access without NULL check
1352         https://bugs.webkit.org/show_bug.cgi?id=25553
1353
1354         SVGStyledElement::getPresentationAttribute was using mappedAttributes()
1355         without checking for NULL.
1356
1357         HTMLInputElement::setInputType also doesn't NULL check, but I was not
1358         able to get it to crash with a test case so I just added an ASSERT.
1359
1360         * html/HTMLInputElement.cpp:
1361         (WebCore::HTMLInputElement::setInputType):
1362         * svg/SVGStyledElement.cpp:
1363         (WebCore::SVGStyledElement::getPresentationAttribute):
1364
1365 2009-05-05  Holger Hans Peter Freyther  <zecke@selfish.org>
1366
1367         Reviewed by Xan Lopez.
1368
1369         Implement WebCore::imageTitle for Gtk+.
1370
1371         * platform/gtk/LocalizedStringsGtk.cpp:
1372         (WebCore::imageTitle):
1373
1374 2009-05-05  Oliver Hunt  <oliver@apple.com>
1375
1376         Reviewed by Gavin Barraclough.
1377
1378         Bug 25559: Improve native function call performance
1379         <https://bugs.webkit.org/show_bug.cgi?id=25559>
1380
1381         Add forwarding header necessary for compilation, and fix debugger
1382         to correctly account for change in JSFunction behaviour.
1383
1384         * ForwardingHeaders/jit/JITCode.h: Added.
1385         * inspector/JavaScriptDebugServer.cpp:
1386         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
1387
1388 2009-05-05  Simon Hausmann  <simon.hausmann@nokia.com>
1389
1390         Reviewed by Ariya Hidayat.
1391
1392         Make convertValueToQVariant more robust against null JSValues.
1393
1394         Don't require the caller to do the null check.
1395
1396         * bridge/qt/qt_runtime.cpp:
1397         (JSC::Bindings::convertValueToQVariant):
1398
1399 2009-05-05  Eric Seidel  <eric@webkit.org>
1400
1401         No review, just a revert.
1402
1403         Roll out http://trac.webkit.org/changeset/43213 as it caused 4 tests to crash.
1404
1405         * rendering/RenderSVGRoot.cpp:
1406         (WebCore::RenderSVGRoot::mapLocalToContainer):
1407         * rendering/SVGRenderSupport.cpp:
1408         (WebCore::SVGRenderBase::mapLocalToContainer):
1409
1410 2009-05-04  Alexey Proskuryakov  <ap@webkit.org>
1411
1412         Reviewed by Dave Hyatt.
1413
1414         <rdar://problem/6576889> REGRESSION (r35185): Cannot watch Flash movies on omg.yahoo.com
1415
1416         The problem was caused by missing <head> element - we used to create it when moving a
1417         misplaced <style> element, but we now handle those in place. Other browsers always create
1418         a <head> element.
1419
1420         There is no guarantee that a <head> element always exists - first, it can be removed with
1421         removeChild or innerHTML, and also, we don't currently create it for frameset documents, or
1422         for manually created ones (e.g. ImageDocument).
1423
1424         Test: fast/parser/head-element-for-yahoo-player.html
1425
1426         * dom/Document.cpp: (WebCore::Document::implicitClose): Create a <head> element for about:blank.
1427         A removed comment talked about rdar://3758785, but that problem doesn't re-occur even if this
1428         code is removed completely.
1429
1430         * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::checkDTD): No longer allow <script>
1431         elements as children of <html>. This isn't directly related to this bug, but it was easier
1432         to fix both at once (IE and Firefox both don't allow such mispositioned <script> elements).
1433
1434         * html/HTMLParser.cpp:
1435         (WebCore::HTMLParser::handleError): Move <script> to <head> if <body> hasn't been created yet.
1436         Create a <head> it a <body> is created implicitly to contain some other element.
1437         (WebCore::HTMLParser::bodyCreateErrorCheck): Ensure that a <head> exists when <body> is
1438         explicitly present in source.
1439         (WebCore::HTMLParser::createHead): Do the work even if <html> element hasn't been created yet.
1440
1441 2009-05-04  Jakub Wieczorek  <faw217@gmail.com>
1442
1443         Reviewed by Simon Hausmann.
1444
1445         As Qtish implementation of MIMETypeRegistry::getMIMETypeForExtension()
1446         returns the application/octet-stream mimetype when it can't associate
1447         extension with any mimetype, it can happen that the application/octet-stream
1448         mimetype will hit the list of supported image formats. For instance,
1449         it is possible when QImageReader or QImageWriter support an extension
1450         that is not in the extensions map.
1451
1452         Make sure that this mimetype is not treated as displayable image type.
1453
1454         * platform/MIMETypeRegistry.cpp:
1455         (WebCore::initializeSupportedImageMIMETypes):
1456         (WebCore::initializeSupportedImageMIMETypesForEncoding):
1457
1458 2009-05-03  Eric Seidel  <eric@webkit.org>
1459
1460         Reviewed by Simon Fraser.
1461
1462         ASSERT(useTransforms) in SVG mapLocalToContainer implementations
1463         https://bugs.webkit.org/show_bug.cgi?id=25532
1464
1465         * rendering/RenderSVGRoot.cpp:
1466         (WebCore::RenderSVGRoot::mapLocalToContainer):
1467         * rendering/SVGRenderSupport.cpp:
1468         (WebCore::SVGRenderBase::mapLocalToContainer):
1469
1470 2009-05-03  Eric Seidel  <eric@webkit.org>
1471
1472         Reviewed by Simon Fraser.
1473
1474         Remove m_absoluteBounds hack from RenderSVGText
1475         https://bugs.webkit.org/show_bug.cgi?id=25532
1476
1477         No functional changes (SVGs inside CSS transformed HTML should theoretically repaint better)
1478
1479         * rendering/RenderSVGText.cpp:
1480         (WebCore::RenderSVGText::layout):
1481         * rendering/RenderSVGText.h:
1482
1483 2009-05-03  Eric Seidel  <eric@webkit.org>
1484
1485         Reviewed by Simon Fraser.
1486
1487         Remove the vestigial calculateLocalTransform()
1488         https://bugs.webkit.org/show_bug.cgi?id=25532
1489
1490         RenderSVGContainer is now the only render which needs this
1491         function, but it no longer returns the unused bool.
1492
1493         calculateLocalTransform() previously was called by the DOM before
1494         transform updates were part of layout().
1495
1496         * rendering/RenderForeignObject.cpp:
1497         (WebCore::RenderForeignObject::layout):
1498         * rendering/RenderForeignObject.h:
1499         (WebCore::RenderForeignObject::localTransform):
1500         * rendering/RenderPath.cpp:
1501         (WebCore::RenderPath::layout):
1502         * rendering/RenderPath.h:
1503         * rendering/RenderSVGContainer.cpp:
1504         * rendering/RenderSVGContainer.h:
1505         (WebCore::RenderSVGContainer::calculateLocalTransform):
1506         * rendering/RenderSVGImage.cpp:
1507         (WebCore::RenderSVGImage::layout):
1508         * rendering/RenderSVGImage.h:
1509         * rendering/RenderSVGText.cpp:
1510         (WebCore::RenderSVGText::layout):
1511         * rendering/RenderSVGText.h:
1512         * rendering/RenderSVGTransformableContainer.cpp:
1513         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1514         * rendering/RenderSVGTransformableContainer.h:
1515
1516 2009-05-03  Eric Seidel  <eric@webkit.org>
1517
1518         Reviewed by Simon Fraser.
1519
1520         Move more code into SVGRenderBase
1521         https://bugs.webkit.org/show_bug.cgi?id=25532
1522
1523         clippedOverflowRectForRepaint, computeRectForRepaint and mapLocalToContainer
1524         are now all shared via SVGRenderBase.
1525
1526         RenderForeignObject should also be sharing this code, but I've left it
1527         alone for now, as changing that would likely cause test changes.
1528
1529         No test changes.  It's possible that transformed <svg:image> elements will
1530         now show up with better metrics in the inspector.
1531
1532         * rendering/RenderSVGImage.cpp:
1533         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
1534         (WebCore::RenderSVGImage::computeRectForRepaint):
1535         (WebCore::RenderSVGImage::mapLocalToContainer):
1536         * rendering/RenderSVGImage.h:
1537         * rendering/RenderSVGModelObject.cpp:
1538         (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
1539         (WebCore::RenderSVGModelObject::computeRectForRepaint):
1540         (WebCore::RenderSVGModelObject::mapLocalToContainer):
1541         * rendering/RenderSVGText.cpp:
1542         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
1543         (WebCore::RenderSVGText::computeRectForRepaint):
1544         (WebCore::RenderSVGText::mapLocalToContainer):
1545         * rendering/SVGRenderSupport.cpp:
1546         (WebCore::SVGRenderBase::clippedOverflowRectForRepaint):
1547         (WebCore::SVGRenderBase::computeRectForRepaint):
1548         (WebCore::SVGRenderBase::mapLocalToContainer):
1549         * rendering/SVGRenderSupport.h:
1550
1551 2009-05-03  Eric Seidel  <eric@webkit.org>
1552
1553         Reviewed by Simon Fraser.
1554
1555         Add SVGRenderBase to share logic between SVG renderers
1556         https://bugs.webkit.org/show_bug.cgi?id=25532
1557
1558         I've added an SVGRenderBase base class which is shared by
1559         all of the SVG renders now.  This patch is just moving code
1560         there are no functional changes in this patch.
1561
1562         Currently I've left these functions in SVGRenderSupport.h
1563         In a later patch I will rename SVGRenderSupport.* to SVGRenderBase.*
1564
1565         clampImageBufferSizeToViewport now takes a FrameView* which makes some code easier to read.
1566
1567         * rendering/RenderSVGBlock.h:
1568         * rendering/RenderSVGImage.h:
1569         * rendering/RenderSVGModelObject.h:
1570         * rendering/RenderSVGRoot.h:
1571         * rendering/SVGRenderSupport.cpp:
1572         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
1573         (WebCore::SVGRenderBase::finishRenderSVGContent):
1574         (WebCore::clampImageBufferSizeToViewport):
1575         (WebCore::SVGRenderBase::computeContainerBoundingBox):
1576         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
1577         * rendering/SVGRenderSupport.h:
1578         * rendering/SVGRootInlineBox.cpp:
1579         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
1580         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
1581         (WebCore::SVGRootInlineBox::paint):
1582         * svg/SVGMaskElement.cpp:
1583         (WebCore::SVGMaskElement::drawMaskerContent):
1584         * svg/SVGPatternElement.cpp:
1585         (WebCore::SVGPatternElement::buildPattern):
1586         * svg/graphics/SVGPaintServerGradient.cpp:
1587         (WebCore::createMaskAndSwapContextForTextGradient):
1588         (WebCore::clipToTextMask):
1589
1590 2009-05-05  Simon Hausmann  <simon.hausmann@nokia.com>
1591
1592         Unreviewed SVG build fix.
1593
1594         Include MappedAttribute.h after r43187.
1595
1596         * svg/SVGComponentTransferFunctionElement.cpp:
1597         * svg/SVGFEBlendElement.cpp:
1598         * svg/SVGFEColorMatrixElement.cpp:
1599         * svg/SVGFEComponentTransferElement.cpp:
1600         * svg/SVGFECompositeElement.cpp:
1601         * svg/SVGFEDiffuseLightingElement.cpp:
1602         * svg/SVGFEDisplacementMapElement.cpp:
1603         * svg/SVGFEGaussianBlurElement.cpp:
1604         * svg/SVGFEImageElement.cpp:
1605         * svg/SVGFELightElement.cpp:
1606         * svg/SVGFEMergeNodeElement.cpp:
1607         * svg/SVGFEOffsetElement.cpp:
1608         * svg/SVGFESpecularLightingElement.cpp:
1609         * svg/SVGFETileElement.cpp:
1610         * svg/SVGFETurbulenceElement.cpp:
1611         * svg/SVGFilterElement.cpp:
1612         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1613
1614 2009-05-04  Brady Eidson  <beidson@apple.com>
1615
1616         Reviewed by Sam 'The Belly' Weinig
1617
1618         <rdar://problem/6828894> - Facebook photo uploader applet broken on Leopard only
1619
1620         In r41568 we started adding a default codebase attribute to <applet> tags if they didn't specify one
1621         themselves.  Leopard's Java plug-in mishandles this case and fails to load code for the applet.
1622
1623         The spirit of r41568 can be maintained by removing the "default codebase" piece and only performing
1624         the canLoad() check if a codebase was actually set on the applet tag.
1625
1626         * html/HTMLAppletElement.cpp:
1627         (WebCore::HTMLAppletElement::createRenderer): Don't create a default codebase attribute.
1628
1629         * loader/FrameLoader.cpp:
1630         (WebCore::FrameLoader::createJavaAppletWidget): Only perform the canLoad() check if the codebase was set.
1631
1632 2009-05-04  Adam Roben  <aroben@apple.com>
1633
1634         Windows build fix
1635
1636         * html/HTMLCollection.h:
1637         * html/HTMLFormElement.h:
1638         Declare CollectionCache as a struct, not a class, to match its
1639         definition.
1640
1641 2009-05-04  Chris Fleizach  <cfleizach@apple.com>
1642
1643         Reviewed by Beth Dakin, Oliver Hunt.
1644
1645         Bug 25557: REGRESSION: Canvas elements are ignored instead of being exposed as AXImage
1646         https://bugs.webkit.org/show_bug.cgi?id=25557
1647
1648         Test: accessibility/canvas.html
1649
1650         * page/AccessibilityRenderObject.cpp:
1651         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1652         (WebCore::AccessibilityRenderObject::roleValue):
1653
1654 2009-05-04  Brady Eidson  <beidson@apple.com>
1655
1656         Fix an ancient Changelog entry where Sam Weinig flat out lied and confused my exploration of a bug.
1657
1658         * ChangeLog
1659
1660 2009-05-04  Kai Brüning  <kai@granus.net>
1661
1662         Reviewed by Eric Seidel.
1663         
1664         https://bugs.webkit.org/show_bug.cgi?id=24883
1665         24883: Bad success test in parseXMLDocumentFragment in XMLTokenizerLibxml2.cpp
1666         
1667         Fixed test whether all the chunk has been processed to correctly count utf8 bytes.
1668
1669         Test: fast/innerHTML/innerHTML-nbsp.xhtml
1670
1671         * dom/XMLTokenizerLibxml2.cpp:
1672         (WebCore::parseXMLDocumentFragment):
1673
1674 2009-05-04  Darin Adler  <darin@apple.com>
1675
1676         Reviewed by Eric Seidel.
1677
1678         Bug 24924: remove Document.h include of Attr.h and HTMLCollection.h,
1679         and NamedMappedAttrMap.h include of MappedAttribute.h
1680         https://bugs.webkit.org/show_bug.cgi?id=24924
1681
1682         Make compiles faster, and debugging info smaller.
1683
1684         * GNUmakefile.am: Added new source files.
1685         * WebCore.pro: Ditto.
1686         * WebCore.scons: Ditto.
1687         * WebCore.vcproj/WebCore.vcproj: Ditto.
1688         * WebCore.xcodeproj/project.pbxproj: Ditto.
1689         * WebCoreSources.bkl: Ditto.
1690
1691         * bindings/js/JSHTMLCollectionCustom.cpp:
1692         (WebCore::toJS): Updated for new collection type names.
1693
1694         * dom/Document.cpp:
1695         (WebCore::Document::createAttribute): Added. No longer inline.
1696         (WebCore::Document::images): Updated for new collection type names.
1697         (WebCore::Document::applets): Ditto.
1698         (WebCore::Document::embeds): Ditto.
1699         (WebCore::Document::plugins): Ditto.
1700         (WebCore::Document::objects): Ditto.
1701         (WebCore::Document::scripts): Ditto.
1702         (WebCore::Document::links): Ditto.
1703         (WebCore::Document::forms): Ditto.
1704         (WebCore::Document::anchors): Ditto.
1705         (WebCore::Document::all): Ditto.
1706         (WebCore::Document::windowNamedItems): Ditto.
1707         (WebCore::Document::documentNamedItems): Ditto.
1708         (WebCore::Document::nameCollectionInfo): Ditto.
1709
1710         * dom/Document.h: Changed around includes and forward declarations.
1711         Updated for changes to collection types.
1712
1713         * dom/NamedMappedAttrMap.h: Removed include of MappedAttribute.h.
1714
1715         * html/CollectionCache.cpp: Copied from WebCore/html/HTMLCollection.cpp.
1716         Contains the class that used to be HTMLCollection::CollectionInfo.
1717         * html/CollectionCache.h: Copied from WebCore/html/HTMLCollection.h.
1718         Ditto.
1719
1720         * html/CollectionType.h: Copied from WebCore/html/HTMLCollection.h.
1721         Has the enum that used to be HTMLCollection::Type.
1722
1723         * html/HTMLCollection.cpp:
1724         (WebCore::HTMLCollection::HTMLCollection): Update for collection type change.
1725         (WebCore::HTMLCollection::create): Ditto.
1726         (WebCore::HTMLCollection::resetCollectionInfo): Ditto.
1727         (WebCore::HTMLCollection::itemAfter): Ditto.
1728         * html/HTMLCollection.h: Ditto.
1729
1730         * html/HTMLElement.cpp:
1731         (WebCore::HTMLElement::children): Updated for new collection type names.
1732         * html/HTMLFormCollection.cpp:
1733         (WebCore::HTMLFormCollection::formCollectionInfo): Ditto.
1734         (WebCore::HTMLFormCollection::HTMLFormCollection): Ditto.
1735         * html/HTMLFormCollection.h: Ditto.
1736         * html/HTMLFormElement.h: Ditto.
1737         * html/HTMLMapElement.cpp:
1738         (WebCore::HTMLMapElement::areas): Ditto.
1739         * html/HTMLNameCollection.cpp:
1740         (WebCore::HTMLNameCollection::HTMLNameCollection): Ditto.
1741         * html/HTMLNameCollection.h:
1742         (WebCore::HTMLNameCollection::create): Ditto.
1743         * html/HTMLSelectElement.h:
1744         (WebCore::HTMLSelectElement::collectionInfo): Ditto.
1745         * html/HTMLTableElement.cpp:
1746         (WebCore::HTMLTableElement::tBodies):Ditto.
1747         * html/HTMLTableRowElement.cpp:
1748         (WebCore::HTMLTableRowElement::cells):Ditto.
1749         * html/HTMLTableRowsCollection.cpp:
1750         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection): Ditto.
1751         * html/HTMLTableSectionElement.cpp:
1752         (WebCore::HTMLTableSectionElement::rows): Ditto.
1753
1754         * bindings/js/JSDOMWindowBase.cpp: Added newly-needed includes.
1755         * bindings/js/JSHTMLFrameSetElementCustom.cpp: Ditto.
1756         * css/CSSStyleSelector.cpp: Ditto.
1757         * dom/Element.cpp: Ditto.
1758         * dom/InputElement.cpp: Ditto.
1759         * dom/NamedAttrMap.cpp: Ditto.
1760         * dom/NamedMappedAttrMap.cpp: Ditto.
1761         * dom/Node.cpp: Ditto.
1762         * dom/StyledElement.cpp: Ditto.
1763         * dom/StyledElement.h: Ditto.
1764         * editing/ApplyStyleCommand.cpp: Ditto.
1765         * editing/DeleteSelectionCommand.cpp: Ditto.
1766         * editing/Editor.cpp: Ditto.
1767         * editing/EditorCommand.cpp: Ditto.
1768         * editing/InsertParagraphSeparatorCommand.cpp: Ditto.
1769         * editing/ReplaceSelectionCommand.cpp: Ditto.
1770         * editing/markup.cpp: Ditto.
1771         * html/CanvasRenderingContext2D.cpp: Ditto.
1772         * html/HTMLAnchorElement.cpp: Ditto.
1773         * html/HTMLAppletElement.cpp: Ditto.
1774         * html/HTMLAreaElement.cpp: Ditto.
1775         * html/HTMLBRElement.cpp: Ditto.
1776         * html/HTMLBaseElement.cpp: Ditto.
1777         * html/HTMLBodyElement.cpp: Ditto.
1778         * html/HTMLButtonElement.cpp: Ditto.
1779         * html/HTMLCanvasElement.cpp: Ditto.
1780         * html/HTMLDivElement.cpp: Ditto.
1781         * html/HTMLEmbedElement.cpp: Ditto.
1782         * html/HTMLFontElement.cpp: Ditto.
1783         * html/HTMLFormControlElement.cpp: Ditto.
1784         * html/HTMLFormElement.cpp: Ditto.
1785         * html/HTMLFrameElement.cpp: Ditto.
1786         * html/HTMLFrameElementBase.cpp: Ditto.
1787         * html/HTMLFrameSetElement.cpp: Ditto.
1788         * html/HTMLHRElement.cpp: Ditto.
1789         * html/HTMLIFrameElement.cpp: Ditto.
1790         * html/HTMLImageElement.cpp: Ditto.
1791         * html/HTMLInputElement.cpp: Ditto.
1792         * html/HTMLIsIndexElement.cpp: Ditto.
1793         * html/HTMLKeygenElement.cpp: Ditto.
1794         * html/HTMLLIElement.cpp: Ditto.
1795         * html/HTMLLinkElement.cpp: Ditto.
1796         * html/HTMLMarqueeElement.cpp: Ditto.
1797         * html/HTMLMetaElement.cpp: Ditto.
1798         * html/HTMLOListElement.cpp: Ditto.
1799         * html/HTMLObjectElement.cpp: Ditto.
1800         * html/HTMLOptionElement.cpp: Ditto.
1801         * html/HTMLParagraphElement.cpp: Ditto.
1802         * html/HTMLParamElement.cpp: Ditto.
1803         * html/HTMLPlugInElement.cpp: Ditto.
1804         * html/HTMLPreElement.cpp: Ditto.
1805         * html/HTMLScriptElement.cpp: Ditto.
1806         * html/HTMLSelectElement.cpp: Ditto.
1807         * html/HTMLStyleElement.cpp: Ditto.
1808         * html/HTMLTableCaptionElement.cpp: Ditto.
1809         * html/HTMLTableCellElement.cpp: Ditto.
1810         * html/HTMLTableColElement.cpp: Ditto.
1811         * html/HTMLTablePartElement.cpp: Ditto.
1812         * html/HTMLTextAreaElement.cpp: Ditto.
1813         * html/HTMLTokenizer.cpp: Ditto.
1814         * html/HTMLUListElement.cpp: Ditto.
1815         * html/HTMLVideoElement.cpp: Ditto.
1816         * html/HTMLViewSourceDocument.cpp: Ditto.
1817         * loader/ImageDocument.cpp: Ditto.
1818         * page/Frame.cpp: Ditto.
1819         * rendering/RenderTreeAsText.cpp: Ditto.
1820         * svg/SVGAElement.cpp: Ditto.
1821         * svg/SVGAnimateMotionElement.cpp: Ditto.
1822         * svg/SVGAnimateTransformElement.cpp: Ditto.
1823         * svg/SVGAnimationElement.cpp: Ditto.
1824         * svg/SVGCircleElement.cpp: Ditto.
1825         * svg/SVGClipPathElement.cpp: Ditto.
1826         * svg/SVGCursorElement.cpp: Ditto.
1827         * svg/SVGElement.cpp: Ditto.
1828         * svg/SVGEllipseElement.cpp: Ditto.
1829         * svg/SVGExternalResourcesRequired.cpp: Ditto.
1830         * svg/SVGFitToViewBox.cpp: Ditto.
1831         * svg/SVGFontFaceElement.cpp: Ditto.
1832         * svg/SVGFontFaceUriElement.cpp: Ditto.
1833         * svg/SVGForeignObjectElement.cpp: Ditto.
1834         * svg/SVGGlyphElement.cpp: Ditto.
1835         * svg/SVGGradientElement.cpp: Ditto.
1836         * svg/SVGImageElement.cpp: Ditto.
1837         * svg/SVGLangSpace.cpp: Ditto.
1838         * svg/SVGLineElement.cpp: Ditto.
1839         * svg/SVGLinearGradientElement.cpp: Ditto.
1840         * svg/SVGMarkerElement.cpp: Ditto.
1841         * svg/SVGMaskElement.cpp: Ditto.
1842         * svg/SVGPathElement.cpp: Ditto.
1843         * svg/SVGPatternElement.cpp: Ditto.
1844         * svg/SVGPolyElement.cpp: Ditto.
1845         * svg/SVGRadialGradientElement.cpp: Ditto.
1846         * svg/SVGRectElement.cpp: Ditto.
1847         * svg/SVGSVGElement.cpp: Ditto.
1848         * svg/SVGScriptElement.cpp: Ditto.
1849         * svg/SVGStopElement.cpp: Ditto.
1850         * svg/SVGStyleElement.cpp: Ditto.
1851         * svg/SVGStyledElement.cpp: Ditto.
1852         * svg/SVGStyledTransformableElement.cpp: Ditto.
1853         * svg/SVGTests.cpp: Ditto.
1854         * svg/SVGTextContentElement.cpp: Ditto.
1855         * svg/SVGTextElement.cpp: Ditto.
1856         * svg/SVGTextPathElement.cpp: Ditto.
1857         * svg/SVGTextPositioningElement.cpp: Ditto.
1858         * svg/SVGURIReference.cpp: Ditto.
1859         * svg/SVGUseElement.cpp: Ditto.
1860         * svg/SVGViewElement.cpp: Ditto.
1861         * svg/animation/SVGSMILElement.cpp: Ditto.
1862         * xml/XPathStep.cpp: Ditto.
1863
1864 2009-05-04  Pavel Feldman  <pfeldman@chromium.org>
1865
1866         Reviewed by Timothy Hatcher.
1867
1868         Do not instantiate hidden WebInspector panels. Otherwise they are hitting unimplemented InspectorController methods.
1869         https://bugs.webkit.org/show_bug.cgi?id=25520
1870
1871         * inspector/front-end/inspector.js:
1872         (WebInspector.loaded):
1873
1874 2009-05-04  Brady Eidson <beidson@apple.com>
1875
1876         Reviewed by Darin Adler.
1877
1878         <rdar://problem/6839881> With "Mail Contents of This Page" in Safari images don't appear in the Tiger Mail compose window
1879
1880         DocumentLoader::subresource() is the implementation for the WebKit API [WebDataSource subresourceForURL:] and has 
1881         particularly sticky behavior.  
1882
1883         If the DocumentLoader represents a WebArchive, this method should return ArchiveResources from that archive.  However, we 
1884         prefer CachedResources over ArchiveResources because they might represent fresher data than what was originally loaded 
1885         from the WebArchive.
1886
1887         In some instances, CachedResources are created and associated with the DocumentLoader but not immediately run through the 
1888         loading delegate machinery.  This was always a possibility, but the Preload Scanner made this significantly more likely.
1889
1890         When this happens and someone asks the WebDataSource for a subresource, it would prefer the CachedResource over an 
1891         ArchiveResource it has even if the CachedResource hasn't been loaded yet.  The CachedResource has nil data, so no
1892         WebResource is returned, and the client thinks the subresource doesn't exist even though it does.
1893
1894         This broke Tiger Mail and probably various other WebKit applications but has a fairly straightforward fix.
1895
1896         * loader/DocumentLoader.cpp:
1897         (WebCore::DocumentLoader::subresource): If there is a CachedResource but it hasn't been loaded yet, fallback to the
1898           ArchiveResource.
1899
1900 2009-05-04  Eric Carlson  <eric.carlson@apple.com>
1901
1902         Reviewed by Adam Roben.
1903         
1904         https://bugs.webkit.org/show_bug.cgi?id=25545
1905         Bug 25545: HTMLMediaElement: display anamorphic video correctly
1906         
1907         Tell QuickTime to use clean aperture mode so movies with non-square pixels are sized
1908         and displayed correctly.
1909
1910         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1911         (WebCore::MediaPlayerPrivate::createQTMovie): Ask QuickTime to use clean aperture mode.
1912         * platform/graphics/win/QTMovieWin.cpp:
1913         (QTMovieWin::load): Ditto. Add ASSERT to ensure that static movie property array isn't 
1914         filled beyond capacity.
1915
1916 2009-05-03  Mark Rowe  <mrowe@apple.com>
1917
1918         Reviewed by Darin Adler.
1919
1920         Fix <https://bugs.webkit.org/show_bug.cgi?id=25332>.
1921         Bug 25332: Plug-in inserted in to DOM of PluginDocument fails to load
1922
1923         Only the first plug-in in a PluginDocument can use the main resource data.  For all
1924         subsequent plug-ins, such as the plug-in that ClickToFlash inserts when swapping itself
1925         out for the real Flash plug-in, we need to load the resource data in the same manner
1926         as for other embedded plug-ins.
1927
1928         * loader/FrameLoader.cpp:
1929         (WebCore::FrameLoader::loadPlugin):
1930
1931 2009-05-04  Simon Hausmann  <simon.hausmann@nokia.com>
1932
1933         Rubber-stamped by Ariya Hidayat.
1934
1935         Update the qrc file for the Web Inspector in the Qt build
1936         with missing files.
1937
1938         * inspector/front-end/WebKit.qrc:
1939
1940 2009-05-03  Eric Seidel  <eric@webkit.org>
1941
1942         Reviewed by George Staikos.
1943
1944         Move absoluteRects and absoluteQuads into RenderSVGInline and remove absoluteTransform() usage
1945         https://bugs.webkit.org/show_bug.cgi?id=25532
1946
1947         * rendering/RenderSVGInline.cpp:
1948         (WebCore::RenderSVGInline::absoluteRects):
1949         (WebCore::RenderSVGInline::absoluteQuads):
1950         * rendering/RenderSVGInline.h:
1951         * rendering/RenderSVGTSpan.cpp:
1952         * rendering/RenderSVGTSpan.h:
1953         * rendering/RenderSVGTextPath.cpp:
1954         * rendering/RenderSVGTextPath.h:
1955
1956 2009-05-03  Eric Seidel  <eric@webkit.org>
1957
1958         Reviewed by George Staikos.
1959
1960         Move RenderSVGText off of localToAbsolute()
1961         https://bugs.webkit.org/show_bug.cgi?id=25532
1962
1963         * rendering/RenderSVGText.cpp:
1964         (WebCore::RenderSVGText::absoluteRects):
1965         (WebCore::RenderSVGText::absoluteQuads):
1966
1967 2009-05-03  Eric Seidel  <eric@webkit.org>
1968
1969         Reviewed by George Staikos.
1970
1971         Remove broken absoluteTransform() code from RenderSVGInlineText
1972         https://bugs.webkit.org/show_bug.cgi?id=25532
1973
1974         This improved SVG text focus rings.
1975         This also improved SVG.getScreenCTM() results.
1976
1977         SVGSVGElement::getScreenCTM was passing "true" for the second argument in
1978         localToAbsolute, which is "fixed" it meant to pass "true" for the
1979         third argument (useTransforms).  That change alone caused no layout test changes, however
1980         before I fixed this, it was hitting ASSERT(!fixed) in RenderSVGRoot::mapLocalToContainer
1981
1982         mapLocalToContainer implementations really should be shared,
1983         but I'll do that in a later patch.
1984
1985         * rendering/RenderSVGInlineText.cpp:
1986         (WebCore::RenderSVGInlineText::styleDidChange):
1987         (WebCore::RenderSVGInlineText::absoluteQuads):
1988         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
1989         (WebCore::RenderSVGInlineText::computeRepaintQuadForRange):
1990         * rendering/RenderSVGInlineText.h:
1991         * rendering/RenderSVGRoot.cpp:
1992         (WebCore::RenderSVGRoot::mapLocalToContainer):
1993         * rendering/RenderSVGRoot.h:
1994         * rendering/RenderSVGText.cpp:
1995         (WebCore::RenderSVGText::mapLocalToContainer):
1996         * rendering/RenderSVGText.h:
1997         * svg/SVGSVGElement.cpp:
1998         (WebCore::SVGSVGElement::getScreenCTM):
1999
2000 2009-05-03  Eric Seidel  <eric@webkit.org>
2001
2002         Reviewed by George Staikos.
2003
2004         Remove dead code from RenderPath
2005         https://bugs.webkit.org/show_bug.cgi?id=25532
2006
2007         * rendering/RenderPath.cpp:
2008         * rendering/RenderPath.h:
2009
2010 2009-05-03  Eric Seidel  <eric@webkit.org>
2011
2012         Reviewed by George Staikos.
2013
2014         Share layout code between RenderSVGViewportContainer and RenderSVGContainer
2015         https://bugs.webkit.org/show_bug.cgi?id=25532
2016
2017         * rendering/RenderSVGContainer.cpp:
2018         (WebCore::RenderSVGContainer::layout):
2019         * rendering/RenderSVGContainer.h:
2020         (WebCore::RenderSVGContainer::calcViewport):
2021         * rendering/RenderSVGViewportContainer.cpp:
2022         (WebCore::RenderSVGViewportContainer::applyViewportClip):
2023         * rendering/RenderSVGViewportContainer.h:
2024
2025 2009-05-03  Eric Seidel  <eric@webkit.org>
2026
2027         Reviewed by George Staikos.
2028
2029         Remove redundant disableLayoutState() calls
2030         https://bugs.webkit.org/show_bug.cgi?id=25532
2031
2032         * rendering/RenderForeignObject.cpp:
2033         (WebCore::RenderForeignObject::layout):
2034         * rendering/RenderSVGContainer.cpp:
2035         (WebCore::RenderSVGContainer::layout):
2036         * rendering/RenderSVGViewportContainer.cpp:
2037         (WebCore::RenderSVGViewportContainer::layout):
2038
2039 2009-05-03  Eric Seidel  <eric@webkit.org>
2040
2041         Reviewed by George Staikos.
2042
2043         Simplify RenderForeignObject::paint and fix a repaint bug.
2044         Paint now calls applyTransformToPaintInfo which correctly transforms the damage rect.
2045         https://bugs.webkit.org/show_bug.cgi?id=16939
2046
2047         * rendering/RenderForeignObject.cpp:
2048         (WebCore::RenderForeignObject::paint):
2049
2050 2009-05-03  Hironori Bono  <hbono@chromium.org>
2051
2052         Reviewed by Eric Seidel.
2053
2054         Test: editing/spelling/spellcheck-attribute.html
2055
2056         Bug 14552: Add a way to disable spell checking for specific element
2057         https://bugs.webkit.org/show_bug.cgi?id=14552
2058
2059         For compatibility with Firefox, this code ascends the DOM tree when an element does
2060         not have its "spellcheck" attribute.
2061
2062         * editing/Editor.cpp:
2063         (WebCore::markMisspellingsOrBadGrammar): Retrieve the value of the "spellcheck"
2064         attribute of an element before calling a spell checker or a grammar checker.
2065         * html/HTMLAttributeNames.in: Add a "spellcheck" attribute.
2066
2067 2009-05-03  Sam Weinig  <sam@webkit.org>
2068
2069         Roll JSC API number marshaling back in one last time (I hope).
2070
2071 2009-05-03  Sam Weinig  <sam@webkit.org>
2072
2073         Roll JSC API number marshaling back out. It still breaks windows.
2074
2075 2009-05-03  Sam Weinig  <sam@webkit.org>
2076
2077         Roll JSC API number marshaling back in.
2078
2079 2009-05-02  Dan Bernstein  <mitz@apple.com>
2080
2081         Reviewed by Darin Adler.
2082
2083         - another fix for <rdar://problem/6617298> Typing delete on an unquoted
2084           blank line unquotes the preceding, quoted blank line
2085
2086         Test: editing/deleting/type-delete-after-quote-2.html
2087
2088         * editing/DeleteSelectionCommand.cpp:
2089         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Initialize
2090         m_startsAtEmptyLine.
2091         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): When the
2092         selection starts at an empty line, do not prevent the merging of blocks.
2093         This is what allows the text after the line break to be merged into the
2094         block containing the line break. Also set m_startsAtEmptyLine to true.
2095         (WebCore::DeleteSelectionCommand::mergeParagraphs): If
2096         m_startsAtEmptyLine is true, create a placeholder BR to serve as the
2097         merge destination.
2098         * editing/DeleteSelectionCommand.h:
2099
2100 2009-05-02  Geoffrey Garen  <ggaren@apple.com>
2101
2102         Reviewed by Sam Weinig.
2103
2104         Simplified null-ish JSValues.
2105         
2106         Replaced calls to noValue() with calls to JSValue() (which is what
2107         noValue() returned). Removed noValue().
2108         
2109         Removed "JSValue()" initialiazers, since default construction happens...
2110         by default.
2111
2112         * bindings/js/JSDOMBinding.cpp:
2113         (WebCore::setDOMException):
2114         * bindings/js/JSDOMWindowCustom.cpp:
2115         (WebCore::JSDOMWindow::open):
2116         (WebCore::JSDOMWindow::showModalDialog):
2117         * bindings/js/JSEventListener.cpp:
2118         (WebCore::JSEventListener::handleEvent):
2119         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2120         (WebCore::JSJavaScriptCallFrame::evaluate):
2121         * bindings/js/JSSQLResultSetRowListCustom.cpp:
2122         (WebCore::JSSQLResultSetRowList::item):
2123         * bindings/js/ScriptController.cpp:
2124         (WebCore::ScriptController::evaluate):
2125         * bindings/js/ScriptValue.h:
2126         (WebCore::ScriptValue::ScriptValue):
2127         (WebCore::ScriptValue::hasNoValue):
2128         * bindings/js/WorkerScriptController.cpp:
2129         (WebCore::WorkerScriptController::evaluate):
2130         * bridge/jni/jni_instance.cpp:
2131         (JavaInstance::invokeMethod):
2132         * bridge/jni/jni_runtime.cpp:
2133         (JavaField::dispatchValueFromInstance):
2134         (JavaField::dispatchSetValueToInstance):
2135         * bridge/runtime.h:
2136         (JSC::Bindings::Instance::invokeConstruct):
2137
2138 2009-05-02  Antti Koivisto  <antti@apple.com>
2139
2140         Reviewed by Dan Bernstein.
2141
2142         <rdar://problem/6631735> Crash in WebCore::CSSStyleSelector::applyProperty(int, WebCore::CSSValue*) (RenderStyle.h:454)
2143         
2144         Avoid re-entering style selector from load delegates by not issuing resource loads synchronously during attach().
2145
2146         * dom/ContainerNode.cpp:
2147         (WebCore::ContainerNode::suspendPostAttachCallbacks):
2148         (WebCore::ContainerNode::resumePostAttachCallbacks):
2149         (WebCore::ContainerNode::attach):
2150         * dom/Element.cpp:
2151         (WebCore::Element::attach):
2152         * loader/loader.cpp:
2153         (WebCore::Loader::Loader):
2154         (WebCore::Loader::servePendingRequests):
2155         (WebCore::Loader::suspendPendingRequests):
2156         (WebCore::Loader::resumePendingRequests):
2157         (WebCore::Loader::Host::servePendingRequests):
2158         * loader/loader.h:
2159         (WebCore::Loader::isSuspendingPendingRequests):
2160
2161 2009-05-02  Darin Adler  <darin@apple.com>
2162
2163         Reviewed by Dan Bernstein.
2164
2165         Bug 25352: REGRESSION(r42322): style isn't applied at bmwusa.com
2166         https://bugs.webkit.org/show_bug.cgi?id=25352
2167         rdar://problem/6823239
2168
2169         Test: http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html
2170
2171         * platform/network/HTTPParsers.cpp:
2172         (WebCore::extractMIMETypeFromMediaType): Allow comma as a separator.
2173
2174 2009-05-02  Darin Adler  <darin@apple.com>
2175
2176         Reviewed by Brady Eidson.
2177
2178         Bug 25491: WebFrame leak when a subframe removes itself
2179         https://bugs.webkit.org/show_bug.cgi?id=25491
2180         rdar://problem/6833859
2181
2182         Test: fast/loading/subframe-removes-itself.html
2183
2184         * loader/FrameLoader.cpp:
2185         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): When isStopping is true,
2186         treat load as complete, even if isLoadingInAPISense is still returning true.
2187
2188 2009-05-01  Sam Weinig  <sam@webkit.org>
2189
2190         Roll out JavaScriptCore API number marshaling.
2191
2192         * bindings/js/ScriptValue.cpp:
2193         (WebCore::ScriptValue::isEqual):
2194         * inspector/JavaScriptProfile.cpp:
2195         (WebCore::getHeadCallback):
2196         * inspector/JavaScriptProfileNode.cpp:
2197         (WebCore::getChildren):
2198         (WebCore::getParent):
2199         (WebCore::getHead):
2200
2201 2009-05-01  Sam Weinig  <sam@webkit.org>
2202
2203         Fix build.
2204
2205         * workers/WorkerContext.idl:
2206
2207 2009-05-01  Sam Weinig  <sam@webkit.org>
2208
2209         Reviewed by Oliver Hunt.
2210
2211         Cleanup workers code a bit.
2212
2213         * bindings/js/JSWorkerContextBase.cpp:
2214         (WebCore::toJS):
2215         * bindings/js/JSWorkerContextBase.h:
2216         * bindings/js/JSWorkerContextCustom.cpp:
2217         (WebCore::JSWorkerContext::customGetOwnPropertySlot):
2218         * workers/WorkerContext.h:
2219         (WebCore::WorkerContext::toWorkerContext):
2220         (WebCore::WorkerContext::self):
2221         (WebCore::WorkerContext::setOnmessage):
2222         (WebCore::WorkerContext::onmessage):
2223         * workers/WorkerContext.idl:
2224
2225 2009-05-01  Sam Weinig  <sam@webkit.org>
2226
2227         Reviewed by Darin Adler.
2228
2229         A little clean up.
2230
2231         * loader/FrameLoader.cpp:
2232         (WebCore::FrameLoader::createJavaAppletWidget):
2233
2234 2009-05-01  Sam Weinig  <sam@webkit.org>
2235
2236         Fix the build.
2237
2238         * bindings/js/ScriptValue.cpp:
2239         (WebCore::ScriptValue::isEqual):
2240         * inspector/JavaScriptProfile.cpp:
2241         (WebCore::getHeadCallback):
2242         * inspector/JavaScriptProfileNode.cpp:
2243         (WebCore::getChildren):
2244         (WebCore::getParent):
2245         (WebCore::getHead):
2246
2247 2009-05-01  Brady Eidson  <beidson@apple.com>
2248
2249         Reviewed by Oliver Hunt and Sam "Jon 'The Belly' Honeycutt" Weinig
2250
2251         Fix <rdar://problem/6848867> Addition of DOCTYPE node breaks Tiger Mail
2252
2253         * bindings/objc/DOMHTML.mm:
2254         (-[DOMHTMLDocument firstChild]): Add a Tiger Mail version of this method that skips DOCTYPE nodes.
2255
2256 2009-05-01  Geoffrey Garen  <ggaren@apple.com>
2257
2258         Rubber Stamped by Sam Weinig.
2259         
2260         Renamed JSValuePtr => JSValue.
2261
2262         * bindings/js/JSAttrCustom.cpp:
2263         (WebCore::JSAttr::setValue):
2264         * bindings/js/JSCDATASectionCustom.cpp:
2265         (WebCore::toJSNewlyCreated):
2266         * bindings/js/JSCSSRuleCustom.cpp:
2267         (WebCore::toJS):
2268         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2269         (WebCore::JSCSSStyleDeclaration::nameGetter):
2270         (WebCore::JSCSSStyleDeclaration::customPut):
2271         * bindings/js/JSCSSValueCustom.cpp:
2272         (WebCore::toJS):
2273         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2274         (WebCore::toJS):
2275         (WebCore::toHTMLCanvasStyle):
2276         (WebCore::JSCanvasRenderingContext2D::strokeStyle):
2277         (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
2278         (WebCore::JSCanvasRenderingContext2D::fillStyle):
2279         (WebCore::JSCanvasRenderingContext2D::setFillStyle):
2280         (WebCore::JSCanvasRenderingContext2D::setFillColor):
2281         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
2282         (WebCore::JSCanvasRenderingContext2D::strokeRect):
2283         (WebCore::JSCanvasRenderingContext2D::drawImage):
2284         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
2285         (WebCore::JSCanvasRenderingContext2D::setShadow):
2286         (WebCore::JSCanvasRenderingContext2D::createPattern):
2287         (WebCore::JSCanvasRenderingContext2D::putImageData):
2288         (WebCore::JSCanvasRenderingContext2D::fillText):
2289         (WebCore::JSCanvasRenderingContext2D::strokeText):
2290         * bindings/js/JSClipboardCustom.cpp:
2291         (WebCore::JSClipboard::types):
2292         (WebCore::JSClipboard::clearData):
2293         (WebCore::JSClipboard::getData):
2294         (WebCore::JSClipboard::setData):
2295         (WebCore::JSClipboard::setDragImage):
2296         * bindings/js/JSConsoleCustom.cpp:
2297         (WebCore::JSConsole::profiles):
2298         * bindings/js/JSCoordinatesCustom.cpp:
2299         (WebCore::JSCoordinates::altitude):
2300         (WebCore::JSCoordinates::altitudeAccuracy):
2301         (WebCore::JSCoordinates::heading):
2302         (WebCore::JSCoordinates::speed):
2303         * bindings/js/JSCustomPositionCallback.cpp:
2304         (WebCore::JSCustomPositionCallback::handleEvent):
2305         * bindings/js/JSCustomPositionErrorCallback.cpp:
2306         (WebCore::JSCustomPositionErrorCallback::handleEvent):
2307         * bindings/js/JSCustomSQLStatementCallback.cpp:
2308         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2309         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2310         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2311         * bindings/js/JSCustomSQLTransactionCallback.cpp:
2312         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2313         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2314         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2315         * bindings/js/JSCustomVoidCallback.cpp:
2316         (WebCore::JSCustomVoidCallback::handleEvent):
2317         (WebCore::toVoidCallback):
2318         * bindings/js/JSCustomVoidCallback.h:
2319         * bindings/js/JSCustomXPathNSResolver.cpp:
2320         (WebCore::JSCustomXPathNSResolver::create):
2321         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2322         * bindings/js/JSCustomXPathNSResolver.h:
2323         * bindings/js/JSDOMApplicationCacheCustom.cpp:
2324         (WebCore::JSDOMApplicationCache::hasItem):
2325         (WebCore::JSDOMApplicationCache::add):
2326         (WebCore::JSDOMApplicationCache::remove):
2327         (WebCore::JSDOMApplicationCache::addEventListener):
2328         (WebCore::JSDOMApplicationCache::removeEventListener):
2329         * bindings/js/JSDOMBinding.cpp:
2330         (WebCore::jsStringOrNull):
2331         (WebCore::jsOwnedStringOrNull):
2332         (WebCore::jsStringOrUndefined):
2333         (WebCore::jsStringOrFalse):
2334         (WebCore::valueToStringWithNullCheck):
2335         (WebCore::valueToStringWithUndefinedOrNullCheck):
2336         (WebCore::reportException):
2337         (WebCore::reportCurrentException):
2338         (WebCore::setDOMException):
2339         (WebCore::objectToStringFunctionGetter):
2340         * bindings/js/JSDOMBinding.h:
2341         (WebCore::getDOMObjectWrapper):
2342         (WebCore::getDOMNodeWrapper):
2343         (WebCore::toJS):
2344         * bindings/js/JSDOMGlobalObject.cpp:
2345         (WebCore::JSDOMGlobalObject::findJSEventListener):
2346         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
2347         (WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
2348         * bindings/js/JSDOMGlobalObject.h:
2349         * bindings/js/JSDOMStringListCustom.cpp:
2350         (WebCore::JSDOMStringList::getByIndex):
2351         (WebCore::JSDOMStringList::item):
2352         * bindings/js/JSDOMWindowBase.cpp:
2353         (WebCore::JSDOMWindowBase::childFrameGetter):
2354         (WebCore::JSDOMWindowBase::indexGetter):
2355         (WebCore::JSDOMWindowBase::namedItemGetter):
2356         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
2357         (WebCore::JSDOMWindowBase::put):
2358         (WebCore::JSDOMWindowBase::setReturnValueSlot):
2359         (WebCore::toJS):
2360         (WebCore::toJSDOMWindow):
2361         * bindings/js/JSDOMWindowBase.h:
2362         * bindings/js/JSDOMWindowCustom.cpp:
2363         (WebCore::JSDOMWindow::lookupGetter):
2364         (WebCore::JSDOMWindow::lookupSetter):
2365         (WebCore::JSDOMWindow::history):
2366         (WebCore::JSDOMWindow::location):
2367         (WebCore::JSDOMWindow::setLocation):
2368         (WebCore::JSDOMWindow::crypto):
2369         (WebCore::JSDOMWindow::event):
2370         (WebCore::JSDOMWindow::image):
2371         (WebCore::JSDOMWindow::option):
2372         (WebCore::JSDOMWindow::audio):
2373         (WebCore::JSDOMWindow::webKitPoint):
2374         (WebCore::JSDOMWindow::webKitCSSMatrix):
2375         (WebCore::JSDOMWindow::xmlHttpRequest):
2376         (WebCore::JSDOMWindow::xsltProcessor):
2377         (WebCore::JSDOMWindow::messageChannel):
2378         (WebCore::JSDOMWindow::worker):
2379         (WebCore::createWindow):
2380         (WebCore::JSDOMWindow::open):
2381         (WebCore::JSDOMWindow::showModalDialog):
2382         (WebCore::JSDOMWindow::postMessage):
2383         (WebCore::JSDOMWindow::setTimeout):
2384         (WebCore::JSDOMWindow::setInterval):
2385         (WebCore::JSDOMWindow::atob):
2386         (WebCore::JSDOMWindow::btoa):
2387         (WebCore::JSDOMWindow::addEventListener):
2388         (WebCore::JSDOMWindow::removeEventListener):
2389         (WebCore::toDOMWindow):
2390         * bindings/js/JSDOMWindowCustom.h:
2391         (WebCore::nonCachingStaticFunctionGetter):
2392         (WebCore::JSDOMWindow::customPut):
2393         * bindings/js/JSDOMWindowShell.cpp:
2394         (WebCore::JSDOMWindowShell::put):
2395         (WebCore::JSDOMWindowShell::putWithAttributes):
2396         (WebCore::JSDOMWindowShell::lookupGetter):
2397         (WebCore::JSDOMWindowShell::lookupSetter):
2398         (WebCore::toJS):
2399         * bindings/js/JSDOMWindowShell.h:
2400         (WebCore::JSDOMWindowShell::createStructure):
2401         * bindings/js/JSDatabaseCustom.cpp:
2402         (WebCore::JSDatabase::changeVersion):
2403         (WebCore::JSDatabase::transaction):
2404         * bindings/js/JSDocumentCustom.cpp:
2405         (WebCore::JSDocument::location):
2406         (WebCore::JSDocument::setLocation):
2407         (WebCore::toJS):
2408         * bindings/js/JSElementCustom.cpp:
2409         (WebCore::JSElement::setAttribute):
2410         (WebCore::JSElement::setAttributeNode):
2411         (WebCore::JSElement::setAttributeNS):
2412         (WebCore::JSElement::setAttributeNodeNS):
2413         (WebCore::toJSNewlyCreated):
2414         * bindings/js/JSEventCustom.cpp:
2415         (WebCore::JSEvent::clipboardData):
2416         (WebCore::toJS):
2417         * bindings/js/JSEventListener.cpp:
2418         (WebCore::JSEventListener::handleEvent):
2419         * bindings/js/JSEventTarget.cpp:
2420         (WebCore::toJS):
2421         (WebCore::toEventTarget):
2422         * bindings/js/JSEventTarget.h:
2423         * bindings/js/JSEventTargetBase.h:
2424         * bindings/js/JSGeolocationCustom.cpp:
2425         (WebCore::createPositionOptions):
2426         (WebCore::JSGeolocation::getCurrentPosition):
2427         (WebCore::JSGeolocation::watchPosition):
2428         * bindings/js/JSHTMLAllCollection.h:
2429         (WebCore::JSHTMLAllCollection::createStructure):
2430         * bindings/js/JSHTMLAppletElementCustom.cpp:
2431         (WebCore::JSHTMLAppletElement::customPut):
2432         (WebCore::JSHTMLAppletElement::nameGetter):
2433         * bindings/js/JSHTMLCollectionCustom.cpp:
2434         (WebCore::getNamedItems):
2435         (WebCore::callHTMLCollection):
2436         (WebCore::JSHTMLCollection::nameGetter):
2437         (WebCore::JSHTMLCollection::item):
2438         (WebCore::JSHTMLCollection::namedItem):
2439         (WebCore::toJS):
2440         * bindings/js/JSHTMLDocumentCustom.cpp:
2441         (WebCore::JSHTMLDocument::nameGetter):
2442         (WebCore::JSHTMLDocument::all):
2443         (WebCore::JSHTMLDocument::setAll):
2444         (WebCore::JSHTMLDocument::open):
2445         (WebCore::JSHTMLDocument::write):
2446         (WebCore::JSHTMLDocument::writeln):
2447         * bindings/js/JSHTMLEmbedElementCustom.cpp:
2448         (WebCore::JSHTMLEmbedElement::customPut):
2449         (WebCore::JSHTMLEmbedElement::nameGetter):
2450         * bindings/js/JSHTMLFormElementCustom.cpp:
2451         (WebCore::JSHTMLFormElement::nameGetter):
2452         (WebCore::JSHTMLFormElement::submit):
2453         * bindings/js/JSHTMLFrameElementCustom.cpp:
2454         (WebCore::JSHTMLFrameElement::setSrc):
2455         (WebCore::JSHTMLFrameElement::setLocation):
2456         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
2457         (WebCore::JSHTMLFrameSetElement::nameGetter):
2458         * bindings/js/JSHTMLIFrameElementCustom.cpp:
2459         (WebCore::JSHTMLIFrameElement::setSrc):
2460         * bindings/js/JSHTMLInputElementCustom.cpp:
2461         (WebCore::JSHTMLInputElement::selectionStart):
2462         (WebCore::JSHTMLInputElement::setSelectionStart):
2463         (WebCore::JSHTMLInputElement::selectionEnd):
2464         (WebCore::JSHTMLInputElement::setSelectionEnd):
2465         (WebCore::JSHTMLInputElement::setSelectionRange):
2466         * bindings/js/JSHTMLObjectElementCustom.cpp:
2467         (WebCore::JSHTMLObjectElement::customPut):
2468         (WebCore::JSHTMLObjectElement::nameGetter):
2469         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2470         (WebCore::JSHTMLOptionsCollection::length):
2471         (WebCore::JSHTMLOptionsCollection::setLength):
2472         (WebCore::JSHTMLOptionsCollection::indexSetter):
2473         (WebCore::JSHTMLOptionsCollection::add):
2474         (WebCore::JSHTMLOptionsCollection::remove):
2475         * bindings/js/JSHTMLSelectElementCustom.cpp:
2476         (WebCore::JSHTMLSelectElement::remove):
2477         (WebCore::selectIndexSetter):
2478         (WebCore::JSHTMLSelectElement::indexSetter):
2479         * bindings/js/JSHTMLSelectElementCustom.h:
2480         * bindings/js/JSHistoryCustom.cpp:
2481         (WebCore::nonCachingStaticBackFunctionGetter):
2482         (WebCore::nonCachingStaticForwardFunctionGetter):
2483         (WebCore::nonCachingStaticGoFunctionGetter):
2484         (WebCore::JSHistory::customPut):
2485         * bindings/js/JSImageDataCustom.cpp:
2486         (WebCore::toJS):
2487         * bindings/js/JSInspectedObjectWrapper.cpp:
2488         (WebCore::JSInspectedObjectWrapper::wrap):
2489         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
2490         * bindings/js/JSInspectedObjectWrapper.h:
2491         (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
2492         * bindings/js/JSInspectorCallbackWrapper.cpp:
2493         (WebCore::JSInspectorCallbackWrapper::wrap):
2494         (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
2495         * bindings/js/JSInspectorCallbackWrapper.h:
2496         (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
2497         * bindings/js/JSInspectorControllerCustom.cpp:
2498         (WebCore::JSInspectorController::highlightDOMNode):
2499         (WebCore::JSInspectorController::addResourceSourceToFrame):
2500         (WebCore::JSInspectorController::addSourceToFrame):
2501         (WebCore::JSInspectorController::getResourceDocumentNode):
2502         (WebCore::JSInspectorController::search):
2503         (WebCore::JSInspectorController::databaseTableNames):
2504         (WebCore::JSInspectorController::inspectedWindow):
2505         (WebCore::JSInspectorController::setting):
2506         (WebCore::JSInspectorController::setSetting):
2507         (WebCore::JSInspectorController::wrapCallback):
2508         (WebCore::JSInspectorController::currentCallFrame):
2509         (WebCore::JSInspectorController::profiles):
2510         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2511         (WebCore::JSJavaScriptCallFrame::evaluate):
2512         (WebCore::JSJavaScriptCallFrame::thisObject):
2513         (WebCore::JSJavaScriptCallFrame::type):
2514         (WebCore::JSJavaScriptCallFrame::scopeChain):
2515         * bindings/js/JSLazyEventListener.cpp:
2516         (WebCore::JSLazyEventListener::parseCode):
2517         * bindings/js/JSLocationCustom.cpp:
2518         (WebCore::nonCachingStaticReplaceFunctionGetter):
2519         (WebCore::nonCachingStaticReloadFunctionGetter):
2520         (WebCore::nonCachingStaticAssignFunctionGetter):
2521         (WebCore::JSLocation::customPut):
2522         (WebCore::JSLocation::setHref):
2523         (WebCore::JSLocation::setProtocol):
2524         (WebCore::JSLocation::setHost):
2525         (WebCore::JSLocation::setHostname):
2526         (WebCore::JSLocation::setPort):
2527         (WebCore::JSLocation::setPathname):
2528         (WebCore::JSLocation::setSearch):
2529         (WebCore::JSLocation::setHash):
2530         (WebCore::JSLocation::replace):
2531         (WebCore::JSLocation::reload):
2532         (WebCore::JSLocation::assign):
2533         (WebCore::JSLocation::toString):
2534         (WebCore::JSLocationPrototype::customPut):
2535         * bindings/js/JSMessagePortCustom.cpp:
2536         (WebCore::JSMessagePort::startConversation):
2537         (WebCore::JSMessagePort::addEventListener):
2538         (WebCore::JSMessagePort::removeEventListener):
2539         * bindings/js/JSMimeTypeArrayCustom.cpp:
2540         (WebCore::JSMimeTypeArray::nameGetter):
2541         * bindings/js/JSNamedNodeMapCustom.cpp:
2542         (WebCore::JSNamedNodeMap::nameGetter):
2543         * bindings/js/JSNamedNodesCollection.cpp:
2544         (WebCore::JSNamedNodesCollection::lengthGetter):
2545         (WebCore::JSNamedNodesCollection::indexGetter):
2546         * bindings/js/JSNamedNodesCollection.h:
2547         (WebCore::JSNamedNodesCollection::createStructure):
2548         * bindings/js/JSNavigatorCustom.cpp:
2549         (WebCore::needsYouTubeQuirk):
2550         (WebCore::JSNavigator::appVersion):
2551         * bindings/js/JSNodeCustom.cpp:
2552         (WebCore::JSNode::insertBefore):
2553         (WebCore::JSNode::replaceChild):
2554         (WebCore::JSNode::removeChild):
2555         (WebCore::JSNode::appendChild):
2556         (WebCore::JSNode::addEventListener):
2557         (WebCore::JSNode::removeEventListener):
2558         (WebCore::createWrapper):
2559         (WebCore::toJSNewlyCreated):
2560         (WebCore::toJS):
2561         * bindings/js/JSNodeFilterCondition.cpp:
2562         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
2563         (WebCore::JSNodeFilterCondition::acceptNode):
2564         * bindings/js/JSNodeFilterCondition.h:
2565         (WebCore::JSNodeFilterCondition::create):
2566         * bindings/js/JSNodeFilterCustom.cpp:
2567         (WebCore::JSNodeFilter::acceptNode):
2568         (WebCore::toNodeFilter):
2569         * bindings/js/JSNodeIteratorCustom.cpp:
2570         (WebCore::JSNodeIterator::nextNode):
2571         (WebCore::JSNodeIterator::previousNode):
2572         * bindings/js/JSNodeListCustom.cpp:
2573         (WebCore::callNodeList):
2574         (WebCore::JSNodeList::nameGetter):
2575         * bindings/js/JSPluginArrayCustom.cpp:
2576         (WebCore::JSPluginArray::nameGetter):
2577         * bindings/js/JSPluginCustom.cpp:
2578         (WebCore::JSPlugin::nameGetter):
2579         * bindings/js/JSPluginElementFunctions.cpp:
2580         (WebCore::runtimeObjectGetter):
2581         (WebCore::runtimeObjectPropertyGetter):
2582         (WebCore::runtimeObjectCustomPut):
2583         (WebCore::callPlugin):
2584         * bindings/js/JSPluginElementFunctions.h:
2585         * bindings/js/JSQuarantinedObjectWrapper.cpp:
2586         (WebCore::JSQuarantinedObjectWrapper::asWrapper):
2587         (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter):
2588         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
2589         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
2590         (WebCore::JSQuarantinedObjectWrapper::put):
2591         (WebCore::JSQuarantinedObjectWrapper::construct):
2592         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
2593         (WebCore::JSQuarantinedObjectWrapper::call):
2594         * bindings/js/JSQuarantinedObjectWrapper.h:
2595         (WebCore::JSQuarantinedObjectWrapper::createStructure):
2596         * bindings/js/JSRGBColor.cpp:
2597         (WebCore::getJSRGBColor):
2598         (jsRGBColorRed):
2599         (jsRGBColorGreen):
2600         (jsRGBColorBlue):
2601         * bindings/js/JSRGBColor.h:
2602         (WebCore::JSRGBColor::createStructure):
2603         * bindings/js/JSSQLResultSetRowListCustom.cpp:
2604         (WebCore::JSSQLResultSetRowList::item):
2605         * bindings/js/JSSQLTransactionCustom.cpp:
2606         (WebCore::JSSQLTransaction::executeSql):
2607         * bindings/js/JSSVGElementInstanceCustom.cpp:
2608         (WebCore::JSSVGElementInstance::addEventListener):
2609         (WebCore::JSSVGElementInstance::removeEventListener):
2610         (WebCore::toJS):
2611         * bindings/js/JSSVGLengthCustom.cpp:
2612         (WebCore::JSSVGLength::value):
2613         (WebCore::JSSVGLength::convertToSpecifiedUnits):
2614         * bindings/js/JSSVGMatrixCustom.cpp:
2615         (WebCore::JSSVGMatrix::inverse):
2616         (WebCore::JSSVGMatrix::rotateFromVector):
2617         * bindings/js/JSSVGPathSegCustom.cpp:
2618         (WebCore::toJS):
2619         * bindings/js/JSSVGPathSegListCustom.cpp:
2620         (WebCore::JSSVGPathSegList::clear):
2621         (WebCore::JSSVGPathSegList::initialize):
2622         (WebCore::JSSVGPathSegList::getItem):
2623         (WebCore::JSSVGPathSegList::insertItemBefore):
2624         (WebCore::JSSVGPathSegList::replaceItem):
2625         (WebCore::JSSVGPathSegList::removeItem):
2626         (WebCore::JSSVGPathSegList::appendItem):
2627         * bindings/js/JSSVGPointListCustom.cpp:
2628         (WebCore::finishGetter):
2629         (WebCore::finishSetter):
2630         (WebCore::finishSetterReadOnlyResult):
2631         (WebCore::JSSVGPointList::clear):
2632         (WebCore::JSSVGPointList::initialize):
2633         (WebCore::JSSVGPointList::getItem):
2634         (WebCore::JSSVGPointList::insertItemBefore):
2635         (WebCore::JSSVGPointList::replaceItem):
2636         (WebCore::JSSVGPointList::removeItem):
2637         (WebCore::JSSVGPointList::appendItem):
2638         * bindings/js/JSSVGTransformListCustom.cpp:
2639         (WebCore::finishGetter):
2640         (WebCore::finishSetter):
2641         (WebCore::finishSetterReadOnlyResult):
2642         (WebCore::JSSVGTransformList::clear):
2643         (WebCore::JSSVGTransformList::initialize):
2644         (WebCore::JSSVGTransformList::getItem):
2645         (WebCore::JSSVGTransformList::insertItemBefore):
2646         (WebCore::JSSVGTransformList::replaceItem):
2647         (WebCore::JSSVGTransformList::removeItem):
2648         (WebCore::JSSVGTransformList::appendItem):
2649         * bindings/js/JSStorageCustom.cpp:
2650         (WebCore::JSStorage::nameGetter):
2651         (WebCore::JSStorage::deleteProperty):
2652         (WebCore::JSStorage::customPut):
2653         * bindings/js/JSStyleSheetCustom.cpp:
2654         (WebCore::toJS):
2655         * bindings/js/JSStyleSheetListCustom.cpp:
2656         (WebCore::JSStyleSheetList::nameGetter):
2657         * bindings/js/JSTextCustom.cpp:
2658         (WebCore::toJSNewlyCreated):
2659         * bindings/js/JSTreeWalkerCustom.cpp:
2660         (WebCore::JSTreeWalker::parentNode):
2661         (WebCore::JSTreeWalker::firstChild):
2662         (WebCore::JSTreeWalker::lastChild):
2663         (WebCore::JSTreeWalker::nextSibling):
2664         (WebCore::JSTreeWalker::previousSibling):
2665         (WebCore::JSTreeWalker::previousNode):
2666         (WebCore::JSTreeWalker::nextNode):
2667         * bindings/js/JSWorkerContextCustom.cpp:
2668         (WebCore::JSWorkerContext::self):
2669         (WebCore::JSWorkerContext::setSelf):
2670         (WebCore::JSWorkerContext::xmlHttpRequest):
2671         (WebCore::JSWorkerContext::importScripts):
2672         (WebCore::JSWorkerContext::addEventListener):
2673         (WebCore::JSWorkerContext::removeEventListener):
2674         (WebCore::JSWorkerContext::setTimeout):
2675         (WebCore::JSWorkerContext::setInterval):
2676         * bindings/js/JSWorkerCustom.cpp:
2677         (WebCore::JSWorker::addEventListener):
2678         (WebCore::JSWorker::removeEventListener):
2679         * bindings/js/JSXMLHttpRequestCustom.cpp:
2680         (WebCore::JSXMLHttpRequest::open):
2681         (WebCore::JSXMLHttpRequest::setRequestHeader):
2682         (WebCore::JSXMLHttpRequest::send):
2683         (WebCore::JSXMLHttpRequest::getResponseHeader):
2684         (WebCore::JSXMLHttpRequest::overrideMimeType):
2685         (WebCore::JSXMLHttpRequest::addEventListener):
2686         (WebCore::JSXMLHttpRequest::removeEventListener):
2687         (WebCore::JSXMLHttpRequest::responseText):
2688         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2689         (WebCore::JSXMLHttpRequestUpload::addEventListener):
2690         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
2691         * bindings/js/JSXSLTProcessorCustom.cpp:
2692         (WebCore::JSXSLTProcessor::importStylesheet):
2693         (WebCore::JSXSLTProcessor::transformToFragment):
2694         (WebCore::JSXSLTProcessor::transformToDocument):
2695         (WebCore::JSXSLTProcessor::setParameter):
2696         (WebCore::JSXSLTProcessor::getParameter):
2697         (WebCore::JSXSLTProcessor::removeParameter):
2698         * bindings/js/ScheduledAction.cpp:
2699         (WebCore::ScheduledAction::create):
2700         (WebCore::ScheduledAction::ScheduledAction):
2701         (WebCore::ScheduledAction::executeFunctionInContext):
2702         * bindings/js/ScheduledAction.h:
2703         * bindings/js/ScriptCallStack.cpp:
2704         (WebCore::ScriptCallStack::ScriptCallStack):
2705         (WebCore::ScriptCallStack::initialize):
2706         * bindings/js/ScriptCallStack.h:
2707         * bindings/js/ScriptController.cpp:
2708         (WebCore::ScriptController::jsObjectForPluginElement):
2709         * bindings/js/ScriptFunctionCall.cpp:
2710         (WebCore::ScriptFunctionCall::appendArgument):
2711         (WebCore::ScriptFunctionCall::call):
2712         (WebCore::ScriptFunctionCall::construct):
2713         * bindings/js/ScriptFunctionCall.h:
2714         * bindings/js/ScriptObject.cpp:
2715         (WebCore::ScriptGlobalObject::get):
2716         * bindings/js/ScriptValue.h:
2717         (WebCore::ScriptValue::ScriptValue):
2718         (WebCore::ScriptValue::jsValue):
2719         * bindings/objc/WebScriptObject.mm:
2720         (-[WebScriptObject callWebScriptMethod:withArguments:]):
2721         (-[WebScriptObject evaluateWebScript:]):
2722         (-[WebScriptObject valueForKey:]):
2723         (-[WebScriptObject webScriptValueAtIndex:]):
2724         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
2725         * bindings/objc/WebScriptObjectPrivate.h:
2726         * bridge/NP_jsobject.cpp:
2727         (_NPN_InvokeDefault):
2728         (_NPN_Invoke):
2729         (_NPN_Evaluate):
2730         (_NPN_GetProperty):
2731         (_NPN_HasMethod):
2732         (_NPN_Construct):
2733         * bridge/c/c_instance.cpp:
2734         (JSC::Bindings::CInstance::invokeMethod):
2735         (JSC::Bindings::CInstance::invokeDefaultMethod):
2736         (JSC::Bindings::CInstance::invokeConstruct):
2737         (JSC::Bindings::CInstance::defaultValue):
2738         (JSC::Bindings::CInstance::stringValue):
2739         (JSC::Bindings::CInstance::numberValue):
2740         (JSC::Bindings::CInstance::booleanValue):
2741         (JSC::Bindings::CInstance::valueOf):
2742         * bridge/c/c_instance.h:
2743         * bridge/c/c_runtime.cpp:
2744         (JSC::Bindings::CField::valueFromInstance):
2745         (JSC::Bindings::CField::setValueToInstance):
2746         * bridge/c/c_runtime.h:
2747         * bridge/c/c_utility.cpp:
2748         (JSC::Bindings::convertValueToNPVariant):
2749         (JSC::Bindings::convertNPVariantToValue):
2750         * bridge/c/c_utility.h:
2751         * bridge/jni/jni_instance.cpp:
2752         (JavaInstance::stringValue):
2753         (JavaInstance::numberValue):
2754         (JavaInstance::booleanValue):
2755         (JavaInstance::invokeMethod):
2756         (JavaInstance::defaultValue):
2757         (JavaInstance::valueOf):
2758         * bridge/jni/jni_instance.h:
2759         * bridge/jni/jni_jsobject.h:
2760         * bridge/jni/jni_jsobject.mm:
2761         (JavaJSObject::call):
2762         (JavaJSObject::eval):
2763         (JavaJSObject::getMember):
2764         (JavaJSObject::getSlot):
2765         (JavaJSObject::convertValueToJObject):
2766         (JavaJSObject::convertJObjectToValue):
2767         * bridge/jni/jni_objc.mm:
2768         (JSC::Bindings::dispatchJNICall):
2769         * bridge/jni/jni_runtime.cpp:
2770         (JavaArray::convertJObjectToArray):
2771         (JavaField::dispatchValueFromInstance):
2772         (JavaField::valueFromInstance):
2773         (JavaField::dispatchSetValueToInstance):
2774         (JavaField::setValueToInstance):
2775         (JavaArray::setValueAt):
2776         (JavaArray::valueAt):
2777         * bridge/jni/jni_runtime.h:
2778         * bridge/jni/jni_utility.cpp:
2779         (JSC::Bindings::convertArrayInstanceToJavaArray):
2780         (JSC::Bindings::convertValueToJValue):
2781         * bridge/jni/jni_utility.h:
2782         * bridge/objc/WebScriptObject.h:
2783         * bridge/objc/objc_class.h:
2784         * bridge/objc/objc_class.mm:
2785         (JSC::Bindings::ObjcClass::fallbackObject):
2786         * bridge/objc/objc_instance.h:
2787         * bridge/objc/objc_instance.mm:
2788         (ObjcInstance::invokeMethod):
2789         (ObjcInstance::invokeDefaultMethod):
2790         (ObjcInstance::setValueOfUndefinedField):
2791         (ObjcInstance::getValueOfUndefinedField):
2792         (ObjcInstance::defaultValue):
2793         (ObjcInstance::stringValue):
2794         (ObjcInstance::numberValue):
2795         (ObjcInstance::booleanValue):
2796         (ObjcInstance::valueOf):
2797         * bridge/objc/objc_runtime.h:
2798         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
2799         * bridge/objc/objc_runtime.mm:
2800         (JSC::Bindings::ObjcField::valueFromInstance):
2801         (JSC::Bindings::convertValueToObjcObject):
2802         (JSC::Bindings::ObjcField::setValueToInstance):
2803         (JSC::Bindings::ObjcArray::setValueAt):
2804         (JSC::Bindings::ObjcArray::valueAt):
2805         (JSC::Bindings::ObjcFallbackObjectImp::put):
2806         (JSC::Bindings::callObjCFallbackObject):
2807         (JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
2808         * bridge/objc/objc_utility.h:
2809         * bridge/objc/objc_utility.mm:
2810         (JSC::Bindings::convertValueToObjcValue):
2811         (JSC::Bindings::convertNSStringToString):
2812         (JSC::Bindings::convertObjcValueToValue):
2813         * bridge/runtime.h:
2814         (JSC::Bindings::Class::fallbackObject):
2815         (JSC::Bindings::Instance::setValueOfUndefinedField):
2816         (JSC::Bindings::Instance::invokeDefaultMethod):
2817         (JSC::Bindings::Instance::invokeConstruct):
2818         (JSC::Bindings::Instance::put):
2819         * bridge/runtime_array.cpp:
2820         (JSC::RuntimeArray::lengthGetter):
2821         (JSC::RuntimeArray::indexGetter):
2822         (JSC::RuntimeArray::put):
2823         * bridge/runtime_array.h:
2824         (JSC::RuntimeArray::createStructure):
2825         * bridge/runtime_method.cpp:
2826         (JSC::RuntimeMethod::lengthGetter):
2827         (JSC::callRuntimeMethod):
2828         * bridge/runtime_method.h:
2829         (JSC::RuntimeMethod::createStructure):
2830         * bridge/runtime_object.cpp:
2831         (JSC::RuntimeObjectImp::fallbackObjectGetter):
2832         (JSC::RuntimeObjectImp::fieldGetter):
2833         (JSC::RuntimeObjectImp::methodGetter):
2834         (JSC::RuntimeObjectImp::put):
2835         (JSC::RuntimeObjectImp::defaultValue):
2836         (JSC::callRuntimeObject):
2837         (JSC::callRuntimeConstructor):
2838         * bridge/runtime_object.h:
2839         (JSC::RuntimeObjectImp::createStructure):
2840         * inspector/JavaScriptCallFrame.cpp:
2841         (WebCore::JavaScriptCallFrame::evaluate):
2842         * inspector/JavaScriptCallFrame.h:
2843         * inspector/JavaScriptProfile.cpp:
2844         (WebCore::toJS):
2845         * inspector/JavaScriptProfile.h:
2846         * inspector/JavaScriptProfileNode.cpp:
2847         (WebCore::toJS):
2848         * inspector/JavaScriptProfileNode.h:
2849
2850 2009-05-01  Dimitri Glazkov  <dglazkov@chromium.org>
2851
2852         Reviewed by Eric Seidel.
2853
2854         https://bugs.webkit.org/show_bug.cgi?id=25485
2855         Only use visitedURL in Qt. This is a follow-up change to http://trac.webkit.org/changeset/43052,
2856         which broke Chromium build.
2857
2858         * css/CSSStyleSelector.cpp:
2859         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Moved guards around to
2860             provide separate code paths for Qt and non-Qt ports. Also restored original
2861             order of execution.
2862
2863 2009-05-01  Anders Carlsson  <andersca@apple.com>
2864
2865         Reviewed by Adele Peterson.
2866
2867         <rdar://problem/6839222>
2868         CrashTracer: Lots of crashes in Safari in hash table remove function inside DocumentLoader::removeSubresourceLoader
2869         
2870         After calling m_client->didFail(), check if the subresource loader has reached its terminal state. If that's the case,
2871         return early to avoid calling removeSubresourceLoader on a null document loader. I don't think this is allowed to happen
2872         which is why I've added the ASSERT.
2873         
2874         * loader/SubresourceLoader.cpp:
2875         (WebCore::SubresourceLoader::didCancel):
2876
2877 2009-05-01  Timothy Hatcher  <timothy@apple.com>
2878
2879         Disallow the deletion UI for elements that have any overflow clipping.
2880         Also disallow the UI for the body element it isn't practical to delete,
2881         and the deletion UI would be clipped.
2882
2883         <rdar://problem/6840161> Deletion UI can be clipped by some
2884         elements (with overflow: hidden)
2885
2886         Reviewed by Darin Adler.
2887
2888         * editing/DeleteButtonController.cpp:
2889         (WebCore::isDeletableElement):
2890
2891 2009-05-01  Timothy Hatcher  <timothy@apple.com>
2892
2893         Decrease the minimum height for deleteable elements to 16px, and increase the
2894         minimum width to 48px. This allows deleting shorter items like navigation bars.
2895
2896         <rdar://problem/6840735> Deletion UI does not show up for short
2897         elements (22px or less)
2898
2899         Reviewed by Adele Peterson.
2900
2901         * editing/DeleteButtonController.cpp:
2902         (WebCore::isDeletableElement):
2903
2904 2009-05-01  Timothy Hatcher  <timothy@apple.com>
2905
2906         Clean up the comments and logic in the code for picking a
2907         deleteable element for the deletion UI.
2908
2909         Reviewed by Adele Peterson.
2910
2911         * editing/DeleteButtonController.cpp:
2912         (WebCore::isDeletableElement):
2913
2914 2009-05-01  Kevin McCullough  <kmccullough@apple.com>
2915
2916         Reviewed by Adele Peterson and Darin Adler.
2917
2918         <rdar://problem/4815598> Stuck in double spacing mode after pasting a
2919         paragraph with padding/margin (or table mode !)
2920
2921         A lot of the issues in this bug were resolved on Mail's side by using
2922         WebKit to convert to plain text.  This is the final issue, that floating
2923         style stays on copied nodes causing them to float when they are pasted
2924         which is not what the user intended.
2925
2926         * editing/markup.cpp:
2927         (WebCore::removeExteriorStyles):
2928         (WebCore::):
2929         (WebCore::appendStartMarkup):
2930         (WebCore::getStartMarkup):
2931         (WebCore::createMarkup):
2932
2933 2009-05-01  Pavel Feldman  <pfeldman@chromium.org>
2934
2935         Reviewed by Timothy Hatcher.
2936
2937         Add a FrameLoaderClient callback for the ResourceRetrievedByXMLHttpRequest.
2938         This is the only resource-related information that is available in InspectorController
2939         and is missing in the FrameLoaderClient.
2940
2941         https://bugs.webkit.org/show_bug.cgi?id=25347
2942
2943         * WebCore.xcodeproj/project.pbxproj: Made ScriptSource private.
2944         * dom/Document.cpp: Made a call to a client along with the call to the InspectorController.
2945         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2946         * loader/EmptyClients.h: Added stub implementation.
2947         (WebCore::EmptyFrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest):
2948         * loader/FrameLoader.cpp: Call initiating dispatches.
2949         (WebCore::FrameLoader::resourceRetrievedByXMLHttpRequest):
2950         * loader/FrameLoader.h:
2951         * loader/FrameLoaderClient.h:
2952
2953 2009-04-30  Beth Dakin  <bdakin@apple.com>
2954
2955         Reviewed by Oliver Hunt.
2956
2957         Fix for <rdar://problem/6841106> REGRESSION: Crash drag selecting 
2958         To Do's in a Mail note (excessive recursion in mouse drag tracking)
2959
2960         Oliver's recent change to dragging seems to have revealed a long-
2961         time bug in passSubframeEventToSubframe where we did not set 
2962         m_sendingEventToSubview to true before calling 
2963         handleMouseMoveEvent() in the NSMouseMoved case. This patch fixes 
2964         that and adds ASSERTions around all of the places where 
2965         m_sendingEventToSubview is set to true and then false to make sure 
2966         we are not trampling its state.
2967
2968         * page/mac/EventHandlerMac.mm:
2969         (WebCore::EventHandler::eventLoopHandleMouseDragged):
2970         (WebCore::EventHandler::eventLoopHandleMouseUp):
2971         (WebCore::EventHandler::passSubframeEventToSubframe):
2972         (WebCore::EventHandler::passWheelEventToWidget):
2973
2974 2009-04-30  Eric Carlson  <eric.carlson@apple.com>
2975
2976         Reviewed by Simon Fraser.
2977         
2978         MediaDocument falls back to plug-in unnecessarily
2979         https://bugs.webkit.org/show_bug.cgi?id=25504
2980         <rdar://problem/6844702>
2981         
2982         Don't allow harmless media types to cause a MediaDocument to fall
2983         back to PluginDocument.
2984
2985         Test: media/video-document-types.html
2986
2987         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2988         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks): add timecode, timecode 64,
2989         odsm, and sdsm to allowed track types.
2990
2991         * platform/graphics/win/QTMovieWin.cpp:
2992         (QTMovieWin::disableUnsupportedTracks): Ditto.
2993
2994 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
2995
2996         Reviewed by Eric Seidel.
2997
2998         Add CHROMIUM guard to unfork Document.cpp
2999
3000         * dom/Document.cpp:
3001         (WebCore::Document::setFocusedNode): Added guard.
3002
3003 2009-04-30  David Kilzer  <ddkilzer@apple.com>
3004
3005         Use OwnPtr<HTMLParserQuirks> for m_parserQuirks
3006
3007         Reviewed by Geoff Garen.
3008
3009         * html/HTMLParser.cpp:
3010         (WebCore::HTMLParser::~HTMLParser): Removed unneeded code.
3011         * html/HTMLParser.h: Made m_parserQuirks an OwnPtr.
3012
3013 2009-04-30  David Kilzer  <ddkilzer@apple.com>
3014
3015         Provide a mechanism to create a quirks delegate for HTMLParser
3016
3017         Reviewed by David Hyatt.
3018
3019         No tests since there is no change in behavior.
3020
3021         HTMLParserQuirks.h defines an abstract base class that may be
3022         extended as needed.  The ChromeClient::createHTMLParserQuirks()
3023         factory method should be used to return an HTMLParserQuirks
3024         subclassed object when needed.
3025
3026         * WebCore.xcodeproj/project.pbxproj: Added HTMLParserQuirks.h.
3027         * html/HTMLParser.cpp:
3028         (WebCore::HTMLParser::HTMLParser): Initialize m_parserQuirks
3029         using ChromeClient::createHTMLParserQuirks().
3030         (WebCore::HTMLParser::~HTMLParser): Delete m_parserQuirks if
3031         set.
3032         (WebCore::HTMLParser::reset): Call HTMLParserQuirks::reset() if
3033         m_parserQuirks is set.
3034         (WebCore::HTMLParser::insertNode): Call
3035         HTMLParserQuirks::shouldInsertNode() if m_parserQuirks is set,
3036         and return early if it returns false.
3037         (WebCore::HTMLParser::popBlock): Call
3038         HTMLParserQuirks::shouldPopBlock() if m_parserQuirks is set, and
3039         return early if it returns false.
3040         * html/HTMLParser.h: Added m_parserQuirks.
3041         * html/HTMLParserQuirks.h: Added.
3042         (WebCore::HTMLParserQuirks::HTMLParserQuirks):
3043         (WebCore::HTMLParserQuirks::~HTMLParserQuirks):
3044         * loader/EmptyClients.h:
3045         (WebCore::EmptyChromeClient::createHTMLParserQuirks): Added.
3046         * page/ChromeClient.h:
3047         (WebCore::ChromeClient::createHTMLParserQuirks): Added.
3048
3049 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3050
3051         Reviewed by Eric Seidel.
3052
3053         https://bugs.webkit.org/show_bug.cgi?id=25492
3054         Add JSC guards around node wrapper cache calls. These are not used by V8.
3055
3056         Also, remove JSDOMBinding include, which is brought in by ScriptController.
3057
3058         * dom/Document.cpp:
3059         (WebCore::Document::~Document): Added JSC guard.
3060         * dom/Node.cpp:
3061         (WebCore::Node::setDocument): Ditto and removed JSDOMBinding include.
3062
3063 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3064
3065         Reviewed by Eric Seidel.
3066
3067         https://bugs.webkit.org/show_bug.cgi?id=25493
3068         Remove debugger/profiler custom method stubs, catching V8 bindings up to
3069         http://trac.webkit.org/changeset/43072.
3070
3071         * bindings/v8/custom/V8InspectorControllerCustom.cpp: Removed method stubs.
3072
3073 2009-04-30  Simon Fraser  <simon.fraser@apple.com>
3074
3075         Reviewed by Darin Adler
3076
3077         <rdar://problem/6839338> VoiceOver does not take into account transforms when drawing outlines
3078         
3079         Use transform-aware quad methods when computing the boundingBoxRect for
3080         an AccessibilityRenderObject. The code follows RenderObject::absoluteBoundingBoxRect().
3081
3082         Test: accessibility/transformed-element.html
3083
3084         * page/AccessibilityRenderObject.cpp:
3085         (WebCore::AccessibilityRenderObject::boundingBoxRect):
3086
3087 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3088
3089         Unreviewed, Chromium build fix.
3090
3091         Catch up to ScriptObject changes from http://trac.webkit.org/changeset/42512.
3092
3093         * bindings/v8/ScriptObject.cpp:
3094         (WebCore::ScriptGlobalObject::get): Renamed from getObject.
3095         (WebCore::ScriptGlobalObject::remove): Added.
3096         * bindings/v8/ScriptObject.h: Ditto.
3097
3098 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3099
3100         Unreviewed, build fix.
3101
3102         https://bugs.webkit.org/show_bug.cgi?id=25470
3103         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
3104
3105         * WebCore.pro: Fix copy-paste error.
3106
3107 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3108
3109         Unreviewed, build fix.
3110
3111         https://bugs.webkit.org/show_bug.cgi?id=25470
3112         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
3113
3114         * GNUmakefile.am: Add ENABLE_JAVASCRIPT_DEBUGGER definitions.
3115         * WebCore.pro: Ditto.
3116
3117 2009-04-02  Eric Seidel  <eric@webkit.org>
3118
3119         Reviewed by Darin Adler.
3120
3121         Change Position to pre-compute the AnchorType and store it.
3122         Also store a "legacy editing mode" bit on the Position.
3123         https://bugs.webkit.org/show_bug.cgi?id=24763
3124
3125         The old Postion(node, offset) constructor creates legacy positions
3126         but there are new constructors to create explicitly anchored positions
3127         which the next patch will use.
3128
3129         Once we fix all the "position-fixup" functions (like rangeCompliantEquivalent) to
3130         only affect legacy positions, we will be able to distinguish
3131         between [table, 1] and [table, after] in the code correctly!
3132
3133         * WebCore.base.exp:
3134         * WebCore.xcodeproj/project.pbxproj:
3135         * dom/Position.cpp:
3136         (WebCore::Position::Position):
3137         (WebCore::Position::moveToPosition):
3138         (WebCore::Position::moveToOffset):
3139         (WebCore::Position::anchorTypeForLegacyEditingPosition):
3140         (WebCore::Position::element):
3141         * dom/Position.h:
3142         (WebCore::Position::):
3143         (WebCore::Position::Position):
3144         (WebCore::Position::anchorType):
3145         (WebCore::Position::deprecatedEditingOffset):
3146
3147 2009-04-30  Sam Weinig  <sam@webkit.org>
3148
3149         Reviewed by Alexey Proskuryakov.
3150
3151         Fix bug where the WorkerLocation and WorkerNavigator wrappers would be
3152         collected even if the WorkerContext is still alive.
3153
3154         Test: fast/workers/worker-context-gc.html
3155
3156         * bindings/js/JSWorkerContextCustom.cpp:
3157         (WebCore::JSWorkerContext::mark):
3158         * workers/WorkerContext.cpp:
3159         (WebCore::WorkerContext::WorkerContext):
3160         (WebCore::WorkerContext::completeURL):
3161         (WebCore::WorkerContext::location):
3162         * workers/WorkerContext.h:
3163         (WebCore::WorkerContext::optionalNavigator):
3164         (WebCore::WorkerContext::optionalLocation):
3165
3166 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3167
3168         Reviewed by Timothy Hatcher.
3169
3170         https://bugs.webkit.org/show_bug.cgi?id=25470
3171         Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
3172
3173         * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER.
3174         * WebCore.vcproj/build-generated-files.sh: Ditto.
3175         * bindings/js/JSConsoleCustom.cpp: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
3176         * bindings/js/JSDOMWindowBase.cpp: Ditto.
3177         * bindings/js/JSInspectorControllerCustom.cpp: Ditto.
3178         * inspector/InspectorController.cpp: Moved profiler/debugger methods under
3179             ENABLE(JAVASCRIPT_DEBUGGER) flag.
3180         * inspector/InspectorController.h: Ditto.
3181         * inspector/InspectorController.idl: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
3182         * page/Console.cpp: Replaced USE(JSC) with ENABLE(JAVASCRIPT_DEBUGGER) guard.
3183
3184 2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
3185
3186         Unreviewed, build fix.
3187
3188         https://bugs.webkit.org/show_bug.cgi?id=25275
3189         This patch snuck in a re-definition of a local.
3190
3191         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3192         (WebCore::NAMED_PROPERTY_GETTER): Removed re-definition.
3193
3194 2009-04-30  Sam Weinig  <sam@webkit.org>
3195
3196         Reviewed by Mark Rowe.
3197
3198         Fix a leak introduced yesterday.  Don't allocate a ScheduledAction
3199         if the toString()ing throws an exception.
3200
3201         * bindings/js/ScheduledAction.cpp:
3202         (WebCore::ScheduledAction::create):
3203
3204 2009-04-30  Alexey Proskuryakov  <ap@webkit.org>
3205
3206         Reviewed by Darin Adler.
3207
3208         https://bugs.webkit.org/show_bug.cgi?id=25379
3209         <rdar://problem/6809460> REGRESSION (r41772): Selecting a bank in American Express Pay Bill fails
3210
3211         Test: fast/forms/multiple-selected-options-innerHTML.html
3212
3213         This problem was caused by an inconsistency at when Node::instertedIntoTree() is called.
3214         For normal HTML parsing, it is called immediately after an element is inserted, but for
3215         innerHTML, it is only called after the whole subtree is inserted into a document.
3216
3217         It may make sense to harmonize these cases one day, but for now, I only made the minimal
3218         changes necessary to fix the bug.
3219
3220         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::insertedIntoTree):
3221         * html/HTMLSelectElement.h:
3222         Recalculate list items when a SELECT element is inserted. OPTION elements cannot decide
3223         which one to keep selected themselves, because their logic assumes normal parsing, with
3224         insertedIntoTree() called after each element is inserted.
3225
3226 2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
3227
3228         Reviewed by Dimitri Glazkov.
3229
3230         https://bugs.webkit.org/show_bug.cgi?id=25342
3231         Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
3232
3233         Chromium async/out-of-process version of WebInspector is currently not based on
3234         InspectorController. The reason was that we did not want to interfere with
3235         the unforking effort, yet wanted to experiment. So we came up with these
3236         agents concept that basically mimic InspectorController, but separating 'agent'
3237         nature from the 'transport'. Now that InspectorController is unforked, I am
3238         planning to bring these concepts into the WebKit land and use what we have in
3239         Chromium as a proof of concept / experimental playground.
3240
3241         * loader/EmptyClients.h: added MessageSource and MessageLevel parameters.
3242         (WebCore::EmptyChromeClient::addMessageToConsole): ditto
3243         * page/ChromeClient.h: ditto
3244         * page/Console.cpp: Used new method signature.
3245         (WebCore::Console::addMessage): ditto
3246
3247 2009-04-30  Dan Bernstein  <mitz@apple.com>
3248
3249         Reviewed by Simon Fraser.
3250
3251         - fix https://bugs.webkit.org/show_bug.cgi?id=25476
3252           <rdar://problem/6841919> REGRESSION (r42987): Welcome to Safari 4
3253           animation is jittery
3254
3255         Reverted r42987.
3256
3257         * platform/graphics/cg/ImageCG.cpp:
3258         (WebCore::BitmapImage::draw):
3259
3260 2009-04-30  Brady Eidson  <beidson@apple.com>
3261
3262         Reviewed by Maciej Stachowiak
3263
3264         <rdar://problem/3785248> http://www.greekembassy.org/ gets in an infinite reload loop
3265         https://bugs.webkit.org/show_bug.cgi?id=21193
3266
3267         Some websites use for attributes in script elements to specify events that the script 
3268         should be run for.  One example is greekembassy.org which has the following in their <head>:
3269
3270         <script for=window event=onresize>
3271             location.reload(false);
3272         </script>
3273
3274         Since we don't support the full for attribute syntax, we would just blissfully ignore the
3275         condition and execute the code unconditionally.  This caused breakage on multiple real-world 
3276         sites besides greekembassy.org.
3277
3278         https://bugs.webkit.org/show_bug.cgi?id=16915 and <rdar://problem/4471751> track adding full 
3279         support for the for attribute in scripts.  In the meantime it's best to not execute them
3280         unconditionally.
3281
3282         Test: fast/dom/HTMLScriptElement/script-for-attribute-unexpected-execution.html
3283
3284         * dom/ScriptElement.cpp:
3285         (WebCore::ScriptElementData::shouldExecuteAsJavaScript): After all other checks have
3286           passed, only return true if there is no for attribute in the script element.
3287         * dom/ScriptElement.h:
3288
3289         * html/HTMLScriptElement.cpp:
3290         (WebCore::HTMLScriptElement::forAttributeValue): Return the attribute value, if any.
3291         * html/HTMLScriptElement.h:
3292
3293         * svg/SVGScriptElement.cpp:
3294         (WebCore::SVGScriptElement::forAttributeValue): Return an empty string (like the other
3295           attribute getters do for SVGScriptElement)
3296         * svg/SVGScriptElement.h:
3297
3298 2009-04-30  Holger Hans Peter Freyther  <zecke@selfish.org>
3299
3300         Reviewed by Darin Adler.
3301
3302         The Qt API exposes a global history patch CSSStyleSelector to make API consumers work again
3303
3304         https://bugs.webkit.org/show_bug.cgi?id=20952
3305
3306         The QtWebKit port made the mistake of exposing a global history. This broke
3307         with the addition of PageGroup and LinkHash. This needs to be repaired
3308         for Qt4.5.
3309
3310         Add a function to LinkHash.cpp that is resolving a URL. Use this
3311         function from within CSSStyleSelector to forward the url to the
3312         QWebHistoryInterface API.
3313
3314         It is sad that there is a path within visitedLinkHash which is now
3315         doing a memcpy, it is sad to add a PLATFORM(QT) define to CSSStyleSelector
3316         and using QtWebKit types within WebCore is a layering violation as well.
3317
3318         PageGroup::setShouldTrackVisitedLinks is currently not enabled. For
3319         Qt4.6 a second version of the QWebHistoryInterface is going to be
3320         added which will fix things up.
3321
3322         * css/CSSStyleSelector.cpp:
3323         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
3324         * platform/LinkHash.cpp:
3325         (WebCore::visitedURL):
3326         (WebCore::visitedLinkHash):
3327         * platform/LinkHash.h:
3328
3329 2009-04-30  Simon Hausmann  <simon.hausmann@nokia.com>
3330
3331         Fix the Qt build.
3332
3333         * platform/graphics/SimpleFontData.cpp: Don't use initCharWidths() for the Qt build.
3334         * platform/graphics/qt/SimpleFontDataQt.cpp:
3335         (WebCore::SimpleFontData::platformCharWidthInit): Instead initialize the average and
3336         max char widths from QFontMetrics.
3337
3338 2009-04-30  Ariya Hidayat  <ariya.hidayat@nokia.com>
3339
3340         Unreview build fix after r43037.
3341
3342         Use MarkedArgumentBuffer instead of ArgList.
3343
3344         * bridge/qt/qt_runtime.cpp:
3345         (JSC::Bindings::QtConnectionObject::execute):
3346
3347 2009-04-29  Sam Weinig  <sam@webkit.org>
3348
3349         Reviewed by Oliver Hunt.
3350
3351         Fix for https://bugs.webkit.org/show_bug.cgi?id=25440
3352         setTimeout should stringify non-string/non-function first arguments
3353
3354         Test: fast/dom/Window/setTimeout-string-argument.html
3355
3356         * bindings/js/JSDOMWindowCustom.cpp:
3357         (WebCore::JSDOMWindow::setTimeout):
3358         (WebCore::JSDOMWindow::setInterval):
3359         * bindings/js/JSWorkerContextCustom.cpp:
3360         (WebCore::JSWorkerContext::setTimeout):
3361         (WebCore::JSWorkerContext::setInterval):
3362         * bindings/js/ScheduledAction.cpp:
3363         (WebCore::ScheduledAction::create):
3364         * bindings/js/ScheduledAction.h:
3365
3366 2009-04-29  Dan Bernstein  <mitz@apple.com>
3367
3368         Reviewed by Simon Fraser.
3369
3370         - WebCore part of <rdar://problem/6609509> Select All and then Delete
3371           should put Mail editing back into the same state as a new message
3372
3373         Test: editing/deleting/in-visibly-empty-root.html
3374
3375         * WebCore.base.exp: Exported VisibleSelection::isAll(bool).
3376         * editing/SelectionController.h:
3377         (WebCore::SelectionController::isAll): Added. Calls through to
3378         VisibleSelection.
3379         * editing/TypingCommand.cpp:
3380         (WebCore::TypingCommand::makeEditableRootEmpty): Added. Removes all children
3381         of the root editable element the selection is in, other than a
3382         placeholder. Returns true iff it did anything.
3383         (WebCore::TypingCommand::deleteKeyPressed): When there is only a single
3384         visible position in the root editable element, but it has children other
3385         than a placeholder, remove those children.
3386         * editing/TypingCommand.h:
3387         * editing/VisiblePosition.h:
3388         Added a StayInEditableContent enum and a FIXME.
3389         * editing/VisibleSelection.cpp:
3390         (WebCore::VisibleSelection::isAll): Added. Returns whether the
3391         selection encompasses all visible positions, either in the document or
3392         in the editable root.
3393         * editing/VisibleSelection.h:
3394
3395 2009-04-29  Sam Weinig  <sam@webkit.org>
3396
3397         Fix style nit.
3398
3399         * editing/visible_units.cpp:
3400         (WebCore::getLeafBoxesInLogicalOrder):
3401
3402 2009-04-29  David Hyatt  <hyatt@apple.com>
3403
3404         Reviewed by Dan Bernstein.
3405
3406         For now just drop the deferred layout on the floor, since it causes an infinite hang in mail.  Even
3407         trying to schedule a relayout for later leaves you in a state where you hit the needsLayout painting
3408         assertions.
3409
3410         Basically what Mail is doing is crazy, and we can't support it other than to just drop the last layout
3411         and not do it (which is basically what was happening before).
3412
3413         * page/FrameView.cpp:
3414         (WebCore::FrameView::setContentsSize):
3415         (WebCore::FrameView::needsLayout):
3416
3417 2009-04-29  Douglas Davidson  <ddavidso@apple.com>
3418
3419         Reviewed by Justin Garcia.
3420
3421         <rdar://problem/6836921> Mail exhibits issues with text checking, e.g. menu items not always validated correctly
3422         
3423         Updates to the text checking code to enable text checking even if spellchecking is turned off 
3424         and fix an off-by-one error in selection handling.
3425
3426         * editing/Editor.cpp:
3427         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3428         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3429         (WebCore::Editor::markMisspellingsAndBadGrammar):
3430         * editing/Editor.h:
3431         * editing/TypingCommand.cpp:
3432         (WebCore::TypingCommand::markMisspellingsAfterTyping):
3433
3434 2009-04-29  Oliver Hunt  <oliver@apple.com>
3435
3436         Reviewed by Gavin Barraclough.
3437
3438         Clean up ArgList to be a trivial type
3439
3440         Start using MarkedArgumentBuffer to create argument lists for function calls
3441
3442         * bindings/js/JSClipboardCustom.cpp:
3443         (WebCore::JSClipboard::types):
3444         * bindings/js/JSConsoleCustom.cpp:
3445         (WebCore::JSConsole::profiles):
3446         * bindings/js/JSCustomPositionCallback.cpp:
3447         (WebCore::JSCustomPositionCallback::handleEvent):
3448         * bindings/js/JSCustomPositionErrorCallback.cpp:
3449         (WebCore::JSCustomPositionErrorCallback::handleEvent):
3450         * bindings/js/JSCustomSQLStatementCallback.cpp:
3451         (WebCore::JSCustomSQLStatementCallback::handleEvent):
3452         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3453         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
3454         * bindings/js/JSCustomSQLTransactionCallback.cpp:
3455         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
3456         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
3457         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
3458         * bindings/js/JSCustomVoidCallback.cpp:
3459         (WebCore::JSCustomVoidCallback::handleEvent):
3460         * bindings/js/JSCustomXPathNSResolver.cpp:
3461         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
3462         * bindings/js/JSEventListener.cpp:
3463         (WebCore::JSEventListener::handleEvent):
3464         * bindings/js/JSInspectorControllerCustom.cpp:
3465         (WebCore::JSInspectorController::profiles):
3466         (WebCore::JSInspectorController::search):
3467         (WebCore::JSInspectorController::databaseTableNames):
3468         (WebCore::JSInspectorController::setting):
3469         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
3470         (WebCore::JSJavaScriptCallFrame::scopeChain):
3471         * bindings/js/JSLazyEventListener.cpp:
3472         (WebCore::JSLazyEventListener::parseCode):
3473         * bindings/js/JSNodeFilterCondition.cpp:
3474         (WebCore::JSNodeFilterCondition::acceptNode):
3475         * bindings/js/JSQuarantinedObjectWrapper.cpp:
3476         (WebCore::JSQuarantinedObjectWrapper::construct):
3477         (WebCore::JSQuarantinedObjectWrapper::call):
3478         * bindings/js/ScheduledAction.cpp:
3479         (WebCore::ScheduledAction::ScheduledAction):
3480         (WebCore::ScheduledAction::executeFunctionInContext):
3481         * bindings/js/ScriptFunctionCall.h:
3482         * bindings/objc/WebScriptObject.mm:
3483         (getListFromNSArray):
3484         (-[WebScriptObject callWebScriptMethod:withArguments:]):
3485         * bridge/NP_jsobject.cpp:
3486         (getListFromVariantArgs):
3487         (_NPN_InvokeDefault):
3488         (_NPN_Invoke):
3489         (_NPN_Construct):
3490         * bridge/jni/jni_jsobject.h:
3491         * bridge/jni/jni_jsobject.mm:
3492         (JavaJSObject::call):
3493         (JavaJSObject::getListFromJArray):
3494
3495 2009-04-29  Eric Seidel  <eric@webkit.org>
3496
3497         No review, build fix only.
3498
3499         Fix m_offset uses added while I wasn't looking.
3500
3501         * editing/visible_units.cpp:
3502         (WebCore::logicalStartPositionForLine):
3503         (WebCore::logicalEndPositionForLine):
3504
3505 2009-04-29  Xiaomei Ji  <xji@chromium.org>
3506
3507         Reviewed by Dan Bernstein.
3508
3509         Fix https://bugs.webkit.org/show_bug.cgi?id=24168
3510         RTL: Home/End key does not behave correctly in mixed bidi text in RTL document
3511
3512         Test: editing/selection/home-end.html
3513
3514         * editing/SelectionController.cpp:
3515         (WebCore::SelectionController::modifyExtendingForward): Change calling endOfLine()
3516         to logicalEndOfLine() when granularity is LineBoundary.
3517         (WebCore::SelectionController::modifyMovingForward): Change calling endOfLine()
3518         to logicalEndOfLine() when granularity is LineBoundary
3519         (WebCore::SelectionController::modifyExtendingBackward): Change calling 
3520         startOfLine() to logicalStartOfLine() when granularity is LineBoundary.
3521         (WebCore::SelectionController::modifyMovingBackward): Change calling startOfLine() 
3522         to logicalStartOfLine() when granularity is LineBoundary.
3523         * editing/visible_units.cpp:
3524         (WebCore::getLeafBoxesInLogicalOrder): Added. Reconstruct leaf boxes in logical order.
3525         (WebCore::getLogicalStartBoxAndNode): Added.
3526         (WebCore::getLogicalEndBoxAndNode): Added.
3527         (WebCore::logicalStartPositionForLine): Added. Similar to startPositionForLine.
3528         (WebCore::logicalStartOfLine): Added. Similar to startOfLine.
3529         (WebCore::logicalEndPositionForLine): Added. Similar to endPositionForLine.
3530         (WebCore::inSameLogicalLine): Added.
3531         (WebCore::logicalEndOfLine): Added. Similar to endOfLine.
3532         * editing/visible_units.h:
3533
3534 2009-04-29  Eric Seidel  <eric@webkit.org>
3535
3536         Reviewed by Darin Adler.
3537
3538         Make m_offset private and change all callers to use deprecatedEditingOffset().
3539         https://bugs.webkit.org/show_bug.cgi?id=25472
3540
3541         Per Darin's suggestion, this was just a simple search replace
3542         of .m_offset with .deprecatedEditingOffset().
3543
3544         There was one change in InsertParagraphSeparatorCommand::doApply to use
3545         Position::moveToOffset(0) instead of .m_offset = 0;
3546
3547         * dom/Position.cpp:
3548         (WebCore::Position::rendersInDifferentPosition):
3549         (WebCore::Position::leadingWhitespacePosition):
3550         * dom/Position.h:
3551         (WebCore::Position::deprecatedEditingOffset):
3552         (WebCore::Position::moveToOffset):
3553         (WebCore::operator==):
3554         * dom/PositionIterator.h:
3555         (WebCore::PositionIterator::PositionIterator):
3556         * dom/Range.cpp:
3557         (WebCore::Range::create):
3558         (WebCore::Range::compareBoundaryPoints):
3559         * editing/ApplyStyleCommand.cpp:
3560         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
3561         (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
3562         (WebCore::ApplyStyleCommand::removeInlineStyle):
3563         (WebCore::ApplyStyleCommand::nodeFullySelected):
3564         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
3565         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
3566         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
3567         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
3568         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
3569         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
3570         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
3571         (WebCore::ApplyStyleCommand::joinChildTextNodes):
3572         * editing/BreakBlockquoteCommand.cpp:
3573         (WebCore::BreakBlockquoteCommand::doApply):
3574         * editing/CompositeEditCommand.cpp:
3575         (WebCore::CompositeEditCommand::insertNodeAt):
3576         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
3577         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
3578         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
3579         (WebCore::CompositeEditCommand::deleteInsignificantText):
3580         (WebCore::CompositeEditCommand::moveParagraphs):
3581         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
3582         * editing/DeleteSelectionCommand.cpp:
3583         (WebCore::updatePositionForNodeRemoval):
3584         (WebCore::updatePositionForTextRemoval):
3585         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
3586         (WebCore::DeleteSelectionCommand::fixupWhitespace):
3587         * editing/Editor.cpp:
3588         (WebCore::Editor::setComposition):
3589         (WebCore::Editor::advanceToNextMisspelling):
3590         (WebCore::Editor::getCompositionSelection):
3591         * editing/InsertLineBreakCommand.cpp:
3592         (WebCore::InsertLineBreakCommand::doApply):
3593         * editing/InsertParagraphSeparatorCommand.cpp:
3594         (WebCore::InsertParagraphSeparatorCommand::doApply):
3595         * editing/InsertTextCommand.cpp:
3596         (WebCore::InsertTextCommand::performTrivialReplace):
3597         (WebCore::InsertTextCommand::input):
3598         (WebCore::InsertTextCommand::insertTab):
3599         * editing/MoveSelectionCommand.cpp:
3600         (WebCore::MoveSelectionCommand::doApply):
3601         * editing/ReplaceSelectionCommand.cpp:
3602         (WebCore::ReplaceSelectionCommand::doApply):
3603         * editing/SelectionController.cpp:
3604         (WebCore::SelectionController::debugRenderer):
3605         * editing/TextIterator.cpp: