768db1158f54ca0613040ec8dc99efefb52166f0
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-10-27  Nat Duca  <nduca@chromium.org>
2
3         Unreviewed, fix CCSchedulerStateMachine build errors.
4
5         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
6         * platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
7
8 2011-10-27  Tony Chang  <tony@chromium.org>
9
10         fix sizing of auto sized flexbox
11         https://bugs.webkit.org/show_bug.cgi?id=70839
12
13         Reviewed by David Hyatt.
14
15         Correctly set the height of the flexbox when we have a column flow
16         and the height is auto.
17
18         Tests: css3/flexbox/columns-auto-size.html
19                css3/flexbox/flex-flow-margins-auto-size.html
20
21         * rendering/RenderFlexibleBox.cpp:
22         (WebCore::RenderFlexibleBox::layoutBlock): Always computeLogicalHeight() after we're done placing children.
23         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection): Set the height as we place children.
24
25 2011-10-25  Vangelis Kokkevis  <vangelis@chromium.org>
26
27         Add support for creating compositing layers for fixed position elements.
28         https://bugs.webkit.org/show_bug.cgi?id=69796
29
30         position:fixed elements will get a compositing layer if:
31         1. Settings:acceleratedCompositingForFixedPositionEnabled() returns true, 
32         2. The element has its own stacking context (e.g. has a z-index), and
33         3. The element's container is the RenderView (e.g. not a descendant of a transformed element)
34
35         Reviewed by Simon Fraser.
36
37
38         Test: compositing/geometry/fixed-position-composited-switch.html
39
40         * page/Settings.cpp:
41         (WebCore::Settings::Settings):
42         * page/Settings.h:
43         (WebCore::Settings::setAcceleratedCompositingForFixedPositionEnabled):
44         (WebCore::Settings::acceleratedCompositingForFixedPositionEnabled):
45         * rendering/RenderLayerCompositor.cpp:
46         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
47         (WebCore::RenderLayerCompositor::updateCompositingLayers):
48         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
49         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
50         * rendering/RenderLayerCompositor.h:
51         * testing/Internals.cpp:
52         (WebCore::Internals::setEnableCompositingForFixedPosition):
53         * testing/Internals.h:
54         * testing/Internals.idl:
55
56 2011-10-27  Arthur Hsu  <arthurhsu@chromium.org>
57
58         https://bugs.webkit.org/show_bug.cgi?id=70390
59         Ensure font load for Skia backend during printing.
60
61         Reviewed by James Robinson.
62
63         * platform/graphics/chromium/FontChromiumWin.cpp:
64         (WebCore::Font::drawGlyphs):
65         * platform/graphics/skia/SkiaFontWin.cpp:
66         (WebCore::paintSkiaText):
67
68 2011-10-27  Michael Saboff  <msaboff@apple.com>
69
70         Investigate storing strings in 8-bit buffers when possible
71         https://bugs.webkit.org/show_bug.cgi?id=66161
72
73         Changes to support 8 bit StringImpl changes.
74         
75         Reviewed by Geoffrey Garen.
76         
77         No new tests, refactored StringImpl for 8 bit strings.
78
79         * platform/text/cf/StringImplCF.cpp:
80         (WTF::StringImpl::createCFString):
81
82 2011-10-27  Nat Duca  <nduca@chromium.org>
83
84         [chromium] Encapsulate state machine parts of scheduling in CCSchedulerStateMachine
85         https://bugs.webkit.org/show_bug.cgi?id=70714
86
87         Reland of ill-fated r98612.
88
89         Reviewed by James Robinson.
90
91         * WebCore.gypi:
92         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp: Added.
93         (WebCore::CCSchedulerStateMachine::nextAction):
94         (WebCore::CCSchedulerStateMachine::updateState):
95         * platform/graphics/chromium/cc/CCSchedulerStateMachine.h: Added.
96         (WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
97         (WebCore::CCSchedulerStateMachine::operator=):
98         (WebCore::CCSchedulerStateMachine::commitPending):
99         (WebCore::CCSchedulerStateMachine::setNeedsRedraw):
100         (WebCore::CCSchedulerStateMachine::setNeedsCommit):
101         (WebCore::CCSchedulerStateMachine::beginFrameComplete):
102         (WebCore::CCSchedulerStateMachine::updateResourcesComplete):
103
104 2011-10-27  Pavel Podivilov  <podivilov@chromium.org>
105
106         Get rid of optional parameters in the middle in IDLs.
107         https://bugs.webkit.org/show_bug.cgi?id=70816
108
109         Reviewed by Adam Barth.
110
111         Optional parameters in the middle are prohibited by WebIDL spec.
112
113         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
114         * bindings/scripts/CodeGeneratorJS.pm:
115         (GenerateHeader):
116         (GenerateImplementation):
117         * bindings/scripts/CodeGeneratorV8.pm:
118         (GenerateHeader):
119         (GenerateArgumentsCountCheck):
120         (GenerateImplementation):
121         * bindings/scripts/test/JS/JSTestObj.cpp:
122         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
123         * bindings/scripts/test/TestObj.idl:
124         * bindings/scripts/test/V8/V8TestObj.cpp:
125         (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
126         * html/canvas/CanvasRenderingContext2D.idl:
127         * page/DOMWindow.idl:
128
129 2011-10-27  Antti Koivisto  <antti@apple.com>
130
131         REGRESSION(r98542): tables/mozilla_expected_failures/bugs/bug14007-2.html
132         https://bugs.webkit.org/show_bug.cgi?id=71032
133
134         Reviewed by Dave Hyatt.
135
136         If we apply an explicitly inherited property, we need to apply any further
137         non-inherited properties as the property might get overridden again.
138
139         * css/CSSStyleSelector.cpp:
140         (WebCore::CSSStyleSelector::styleForKeyframe):
141         (WebCore::CSSStyleSelector::styleForPage):
142         (WebCore::CSSStyleSelector::applyDeclaration):
143         (WebCore::CSSStyleSelector::applyDeclarations):
144         * css/CSSStyleSelector.h:
145
146 2011-10-27  Julien Chaffraix  <jchaffraix@webkit.org>
147
148         Remove RenderTableSection::m_gridRows
149         https://bugs.webkit.org/show_bug.cgi?id=70570
150
151         Reviewed by Darin Adler.
152
153         No new test, refactoring only.
154
155         Just nuke the old field that was duplicating
156         m_grid.size().
157
158         * rendering/RenderTableSection.h:
159         (WebCore::RenderTableSection::numRows):
160         * rendering/RenderTableSection.cpp:
161         (WebCore::RenderTableSection::RenderTableSection):
162         (WebCore::RenderTableSection::ensureRows):
163         (WebCore::RenderTableSection::setCellLogicalWidths):
164         (WebCore::RenderTableSection::calcRowLogicalHeight):
165         (WebCore::RenderTableSection::layoutRows):
166         (WebCore::RenderTableSection::calcOuterBorderBefore):
167         (WebCore::RenderTableSection::calcOuterBorderAfter):
168         (WebCore::RenderTableSection::calcOuterBorderStart):
169         (WebCore::RenderTableSection::calcOuterBorderEnd):
170         (WebCore::RenderTableSection::firstLineBoxBaseline):
171         (WebCore::RenderTableSection::paint):
172         (WebCore::RenderTableSection::paintObject):
173         (WebCore::RenderTableSection::clearGrid):
174         (WebCore::RenderTableSection::numColumns):
175         (WebCore::RenderTableSection::appendColumn):
176         (WebCore::RenderTableSection::splitColumn):
177         s/m_gridRows/m_grid.size()/.
178         Also updated the code as m_grid.size() is unsigned.
179
180         (WebCore::RenderTableSection::recalcCells):
181         The old code would keep the grid's memory but we have to clear it to properly
182         count the elements. To avoid lots of small reallocations, we reallocate the
183         buffer at the old capacity upfront.
184
185 2011-10-27  Nat Duca  <nduca@chromium.org>
186
187         Unreviewed, rolling out r98612.
188         http://trac.webkit.org/changeset/98612
189         https://bugs.webkit.org/show_bug.cgi?id=70714
190
191         Broke build
192
193         * WebCore.gypi:
194         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp: Removed.
195         * platform/graphics/chromium/cc/CCSchedulerStateMachine.h: Removed.
196
197 2011-10-24  Nat Duca  <nduca@chromium.org>
198
199         [chromium] Encapsulate state machine parts of scheduling in CCSchedulerStateMachine
200         https://bugs.webkit.org/show_bug.cgi?id=70714
201
202         Reviewed by James Robinson.
203
204         * WebCore.gypi:
205         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp: Added.
206         (WebCore::CCSchedulerStateMachine::nextAction):
207         (WebCore::CCSchedulerStateMachine::updateState):
208         * platform/graphics/chromium/cc/CCSchedulerStateMachine.h: Added.
209         (WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
210         (WebCore::CCSchedulerStateMachine::operator=):
211         (WebCore::CCSchedulerStateMachine::commitPending):
212         (WebCore::CCSchedulerStateMachine::setNeedsRedraw):
213         (WebCore::CCSchedulerStateMachine::setNeedsCommit):
214         (WebCore::CCSchedulerStateMachine::beginFrameComplete):
215         (WebCore::CCSchedulerStateMachine::updateResourcesComplete):
216
217 2011-10-27  Dan Bernstein  <mitz@apple.com>
218
219         <rdar://problem/10262205> Allow column progression to be independent of writing mode
220         https://bugs.webkit.org/show_bug.cgi?id=71028
221
222         Reviewed by Darin Adler.
223
224         Tests: fast/multicol/block-axis-horizontal-bt.html
225                fast/multicol/block-axis-horizontal-tb.html
226                fast/multicol/block-axis-vertical-lr.html
227                fast/multicol/block-axis-vertical-rl.html
228                fast/multicol/flipped-blocks-hit-test.html
229
230         Allow “columns” to be stacked along the block axis rather than the inline axis. This can facilitate
231         paginated interfaces. A column-axis property is added in order to enable this mode.
232
233         * css/CSSComputedStyleDeclaration.cpp:
234         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle the column-axis property.
235         * css/CSSParser.cpp:
236         (WebCore::CSSParser::parseValue): Ditto.
237         * css/CSSPrimitiveValueMappings.h:
238         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Map ColumnAxis values to identifiers.
239         (WebCore::CSSPrimitiveValue::operator ColumnAxis): Map identifiers to ColumnAxis values.
240         * css/CSSProperty.cpp:
241         (WebCore::CSSProperty::isInheritedProperty): Updated to return false for the column-axis property.
242         * css/CSSPropertyNames.in: Added -webkit-column-axis.
243         * css/CSSStyleSelector.cpp:
244         (WebCore::CSSStyleSelector::applyProperty): Handle column-axis.
245         * rendering/ColumnInfo.h:
246         (WebCore::ColumnInfo::ColumnInfo): Added m_progressionAxis to the initialization list.
247         (WebCore::ColumnInfo::progressionAxis): Added this getter.
248         (WebCore::ColumnInfo::setProgressionAxis): Added this setter.
249         * rendering/RenderBlock.cpp:
250         (WebCore::RenderBlock::addOverflowFromChildren): Simplified, and thus also made this function work
251         with block-axis column progression.
252         (WebCore::RenderBlock::paintColumnRules): Added code to paint rules between columns with block-axis
253         progression.
254         (WebCore::RenderBlock::paintColumnContents): Adjusted the painting offset for the block-axis
255         column progression case.
256         (WebCore::RenderBlock::nodeAtPoint): Fixed hit-testing in flipped-blocks writing modes. This is
257         covered by flipped-blocks-hit-test.html.
258         (WebCore::RenderBlock::hitTestColumns): Adjusted the offset for the block-axis column progression
259         case.
260         (WebCore::RenderBlock::calcColumnWidth): Set the column width to the content logical width in
261         the block-axis column progression case. The column-width and column-count properties are ignored.
262         (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Set the column progression axis based on
263         the style.
264         (WebCore::RenderBlock::columnCount): Broke up an assertion into two.
265         (WebCore::RenderBlock::columnRectAt): Updated for block-axis column progression.
266         (WebCore::RenderBlock::adjustPointToColumnContents): Ditto.
267         (WebCore::RenderBlock::adjustRectForColumns): Ditto.
268         (WebCore::RenderBlock::adjustForColumns): Ditto.
269         * rendering/RenderLayer.cpp:
270         (WebCore::RenderLayer::paintChildLayerIntoColumns): Adjusted the offser for the block-axis column
271         progression case.
272         (WebCore::RenderLayer::hitTestChildLayerColumns): Ditto.
273         * rendering/style/RenderStyle.h:
274         (WebCore::InheritedFlags::columnAxis): Added this getter.
275         (WebCore::InheritedFlags::hasInlineColumnAxis): Added. Checks the column axis against the writing
276         mode.
277         (WebCore::InheritedFlags::specifiesColumns): Changed to return true if the specified column axis
278         is the block axis.
279         (WebCore::InheritedFlags::setColumnAxis): Added this setter.
280         (WebCore::InheritedFlags::initialColumnAxis): Added. Returns AutoColumnAxis.
281         * rendering/style/RenderStyleConstants.h: Added a ColumnAxis enum.
282         * rendering/style/StyleMultiColData.cpp:
283         (WebCore::StyleMultiColData::StyleMultiColData): Added m_axis to the initialization list.
284         (WebCore::StyleMultiColData::operator==): Compare m_axis.
285         * rendering/style/StyleMultiColData.h: Added m_axis member variable.
286
287 2011-10-27  Mihnea Ovidenie  <mihnea@adobe.com>
288
289         [CSSRegions]Flag regions with custom styling
290         https://bugs.webkit.org/show_bug.cgi?id=70733
291
292         Reviewed by David Hyatt.
293
294         Region elements that have custom region styling are now marked accordingly.
295
296         Test: fast/regions/render-region-custom-style-mark.html
297
298         * css/CSSStyleSelector.cpp:
299         (WebCore::CSSStyleSelector::checkRegionStyle):
300         * css/CSSStyleSelector.h:
301         * rendering/RenderRegion.cpp:
302         (WebCore::RenderRegion::RenderRegion):
303         (WebCore::RenderRegion::styleDidChange):
304         * rendering/RenderRegion.h:
305         (WebCore::RenderRegion::hasCustomRegionStyle):
306         (WebCore::RenderRegion::setHasCustomRegionStyle):
307         * rendering/RenderTreeAsText.cpp:
308         (WebCore::writeRenderFlowThreads):
309
310 2011-10-27  Sheriff Bot  <webkit.review.bot@gmail.com>
311
312         Unreviewed, rolling out r98556.
313         http://trac.webkit.org/changeset/98556
314         https://bugs.webkit.org/show_bug.cgi?id=71031
315
316         The test added by the patch doesn't pass on Snow Leopard
317         (Requested by rniwa on #webkit).
318
319         * editing/TextCheckingHelper.cpp:
320         (WebCore::checkTextOfParagraph):
321         * testing/Internals.cpp:
322         * testing/Internals.h:
323         * testing/Internals.idl:
324
325 2011-10-27  Mike Reed  <reed@google.com>
326
327         [skia] replace offscreen technique with native support for antialiased clipping
328         https://bugs.webkit.org/show_bug.cgi?id=70748
329
330         Reviewed by Stephen White.
331
332         ~100 layout tests need to be rebaselined, as the native aa-clipping differs sometimes in the low
333         bits of the result. Other than that, the results should be the same, except that now the drawing
334         can go directly to the canvas, rather than being direct offscreen and then have that result
335         "clipped" during the restore. This has the effect of allowing LCD text to be drawing inside a
336         antialiased clip area.
337
338         * platform/graphics/skia/PlatformContextSkia.cpp:
339         (WebCore::PlatformContextSkia::State::State):
340         (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
341         (WebCore::PlatformContextSkia::clipPathAntiAliased):
342         (WebCore::PlatformContextSkia::restore):
343         * platform/graphics/skia/PlatformContextSkia.h:
344
345 2011-10-27  Tony Chang  <tony@chromium.org>
346
347         use main/cross instead of logical width/height when talking about flow direction
348         https://bugs.webkit.org/show_bug.cgi?id=70977
349
350         Reviewed by Ojan Vafai.
351
352         Flexbox code uses logical in function names to refer to the flow
353         direction. This is confusing because writing mode also uses logical,
354         but this is a diffent usage. To avoid confusion, be explicit about
355         main vs cross axis. Extent is used instead of width/height.
356
357         No new tests, just a refactoring.
358
359         * rendering/RenderFlexibleBox.cpp:
360         (WebCore::RenderFlexibleBox::mainAxisLengthForChild):
361         (WebCore::RenderFlexibleBox::crossAxisLength):
362         (WebCore::RenderFlexibleBox::setCrossExtent):
363         (WebCore::RenderFlexibleBox::crossExtentForChild):
364         (WebCore::RenderFlexibleBox::mainExtentForChild):
365         (WebCore::RenderFlexibleBox::crossAxisExtent):
366         (WebCore::RenderFlexibleBox::mainAxisExtent):
367         (WebCore::RenderFlexibleBox::crossAxisContentExtent):
368         (WebCore::RenderFlexibleBox::mainAxisContentExtent):
369         (WebCore::RenderFlexibleBox::crossAxisBorderAndPaddingExtent):
370         (WebCore::RenderFlexibleBox::crossAxisMarginExtentForChild):
371         (WebCore::RenderFlexibleBox::flowAwareLocationForChild):
372         (WebCore::RenderFlexibleBox::setFlowAwareLocationForChild):
373         (WebCore::RenderFlexibleBox::mainAxisBorderAndPaddingExtentForChild):
374         (WebCore::RenderFlexibleBox::mainAxisScrollbarExtentForChild):
375         (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForFlexItem):
376         (WebCore::RenderFlexibleBox::layoutInlineDirection):
377         (WebCore::RenderFlexibleBox::positiveFlexForChild): Since flex only
378             matters in the main axis, there's no reason to deambiguate it here.
379         (WebCore::RenderFlexibleBox::negativeFlexForChild): Ditto.
380         (WebCore::RenderFlexibleBox::availableAlignmentSpaceForChild): Alignment is always
381             in the cross axis direction, so don't include that in the method name.
382         (WebCore::RenderFlexibleBox::marginBoxAscent):
383         (WebCore::RenderFlexibleBox::computePreferredMainAxisExtent):
384         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
385         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
386         (WebCore::RenderFlexibleBox::adjustAlignmentForChild):  Alignment is always
387             in the cross axis direction, so don't include that in the method name.
388         (WebCore::RenderFlexibleBox::alignChildrenBlockDirection):
389         * rendering/RenderFlexibleBox.h:
390
391 2011-10-27  Mark Hahnenberg  <mhahnenberg@apple.com>
392
393         De-virtualize JSCell::toThisObject
394         https://bugs.webkit.org/show_bug.cgi?id=70958
395
396         Reviewed by Geoffrey Garen.
397
398         No new tests.
399
400         Converted all instances of toThisObject to static functions, 
401         added toThisObject to the MethodTable, and replaced all call sites
402         with a corresponding lookup in the MethodTable.
403
404         * bindings/js/JSDOMWindowBase.cpp:
405         (WebCore::JSDOMWindowBase::toThisObject):
406         * bindings/js/JSDOMWindowBase.h:
407         * bindings/js/JSErrorHandler.cpp:
408         (WebCore::JSErrorHandler::handleEvent):
409         * bridge/NP_jsobject.cpp:
410         (_NPN_Invoke):
411         * bridge/qt/qt_runtime.cpp:
412         (JSC::Bindings::QtRuntimeConnectionMethod::call):
413
414 2011-10-27  Adam Roben  <aroben@apple.com>
415
416         Windows build fix after r98512
417
418         * html/HTMLMediaElement.cpp: Moved a Web Audio-related #include inside an appropriate ENABLE
419         guard.
420
421 2011-10-27  Adam Roben  <aroben@apple.com>
422
423         Regenerate WebCore's Localizable.strings file
424
425         All I did was run update-webkit-localizable-strings. A few localizer comments changed, and
426         some strings (which must have been hand-added) got moved to a different part of the file.
427
428         * English.lproj/Localizable.strings:
429
430 2011-10-27  Daniel Cheng  <dcheng@chromium.org>
431
432         Clean up MicroDataItemValue to use const String& instead of String
433         https://bugs.webkit.org/show_bug.cgi?id=70978
434
435         Reviewed by Tony Chang.
436
437         * html/MicroDataItemValue.cpp:
438         (WebCore::MicroDataItemValue::MicroDataItemValue):
439         * html/MicroDataItemValue.h:
440
441 2011-10-27  Antti Koivisto  <antti@apple.com>
442
443         Use StringHasher to generate the matched declaration cache hash
444         https://bugs.webkit.org/show_bug.cgi?id=71012
445
446         Reviewed by Kenneth Rohde Christiansen and Andreas Kling.
447
448         It is faster and better than the current custom function.
449
450         * css/CSSStyleSelector.cpp:
451         (WebCore::CSSStyleSelector::computeDeclarationHash):
452
453 2011-10-27  Kentaro Hara  <haraken@chromium.org>
454
455         Refactor OptionsObject.cpp
456         https://bugs.webkit.org/show_bug.cgi?id=70572
457
458         Reviewed by Adam Barth.
459
460         For example, OptionsObject::getKeyBool() is an alias of
461         OptionsObject::getKeyValue(const String& key, bool& value).
462         We should remove OptionsObject::getKeyXXXX() (XXXX is some specific type)
463         and unify them into OptionsObject::get(const String& key, XXXX& value).
464         c.f. Corresponding JSC methods are unified into
465         JSDictionary::convertValue(JSC::ExecState*, JSC::JSValue, XXXX&).
466
467         The result of git diff is weird, but this patch is making just the following changes:
468         - Replaced getKeyBool(), getKeyInt32(), getKeyDouble() and getKeyString() with get().
469         - Renamed getKeyStringWithUndefinedOrNullCheck() to getWithUndefinedOrNullCheck().
470         - Removed getKeyDOMStringList() and getKeyKeyRange(), since these are not used.
471         - Move definitions of get() from .h to .cpp.
472
473         No new tests. No change in behavior.
474
475         * bindings/v8/OptionsObject.cpp:
476         (WebCore::OptionsObject::get): Renamed from getKeyValue().
477         (WebCore::OptionsObject::getKey): No change to this method. git diff seems to misunderstand as if it is modified.
478         (WebCore::OptionsObject::getKeyDOMStringList): Removed, since no one is using it.
479         (WebCore::OptionsObject::getKeyKeyRange): Ditto.
480         (WebCore::OptionsObject::getWithUndefinedOrNullCheck): No change to this method. git diff seems to misunderstand as if it is modified.
481         * bindings/v8/OptionsObject.h: Moved definitions of get() to OptionsObject.cpp
482         * bindings/v8/custom/V8EventConstructors.cpp:
483         * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp:
484         (WebCore::V8WebKitMutationObserver::observeCallback): Replaced getKeyXXXX() to get();
485         * storage/IDBDatabase.cpp:
486         (WebCore::IDBDatabase::createObjectStore): Ditto.
487         * storage/IDBObjectStore.cpp:
488         (WebCore::IDBObjectStore::createIndex): Ditto.
489
490 2011-10-27  Andreas Kling  <kling@webkit.org>
491
492         StyleSheet.parentStyleSheet does not work.
493         https://bugs.webkit.org/show_bug.cgi?id=70956
494
495         Reviewed by Antti Koivisto.
496
497         Since StyleSheet is only ever parented by a CSSRule, we need
498         to go through that rule when resolving the StyleSheet's parent.
499
500         Test: fast/css/stylesheet-parentStyleSheet.html
501
502         * css/StyleSheet.cpp:
503         (WebCore::StyleSheet::parentStyleSheet):
504
505 2011-10-27  Antoine Labour  <piman@chromium.org>
506
507         Disable blending when drawing opaque layers
508         https://bugs.webkit.org/show_bug.cgi?id=70085
509
510         Reviewed by James Robinson.
511
512         Covered by compositing/ tests, as well as a new unit test:
513         CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers
514
515         * platform/graphics/chromium/LayerChromium.cpp:
516         (WebCore::LayerChromium::LayerChromium):
517         (WebCore::LayerChromium::pushPropertiesTo):
518         * platform/graphics/chromium/LayerRendererChromium.cpp:
519         (WebCore::LayerRendererChromium::drawLayer):
520         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
521         (WebCore::CCLayerImpl::CCLayerImpl):
522         * platform/graphics/chromium/cc/CCLayerImpl.h:
523         (WebCore::CCLayerImpl::setOpaque):
524         (WebCore::CCLayerImpl::opaque):
525
526 2011-10-27  Joshua Bell  <jsbell@chromium.org>
527
528         IndexedDB: Passing empty array to IDBDatabase.transaction should raise exception
529         https://bugs.webkit.org/show_bug.cgi?id=70251
530
531         Reviewed by Adam Barth.
532
533         IDBDatabase.transaction() supported being called with an empty array to
534         lock all object stores. Support for this was rejected from inclusion in
535         the IDB spec due to performance concerns. This patch removes that
536         functionality.
537
538         A special case in the spec (passing a string instead of an array) worked
539         in WebKit accidentally, by resolving the string to an empty array. This
540         needed explicit support. Support for DOMString[] is added to the binding
541         code generators (reliant on DOMStringList) to ensure JS arrays are not
542         coerced to DOMStrings. This matches the proposed IDL.
543
544         * bindings/scripts/CodeGeneratorV8.pm:
545         (GenerateParametersCheckExpression):
546         (GetNativeType):
547         (JSValueToNative):
548         (IsArrayType):
549         * bindings/scripts/IDLStructure.pm:
550         * storage/IDBDatabase.cpp:
551         (WebCore::IDBDatabase::transaction):
552         * storage/IDBDatabase.h:
553         (WebCore::IDBDatabase::transaction):
554         * storage/IDBDatabase.idl:
555         * storage/IDBTransactionBackendImpl.cpp:
556         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
557         (WebCore::IDBTransactionBackendImpl::objectStore):
558
559 2011-10-27  Ken Buchanan <kenrb@chromium.org>
560
561         Crash due to nested first-letter selectors
562         https://bugs.webkit.org/show_bug.cgi?id=70457
563
564         Now only the lowest-level first-letter pseudostyle will be applied to
565         a given piece of text. Previously the last renderer to have layout
566         done would have its pseudostyle applied, no matter where it was in the
567         tree.
568
569         Reviewed by David Hyatt.
570
571         * renderer/RenderBlock.cpp:
572         (WebCore::RenderBlock::updateFirstLetter): Use the pseudostyle from
573         the lowest level node to have one
574
575 2011-10-27  Andras Becsi  <andras.becsi@nokia.com>
576
577         Fix the build if NO_LISTBOX_RENDERING is enabled
578         https://bugs.webkit.org/show_bug.cgi?id=71009
579
580         Reviewed by Kenneth Rohde Christiansen.
581
582         If NO_LISTBOX_RENDERING is enabled RenderMenuList::listBoxSelectItem uses the
583         HTMLSelectElement::listBoxSelectItem function which was accidentally removed in r97533.
584         Reintroduce HTMLSelectElement::listBoxSelectItem with a NO_LISTBOX_RENDERING guard to unbreak this setup.
585
586         This is covered by:
587         Source/WebCore/manual-tests/no-listbox-rendering.html
588
589         * html/HTMLSelectElement.cpp:
590         (WebCore::HTMLSelectElement::listBoxSelectItem): Reintroduce.
591         * html/HTMLSelectElement.h:
592
593 2011-10-27  Shinya Kawanaka  <shinyak@google.com>
594
595         Implement legacy text check emulation in unified text check interface.
596         https://bugs.webkit.org/show_bug.cgi?id=70299
597
598         Reviewed by Hajime Morita.
599
600         When UNIFIED_TEXT_CHECKING is off, WebCore::checkTextOfParagraph() emulates
601         TextCheckerClient::checkTextOfParagraph() using checkSpellingOfString and checkGrammarOfString.
602
603         This emulation can be used by setting the flag on.
604         This can be done by WebCore::Internals::setUnifiedTextCheckingEnabled.
605
606         Test: editing/spelling/spelling-unified-emulation.html
607
608         * editing/TextCheckingHelper.cpp:
609         (WebCore::findBadGrammars): Added.
610         (WebCore::findMisspellings): Added.
611         (WebCore::checkTextOfParagraph):
612           Emulates TextCheckerClients::checkTextOfParagraph if UNIFIED_TEXT_CHECKING is off.
613         * testing/Internals.cpp:
614         (WebCore::Internals::setUnifiedTextCheckingEnabled): flag setter.
615         (WebCore::Internals::unifiedTextCheckingEnabled): flag getter.
616         * testing/Internals.h:
617         * testing/Internals.idl:
618
619 2011-10-27  Philippe Normand  <pnormand@igalia.com>
620
621         Unreviewed, remove those un-needed files committed by error in
622         r98554.
623
624         * platform/audio/gstreamer/#AudioFileReaderGStreamer.h#: Removed.
625         * platform/audio/gstreamer/.#AudioFileReaderGStreamer.h: Removed.
626
627 2011-10-27  Philippe Normand  <pnormand@igalia.com> and Zan Dobersek  <zandobersek@gmail.com>
628
629         [GStreamer] WebAudio AudioFileReader implementation
630         https://bugs.webkit.org/show_bug.cgi?id=69834
631
632         Reviewed by Martin Robinson.
633
634         Basic FileReader implementation, supporting one or 2 audio
635         channels. An empty AudioDestination is also provided, its complete
636         implementation is handled in bug 69835.
637
638         * GNUmakefile.am:
639         * GNUmakefile.list.am:
640         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp: Added.
641         (WebCore::AudioDestination::create):
642         (WebCore::AudioDestination::hardwareSampleRate):
643         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
644         (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
645         (WebCore::AudioDestinationGStreamer::start):
646         (WebCore::AudioDestinationGStreamer::stop):
647         * platform/audio/gstreamer/AudioDestinationGStreamer.h: Added.
648         (WebCore::AudioDestinationGStreamer::isPlaying):
649         (WebCore::AudioDestinationGStreamer::sampleRate):
650         (WebCore::AudioDestinationGStreamer::sourceProvider):
651         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp: Added.
652         (WebCore::getGStreamerAudioCaps):
653         (WebCore::getFloatFromByteReader):
654         (WebCore::copyGstreamerBuffersToAudioChannel):
655         (WebCore::onAppsinkNewBufferCallback):
656         (WebCore::messageCallback):
657         (WebCore::onGStreamerDeinterleavePadAddedCallback):
658         (WebCore::onGStreamerDeinterleaveReadyCallback):
659         (WebCore::onGStreamerDecodebinPadAddedCallback):
660         (WebCore::AudioFileReader::AudioFileReader):
661         (WebCore::AudioFileReader::~AudioFileReader):
662         (WebCore::AudioFileReader::handleBuffer):
663         (WebCore::AudioFileReader::handleMessage):
664         (WebCore::AudioFileReader::handleNewDeinterleavePad):
665         (WebCore::AudioFileReader::deinterleavePadsConfigured):
666         (WebCore::AudioFileReader::plugDeinterleave):
667         (WebCore::AudioFileReader::createBus):
668         (WebCore::createBusFromAudioFile):
669         (WebCore::createBusFromInMemoryAudioFile):
670         * platform/audio/gtk/AudioBusGtk.cpp: Added.
671         (WebCore::AudioBus::loadPlatformResource):
672
673 2011-10-27  Philippe Normand  <pnormand@igalia.com>
674
675         Unreviewed, rebaseline of the bindings tests after r98501 which
676         removed getOwnPropertySlotVirtual.
677
678         * bindings/scripts/test/JS/JSTestInterface.cpp:
679         * bindings/scripts/test/JS/JSTestInterface.h:
680         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
681         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
682         * bindings/scripts/test/JS/JSTestObj.cpp:
683         * bindings/scripts/test/JS/JSTestObj.h:
684         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
685         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
686
687 2011-10-27  Ilya Tikhonovsky  <loislo@chromium.org>
688
689         WebInspector: View throughs the exception when a child view are removed by removeChildren call.
690         https://bugs.webkit.org/show_bug.cgi?id=71002
691
692         Another followup fix after r98225.
693
694         Reviewed by Pavel Feldman.
695
696         * inspector/front-end/DatabaseTableView.js:
697         (WebInspector.DatabaseTableView.prototype._queryFinished):
698         (WebInspector.DatabaseTableView.prototype._queryError):
699
700 2011-10-27  Vsevolod Vlasov  <vsevik@chromium.org>
701
702         Web Inspector: Execution line in selected call frame should keep showing after toggling format source.
703         https://bugs.webkit.org/show_bug.cgi?id=70906
704
705         Reviewed by Yury Semikhatsky.
706
707         Test: inspector/debugger/selected-call-frame-after-formatting-source.html
708
709         * inspector/front-end/DebuggerPresentationModel.js:
710         (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
711
712 2011-10-27  Steve Block  <steveblock@google.com>
713
714         Numerous debug build fixes
715
716         Unreviewed build fix.
717
718         No new tests, buuld fix only.
719
720         * loader/icon/IconDatabase.cpp: urlForLogging() is used by both LOG() and LOG_ERROR()
721         * storage/AbstractDatabase.h: databaseDebugName() is used by both LOG() and LOG_ERROR()
722         * storage/DatabaseTask.cpp: m_complete is only available when !LOG_DISABLED
723
724 2011-10-27  Vsevolod Vlasov  <vsevik@chromium.org>
725
726         Web Inspector: Refactor ScriptsPanel so that ConsoleView does not depend on it.
727         https://bugs.webkit.org/show_bug.cgi?id=70899
728
729         Moved methods used in console view to DebuggerPresentationModel.
730         Changed debuggerPaused handler logic so that selectedCallFrame is never null when debugger is paused.
731
732         Reviewed by Pavel Feldman.
733
734         * inspector/front-end/ConsoleView.js:
735         * inspector/front-end/DebuggerPresentationModel.js:
736         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
737         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
738         (WebInspector.DebuggerPresentationModel.prototype.evaluateInSelectedCallFrame):
739         (WebInspector.DebuggerPresentationModel.prototype.getSelectedCallFrameVariables.propertiesCollected):
740         (WebInspector.DebuggerPresentationModel.prototype.getSelectedCallFrameVariables):
741         (WebInspector.DebuggerPresentationModel.prototype._dispatchExecutionLineChanged):
742         (WebInspector.DebuggerPresentationModel.prototype.get executionLineLocation):
743         * inspector/front-end/ScriptsPanel.js:
744         (WebInspector.ScriptsPanel.prototype._consoleCommandEvaluatedInSelectedCallFrame):
745         (WebInspector.ScriptsPanel.prototype._executionLineChanged):
746         (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
747         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
748         (WebInspector.ScriptsPanel.prototype._updateCallFrame):
749
750 2011-10-27  Vsevolod Vlasov  <vsevik@chromium.org>
751
752         Web Inspector: Add support for advanced search in content scripts.
753         https://bugs.webkit.org/show_bug.cgi?id=70923
754
755         Reviewed by Yury Semikhatsky.
756
757         * English.lproj/localizedStrings.js:
758         * inspector/front-end/ScriptsSearchScope.js:
759         * inspector/front-end/SettingsScreen.js:
760         (WebInspector.SettingsScreen):
761
762 2011-10-27  Ilya Tikhonovsky  <loislo@chromium.org>
763
764         Unreviewed one line fix for DOMStorageItemsView.
765         It have to use this.detachChildViews instead of this.element.removeChildren after r98225.
766
767         * inspector/front-end/DOMStorageItemsView.js:
768         (WebInspector.DOMStorageItemsView.prototype.update):
769
770 2011-10-27  Antti Koivisto  <antti@apple.com>
771
772         Matched declaration cache
773         https://bugs.webkit.org/show_bug.cgi?id=70931
774
775         Reviewed by Darin Adler.
776
777         Sets of style declarations are applied repeatedly for different elements when calculating the document style.
778         The same set of applied declarations results in the same non-inherited style, independent of the element and 
779         its context. We can use this to build a cache to speed up style applying and to share more style data for
780         reduced memory usage.
781         
782         The patch reduces RenderStyle memory use ~40% and total memory use by ~7% over HTML5 spec load.
783         It is also ~10% progression in PerformanceTests/Parser/html5-full-render.html.
784
785         * css/CSSProperty.cpp:
786         (WebCore::CSSProperty::isInheritedProperty):
787         * css/CSSProperty.h:
788         (WebCore::CSSProperty::CSSProperty):
789         (WebCore::CSSProperty::isInherited):
790         
791             We need to know which properties are inherited, something we didn't have available so far.
792         
793         * css/CSSStyleSelector.cpp:
794         (WebCore::CSSStyleSelector::matchAllRules):
795         
796             A set of declarations is only cacheable if it contains no element specific style. This way we
797             don't need to worry about cache invalidation. The whole style selector is reconstructed if the
798             stylesheets change, invalidating the cache too.
799     
800         (WebCore::CSSStyleSelector::styleForElement):
801         
802             Trigger image loads bit earlier so cached style will have them too.
803         
804         (WebCore::CSSStyleSelector::applyDeclaration):
805         (WebCore::CSSStyleSelector::applyDeclarations):
806         
807             Allow skipping over non-inherited properties.
808         
809         (WebCore::CSSStyleSelector::computeDeclarationHash):
810         
811             Hash function for declartion cache lookups.
812         
813         (WebCore::operator==):
814         (WebCore::operator!=):
815         (WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
816         
817             Lookup from cache.
818         
819         (WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
820         
821             Add to cache.
822         
823         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
824         
825             If cached style is found, copy the non-inherited properties from the cache and apply the inherited properties (if any) only.
826         
827             Font and zoom changes force full applying as they can affect values of other properties (this can be relaxed later).
828         
829         * css/CSSStyleSelector.h:
830         (WebCore::CSSStyleSelector::MatchResult::MatchResult):
831         
832             Cacheability bit.
833         
834         * rendering/style/RenderStyle.cpp:
835         (WebCore::RenderStyle::copyNonInheritedFrom):
836         * rendering/style/RenderStyle.h:
837         * rendering/style/SVGRenderStyle.cpp:
838         (WebCore::SVGRenderStyle::copyNonInheritedFrom):
839         * rendering/style/SVGRenderStyle.h:
840         
841             Functions for assembling RenderStyle from non-inherited parts of the cached style.
842
843 2011-10-27  Andrey Kosyakov  <caseq@chromium.org>
844
845         Web Inspector: [Extensions API] add ignoreCache flag to options of inspectedWindow.reload()
846         https://bugs.webkit.org/show_bug.cgi?id=70926
847
848         Reviewed by Pavel Feldman.
849
850         Test: http/tests/inspector/extensions-ignore-cache.html
851
852         * inspector/front-end/ExtensionServer.js:
853         (WebInspector.ExtensionServer.prototype._onReload):
854         * inspector/front-end/externs.js:
855         ():
856
857 2011-10-26  Steve Falkenburg  <sfalken@apple.com>
858
859         ResourceError doesn't support custom domains on Windows
860         https://bugs.webkit.org/show_bug.cgi?id=70983
861         <rdar://problem/10352145>
862
863         Reviewed by Oliver Hunt.
864
865         * platform/network/cf/ResourceErrorCF.cpp:
866         (WebCore::ResourceError::platformLazyInit): Add fallback case for unknown error types.
867
868 2011-10-26  Dan Bernstein  <mitz@apple.com>
869
870         Fix a slider thumb rendering regression in Chromium on OS X in r98520.
871
872         Reviewed by Anders Carlsson.
873
874         * rendering/RenderThemeMac.mm:
875         (WebCore::RenderThemeMac::paintSliderThumb): Reverted the changes to the Chromium code path.
876
877 2011-10-26  Julien Chaffraix  <jchaffraix@webkit.org>
878
879         Unreviewed, rolling out r98486.
880         http://trac.webkit.org/changeset/98486
881         https://bugs.webkit.org/show_bug.cgi?id=70748
882
883         Broke Chromium's test_expectation.txt
884
885         * platform/graphics/skia/PlatformContextSkia.cpp:
886         (WebCore::PlatformContextSkia::State::State):
887         (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
888         (WebCore::PlatformContextSkia::clipPathAntiAliased):
889         (WebCore::PlatformContextSkia::restore):
890         (WebCore::PlatformContextSkia::applyAntiAliasedClipPaths):
891         * platform/graphics/skia/PlatformContextSkia.h:
892
893 2011-10-26  Dan Bernstein  <mitz@apple.com>
894
895         <rdar://problem/10350775> REGRESSION (r97032): Slider thumb is not drawn
896         https://bugs.webkit.org/show_bug.cgi?id=70891
897
898         Reviewed by Anders Carlsson.
899
900         * platform/mac/ThemeMac.mm:
901         (WebCore::ThemeMac::ensuredView): Set the WebCoreFlippedView’s size, because NSSliderCell
902         always shrinks the slider thumb to fit in the control view’s bounds.
903         * rendering/RenderThemeMac.mm:
904         (WebCore::RenderThemeMac::paintSliderThumb): Removed workaround code no longer needed after
905         r97032.
906
907 2011-10-26  Chris Rogers  <crogers@google.com>
908
909         Add AudioSourceProviderClient and setFormat() method so we can know audio stream format
910         https://bugs.webkit.org/show_bug.cgi?id=70155
911
912         Reviewed by Eric Carlson.
913
914         No new tests.  There isn't yet an implementation to test.
915
916         * html/HTMLMediaElement.cpp:
917         (WebCore::HTMLMediaElement::createMediaPlayer):
918         (WebCore::HTMLMediaElement::setAudioSourceNode):
919         Let MediaPlayer know about the MediaElementAudioSourceNode so it can callback with audio stream format information.
920         * platform/audio/AudioSourceProvider.h:
921         (WebCore::AudioSourceProvider::setClient):
922         Add abstract setClient() method so a client may know about stream format information when it becomes available.
923         * platform/audio/AudioSourceProviderClient.h: Copied from Source/WebCore/webaudio/MediaElementAudioSourceNode.h.
924         (WebCore::AudioSourceProviderClient::~AudioSourceProviderClient):
925         Add abstract class AudioSourceProviderClient which implements setFormat() to receive audio stream format information.
926         * webaudio/MediaElementAudioSourceNode.cpp:
927         (WebCore::MediaElementAudioSourceNode::setFormat):
928         Concrete implementation of setFormat() so MediaElementAudioSourceNode can create necessary audio converters.
929         * webaudio/MediaElementAudioSourceNode.h:
930         Make MediaElementAudioSourceNode implement AudioSourceProviderClient so it can get audio stream format information
931         when its setFormat() method is called.
932
933 2011-10-26  Julien Chaffraix  <jchaffraix@webkit.org>
934
935         Unreviewed, rolling out r98483.
936         http://trac.webkit.org/changeset/98483
937         https://bugs.webkit.org/show_bug.cgi?id=47156
938
939         Change is causing some crashes and ASSERTs.
940
941         * loader/cache/CachedImage.cpp:
942         (WebCore::CachedImage::lookupImageForSize):
943         (WebCore::CachedImage::lookupImageForRenderer):
944         (WebCore::CachedImage::lookupOrCreateImageForRenderer):
945         (WebCore::CachedImage::setContainerSizeForRenderer):
946         (WebCore::CachedImage::imageSizeForRenderer):
947         (WebCore::CachedImage::computeIntrinsicDimensions):
948         (WebCore::CachedImage::createImage):
949         * loader/cache/CachedImage.h:
950         * page/ChromeClient.h:
951         * rendering/ImageBySizeCache.cpp:
952         (WebCore::ImageBySizeCache::addClient):
953         (WebCore::ImageBySizeCache::removeClient):
954         (WebCore::ImageBySizeCache::imageForSize):
955         (WebCore::ImageBySizeCache::sizeForClient):
956         * rendering/ImageBySizeCache.h:
957         * rendering/RenderBoxModelObject.cpp:
958         (WebCore::RenderBoxModelObject::calculateFillTileSize):
959         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
960         (WebCore::RenderBoxModelObject::paintNinePieceImage):
961         * rendering/RenderBoxModelObject.h:
962         * rendering/RenderImage.cpp:
963         (WebCore::RenderImage::RenderImage):
964         (WebCore::RenderImage::imageDimensionsChanged):
965         (WebCore::RenderImage::isLogicalWidthSpecified):
966         (WebCore::RenderImage::isLogicalHeightSpecified):
967         (WebCore::RenderImage::computeReplacedLogicalWidth):
968         (WebCore::RenderImage::computeReplacedLogicalHeight):
969         (WebCore::RenderImage::calcAspectRatioLogicalWidth):
970         (WebCore::RenderImage::calcAspectRatioLogicalHeight):
971         * rendering/RenderImage.h:
972         * rendering/RenderImageResource.cpp:
973         (WebCore::RenderImageResource::setContainerSizeForRenderer):
974         * rendering/RenderImageResourceStyleImage.cpp:
975         * rendering/RenderImageResourceStyleImage.h:
976         (WebCore::RenderImageResourceStyleImage::image):
977         (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer):
978         * rendering/RenderListMarker.cpp:
979         (WebCore::RenderListMarker::computePreferredLogicalWidths):
980         * rendering/RenderReplaced.cpp:
981         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth):
982         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight):
983         (WebCore::RenderReplaced::computeReplacedLogicalWidth):
984         * rendering/style/StyleCachedImage.cpp:
985         (WebCore::StyleCachedImage::computeIntrinsicDimensions):
986         (WebCore::StyleCachedImage::setContainerSizeForRenderer):
987         (WebCore::StyleCachedImage::addClient):
988         (WebCore::StyleCachedImage::removeClient):
989         * rendering/style/StyleCachedImage.h:
990         * rendering/style/StyleGeneratedImage.h:
991         (WebCore::StyleGeneratedImage::setContainerSizeForRenderer):
992         * rendering/style/StyleImage.h:
993         * rendering/style/StylePendingImage.h:
994         (WebCore::StylePendingImage::setContainerSizeForRenderer):
995         * rendering/svg/RenderSVGImage.cpp:
996         (WebCore::RenderSVGImage::layout):
997         * rendering/svg/RenderSVGRoot.cpp:
998         (WebCore::RenderSVGRoot::computeIntrinsicWidth):
999         (WebCore::RenderSVGRoot::computeIntrinsicHeight):
1000         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
1001         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
1002         (WebCore::RenderSVGRoot::layout):
1003         (WebCore::RenderSVGRoot::paint):
1004         (WebCore::RenderSVGRoot::calcViewport):
1005         (WebCore::RenderSVGRoot::computeRectForRepaint):
1006         * rendering/svg/RenderSVGRoot.h:
1007         * svg/SVGLength.cpp:
1008         (WebCore::SVGLength::determineViewport):
1009         * svg/SVGSVGElement.cpp:
1010         (WebCore::SVGSVGElement::SVGSVGElement):
1011         (WebCore::SVGSVGElement::relativeWidthValue):
1012         (WebCore::SVGSVGElement::relativeHeightValue):
1013         (WebCore::SVGSVGElement::currentViewBoxRect):
1014         * svg/SVGSVGElement.h:
1015         (WebCore::SVGSVGElement::setContainerSize):
1016         (WebCore::SVGSVGElement::containerSize):
1017         (WebCore::SVGSVGElement::hasSetContainerSize):
1018         * svg/graphics/SVGImage.cpp:
1019         (WebCore::SVGImage::setContainerSize):
1020         (WebCore::SVGImage::usesContainerSize):
1021         (WebCore::SVGImage::size):
1022         (WebCore::SVGImage::hasRelativeWidth):
1023         (WebCore::SVGImage::hasRelativeHeight):
1024         (WebCore::SVGImage::draw):
1025         (WebCore::SVGImage::computeIntrinsicDimensions):
1026         (WebCore::SVGImage::dataChanged):
1027         * svg/graphics/SVGImage.h:
1028
1029 2011-10-26  Eric Carlson  <eric.carlson@apple.com>
1030
1031         Constructors for all TextTrack interfaces should be available on DOMWindow
1032         https://bugs.webkit.org/show_bug.cgi?id=70734
1033
1034         Reviewed by Sam Weinig.
1035         
1036         window-properties-expected.txt and global-constructors-expected.txt updated for this change.
1037
1038         * page/DOMWindow.idl: Add HTMLTrackElement, TextTrack, and TextTrackCueList.
1039
1040 2011-10-25  Andy Estes  <aestes@apple.com>
1041
1042         REGRESSION (r93108): Shadow DOM media controls created for plug-in backed media elements.
1043         https://bugs.webkit.org/show_bug.cgi?id=70872
1044
1045         Reviewed by Eric Carlson.
1046
1047         r93108 added a call to HTMLMediaElement::configureMediaControls() in
1048         HTMLMediaElement::prepareForLoad(), which creates shadow DOM media
1049         controls and is only appropriate to call when media elements are not
1050         backed by plug-in proxies.
1051
1052         Resolve this by refactoring configureMediaControls() to do the right
1053         thing for the plug-in proxy case by calling MediaPlayer::setControls().
1054
1055         * html/HTMLMediaElement.cpp:
1056         (WebCore::HTMLMediaElement::attributeChanged): Call
1057         configureMediaControls() directly and remove the preprocessor
1058         conditional.
1059         (WebCore::HTMLMediaElement::configureMediaControls): Call
1060         MediaPlayer::setControls() if PLUGIN_PROXY_FOR_VIDEO is enabled.
1061
1062 2011-10-26  Jon Lee  <jonlee@apple.com>
1063
1064         selectedIndex gets set from -1 to 0 when modifying options
1065         https://bugs.webkit.org/show_bug.cgi?id=70547
1066         <rdar://problem/8388856>
1067
1068         Reviewed by Darin Adler.
1069
1070         Changing the text causes a recalculation of the list items, which in the menu list case
1071         forces the first element to be selected. We check the value of the selected option prior,
1072         and restore it if it differs.
1073
1074         Test: fast/dom/HTMLSelectElement/selected-index-preserved-when-option-text-changes.html
1075
1076         * html/HTMLOptionElement.cpp:
1077         (WebCore::HTMLOptionElement::setText):
1078         * html/HTMLSelectElement.h: promote usesMenuList() from private to public for use by HTMLOptionElement
1079
1080 2011-10-25  Alexey Proskuryakov  <ap@apple.com>
1081
1082         Embedded PDFs should be known to DocumentLoader
1083         https://bugs.webkit.org/show_bug.cgi?id=70864
1084
1085         Reviewed by Darin Adler.
1086
1087         * WebCore.exp.in: Added exports.
1088
1089 2011-10-26  Mark Hahnenberg  <mhahnenberg@apple.com>
1090
1091         Remove getOwnPropertySlotVirtual
1092         https://bugs.webkit.org/show_bug.cgi?id=70741
1093
1094         Reviewed by Geoffrey Garen.
1095
1096         No new tests.
1097
1098         Removed all declarations and definitions of getOwnPropertySlotVirtual.
1099         Also replaced all call sites to getOwnPropertyVirtualVirtual with a 
1100         corresponding lookup in the MethodTable.
1101
1102         * WebCore.exp.in:
1103         * bindings/js/JSDOMWindowCustom.cpp:
1104         (WebCore::DialogHandler::returnValue):
1105         * bindings/js/JSDOMWindowShell.cpp:
1106         (WebCore::JSDOMWindowShell::getOwnPropertySlot):
1107         * bindings/js/JSDOMWindowShell.h:
1108         * bindings/js/SerializedScriptValue.cpp:
1109         (WebCore::CloneSerializer::getSparseIndex):
1110         (WebCore::CloneSerializer::getProperty):
1111         * bindings/scripts/CodeGeneratorJS.pm:
1112         (GenerateHeader):
1113         (GenerateImplementation):
1114         (GenerateConstructorDeclaration):
1115         (GenerateConstructorDefinition):
1116         * bridge/objc/objc_runtime.h:
1117         * bridge/objc/objc_runtime.mm:
1118         * bridge/qt/qt_runtime.cpp:
1119         * bridge/qt/qt_runtime.h:
1120         * bridge/runtime_array.cpp:
1121         * bridge/runtime_array.h:
1122         * bridge/runtime_method.cpp:
1123         * bridge/runtime_method.h:
1124         * bridge/runtime_object.cpp:
1125         * bridge/runtime_object.h:
1126
1127 2011-10-26  Alejandro G. Castro  <alex@igalia.com>
1128
1129         [GTK] Fix distcheck compilation
1130         https://bugs.webkit.org/show_bug.cgi?id=70921
1131
1132         Add EventTargetFactory.in to the dist files, required after
1133         r98388.
1134
1135         Reviewed by Martin Robinson.
1136
1137         * GNUmakefile.am:
1138
1139 2011-10-26  Michael Saboff  <msaboff@apple.com>
1140
1141         Increase StringImpl Flag Bits for 8 bit Strings
1142         https://bugs.webkit.org/show_bug.cgi?id=70937
1143
1144         Increased the number of bits used for flags in StringImpl
1145         from 6 to 8 bits. This frees up 2 flag bits that will be
1146         used for 8-bit string support. Updated hash methods accordingly.
1147         Changed hash value masking from the low bits to the high
1148         bits.
1149
1150         Reviewed by Darin Adler.
1151
1152         * bindings/scripts/CodeGeneratorJS.pm:
1153         (GenerateHashValue):
1154
1155 2011-10-26  Dimitri Glazkov  <dglazkov@chromium.org>
1156
1157         REGRESSION (r94887): Scrolling the HTML spec is more jerky now than it was (regression)
1158         https://bugs.webkit.org/show_bug.cgi?id=70857
1159
1160         Revert r94887, because it regressed performance.
1161
1162         Rubber-stamped by Antti Koivisto.
1163
1164         * css/CSSStyleSelector.cpp:
1165         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1166         (WebCore::parentStylePreventsSharing):
1167         * css/SelectorChecker.cpp:
1168         (WebCore::SelectorChecker::checkSelector):
1169         * dom/Element.cpp:
1170         (WebCore::Element::recalcStyle):
1171         (WebCore::checkForSiblingStyleChanges):
1172         * rendering/style/RenderStyle.cpp:
1173         (WebCore::RenderStyle::RenderStyle):
1174         * rendering/style/RenderStyle.h:
1175         (WebCore::InheritedFlags::childrenAffectedByDirectAdjacentRules):
1176         (WebCore::InheritedFlags::setChildrenAffectedByDirectAdjacentRules):
1177
1178 2011-10-26  Alexander Pavlov  <apavlov@chromium.org>
1179
1180         Web Inspector: Need workaround for the red crossed circle in the status bar not bringing up the console when clicked
1181         https://bugs.webkit.org/show_bug.cgi?id=70928
1182
1183         Reviewed by Pavel Feldman.
1184
1185         * inspector/front-end/inspector.css:
1186         (#error-count-img):
1187         (#error-count + #warning-count-img):
1188         (#warning-count-img):
1189         * inspector/front-end/inspector.js:
1190         (WebInspector._updateErrorAndWarningCounts):
1191
1192 2011-10-26  Mike Reed  <reed@google.com>
1193
1194         [skia] replace offscreen technique with native support for antialiased clipping
1195         https://bugs.webkit.org/show_bug.cgi?id=70748
1196
1197         Reviewed by Stephen White.
1198
1199         ~100 layout tests need to be rebaselined, as the native aa-clipping differs sometimes in the low
1200         bits of the result. Other than that, the results should be the same, except that now the drawing
1201         can go directly to the canvas, rather than being direct offscreen and then have that result
1202         "clipped" during the restore. This has the effect of allowing LCD text to be drawing inside a
1203         antialiased clip area.
1204
1205         * platform/graphics/skia/PlatformContextSkia.cpp:
1206         (WebCore::PlatformContextSkia::State::State):
1207         (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
1208         (WebCore::PlatformContextSkia::clipPathAntiAliased):
1209         (WebCore::PlatformContextSkia::restore):
1210
1211 2011-10-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1212
1213         CSS 2.1 failure: background-intrinsic-*
1214         https://bugs.webkit.org/show_bug.cgi?id=47156
1215
1216         SVGs do not work as tiled background images
1217         https://bugs.webkit.org/show_bug.cgi?id=16281
1218
1219         Apply preserveAspectRatio and synthesize viewboxes in <img>
1220         https://bugs.webkit.org/show_bug.cgi?id=34521
1221
1222         SVG background doesn't resize properly when dimensions are changed
1223         https://bugs.webkit.org/show_bug.cgi?id=42944
1224
1225         Images with percent height inside a floated div should use intrinsic height.
1226         https://bugs.webkit.org/show_bug.cgi?id=45439
1227
1228         SVG image in HTML changes size as the window is resized
1229         https://bugs.webkit.org/show_bug.cgi?id=52045
1230
1231         Reviewed by Antti Koivisto.
1232
1233         Implement intrinsic sizing support for SVGImage (svg embedded through <html:img>/<svg:image>/background-image/border-image/...).
1234         This is demanded by CSS 2.1, and covered by new layout tests in LayoutTests/css2.1 and several new custom testcases.
1235
1236         Tests: css2.1/20110323/background-intrinsic-001.htm
1237                css2.1/20110323/background-intrinsic-002.htm
1238                css2.1/20110323/background-intrinsic-003.htm
1239                css2.1/20110323/background-intrinsic-004.htm
1240                css2.1/20110323/background-intrinsic-005.htm
1241                css2.1/20110323/background-intrinsic-006.htm
1242                css2.1/20110323/background-intrinsic-007.htm
1243                css2.1/20110323/background-intrinsic-008.htm
1244                css2.1/20110323/background-intrinsic-009.htm
1245                svg/as-background-image/background-image-preserveaspectRatio-support.html (adapted from testcase from bug 34521)
1246                svg/as-background-image/background-image-tiled.html (reduction from bug 16281)
1247                svg/as-background-image/same-image-two-instances-background-image.html
1248                svg/as-image/img-preserveAspectRatio-support-1.html (reduction from bug 34521)
1249                svg/as-image/same-image-two-instances.html
1250                svg/as-image/svg-as-relative-image-with-explicit-size.html
1251                svg/as-image/svg-image-change-content-size.xhtml (reduction from bug 42944)
1252                svg/zoom/page/zoom-img-preserveAspectRatio-support-1.html
1253
1254         * loader/cache/CachedImage.cpp: Enable SVGImage <-> IntSize cache.
1255         (WebCore::CachedImage::lookupImageForSize): Use recently introduced ImageBySizeCache, to lookup an image for a certain size.
1256         (WebCore::CachedImage::lookupImageForRenderer): Lookup image by renderer, which first looks up a size for a renderer, then uses lookupImageForSize().
1257         (WebCore::createSVGImage): Refactored from createImage(), contains the SVGImage creation part only.
1258         (WebCore::CachedImage::lookupOrCreateImageForRenderer): Use recently introduced ImageBySizeCache, to dynamically create copies of m_image if needed.
1259         (WebCore::CachedImage::setContainerSizeForRenderer): For SVGImages, pass on container size handling to ImageBySizeCache.
1260         (WebCore::CachedImage::imageSizeForRenderer): Figure out the image size, respecting per-renderer overrides, for a certain renderer.
1261         (WebCore::CachedImage::computeIntrinsicDimensions): Remove unnecessary RenderObject parameter.
1262         (WebCore::CachedImage::addClientForRenderer): Special variant of addClient(), overriding the existing in CachedResource.
1263         (WebCore::CachedImage::removeClientForRenderer): Special variant of removeClient(), that also clears the image in the ImageBySizeCache.
1264         (WebCore::CachedImage::createImage): Refactor SVGImage creation into createSVGImage() free function, to be useable from lookupOrCreateImageForRenderer().
1265         * loader/cache/CachedImage.h: Expose removeClientForRenderer().
1266         * page/ChromeClient.h:
1267         (WebCore::ChromeClient::isSVGImageChromeClient): Used to identify whether a RenderSVGRoot is embedded through a SVGImage. Returns false, by default.
1268         * rendering/ImageBySizeCache.cpp:
1269         (WebCore::ImageBySizeCache::addClient): Assert the passed renderer is valid.
1270         (WebCore::ImageBySizeCache::removeClient): Ditto. Allow removeClient() to be called w/o prio addClient() usage.
1271         (WebCore::ImageBySizeCache::setClient): New helper function, that combines the usage of addClient/removeClient, for the use in CachedImage.
1272         (WebCore::ImageBySizeCache::imageForSize): Respect empty sizes, just return 0, instead of asserting.
1273         (WebCore::ImageBySizeCache::imageForRenderer): Added a helper that retrieves an image for a renderer, by lookup up its size and using imageForSize().
1274         * rendering/ImageBySizeCache.h: Expose setClient() & imageForRenderer().
1275         * rendering/RenderBoxModelObject.cpp: Implement CSS 2.1 intrinsic size negotiation for images.
1276         (WebCore::resolveWidthForRatio): New inline helper function used bz calculateImageIntrinsicDimensions.
1277         (WebCore::resolveHeightForRatio): Ditto.
1278         (WebCore::resolveAgainstIntrinsicWidthOrHeightAndRatio): Ditto.
1279         (WebCore::resolveAgainstIntrinsicRatio):  Ditto.
1280         (WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): New helper function, containing the main algorithm, which is a pure transcription of the spec.
1281         (WebCore::RenderBoxModelObject::calculateFillTileSize): Use new calculateImageIntrinsicDimensions() helper to figure out the intrinsic size.
1282         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Propagate calculateFillTileSize() result to the image resource, via setContainerSizeForRenderer().
1283         (WebCore::RenderBoxModelObject::paintNinePieceImage): Use new calculateImageIntrinsicDimensions() helper to figure out the intrinsic size.
1284         * rendering/RenderBoxModelObject.h: Clarify some variable names, added calculateImageIntrinsicDimensions().
1285         * rendering/RenderImage.cpp:
1286         (WebCore::RenderImage::RenderImage): Use IntSize(), instead of IntSize(0, 0).
1287         (WebCore::RenderImage::updateIntrinsicSizeIfNeeded): Refactored from imageDimensionsChanged().
1288         (WebCore::RenderImage::imageDimensionsChanged): Use updateIntrinsicSizeIfNeeded().
1289         (WebCore::RenderImage::computeReplacedLogicalWidth): Use RenderReplaced::computeReplacedLogicalWidth() exclusively. For this to work, the intrinsic size must be correct.
1290         (WebCore::RenderImage::computeIntrinsicRatioInformation): Default implementation for non-SVGImages.
1291         (WebCore::RenderImage::needsPreferredWidthsRecalculation): Return true, just like RenderPart, if embeddedContentBox is not null.
1292         (WebCore::RenderImage::embeddedContentBox): Returns the RenderSVGRoot* renderer of the embedded SVG, if possible.
1293         * rendering/RenderImage.h: Remove isLogicalWidth/HeightSpecified() / computeReplacedLogicalHeight() / calcAspectRatioLogicalWidth/Height().
1294         * rendering/RenderImageResource.cpp:
1295         (WebCore::RenderImageResource::setContainerSizeForRenderer): Pass around new "float containerZoomFactor" parameter.
1296         * rendering/RenderImageResourceStyleImage.cpp:
1297         (WebCore::RenderImageResourceStyleImage::image): embeddedContentBox() is now calling image() earlier than before. We now have to handle the case that the image is pending.
1298         (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer): Pass zoom factor.
1299         * rendering/RenderImageResourceStyleImage.h:
1300         * rendering/RenderListMarker.cpp:
1301         (WebCore::RenderListMarker::computePreferredLogicalWidths): Pass effective zoom to setContainerSizeForRenderer().
1302         * rendering/RenderReplaced.cpp:
1303         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth): Generalized this code, as RenderImage is using it as well now. Marginal changes needed.
1304         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight): Ditto.
1305         (WebCore::RenderReplaced::computeReplacedLogicalWidth): Ditto.
1306         * rendering/style/StyleCachedImage.cpp:
1307         (WebCore::StyleCachedImage::computeIntrinsicDimensions): Stop passing m_renderer to CachedImage, it's no longer needed.
1308         (WebCore::StyleCachedImage::setContainerSizeForRenderer): Add "float containerZoomFactor" parameter.
1309         (WebCore::StyleCachedImage::addClient): Forward to new addClientForRenderer().
1310         (WebCore::StyleCachedImage::removeClient): Call new removeClientForRenderer() instead of removeClient(), so the ImageBySizeCache is also updated.
1311         * rendering/style/StyleCachedImage.h: Add "float containerZoomFactor" parameter to setContainerSizeForRenderer.
1312         * rendering/style/StyleGeneratedImage.h:
1313         (WebCore::StyleGeneratedImage::setContainerSizeForRenderer): Ditto.
1314         * rendering/style/StyleImage.h: Ditto.
1315         * rendering/style/StylePendingImage.h:
1316         (WebCore::StylePendingImage::setContainerSizeForRenderer): Ditto.
1317         * rendering/svg/RenderSVGImage.cpp:
1318         (WebCore::RenderSVGImage::layout): Always supply a container size when embedding SVGs in <svg:image>.
1319         * rendering/svg/RenderSVGRoot.cpp: Move "override container size" from SVGSVGElement into RenderSVGRoot, where it belongs.
1320         (WebCore::RenderSVGRoot::isEmbeddedThroughImageElement): Add helper method to determine whether we're loaded through SVGImage.
1321         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): If we have a valid container size, it has precendence (only supplied via external SVGImages).
1322         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.
1323         (WebCore::RenderSVGRoot::layout): Remove calcViewport() usage, no need to track/override the viewport size anymore, all done in coputeReplacedLogical* now.
1324         (WebCore::RenderSVGRoot::paint): Use borderBoxRect() which now always matches the previously computed m_viewportSize. 
1325         (WebCore::RenderSVGRoot::computeRectForRepaint): Ditto.
1326         * rendering/svg/RenderSVGRoot.h: Move "override container size" from SVGSVGElement into RenderSVGRoot, where it belongs.
1327         (WebCore::RenderSVGRoot::containerSize):
1328         (WebCore::RenderSVGRoot::setContainerSize):
1329         * svg/SVGLength.cpp:
1330         (WebCore::SVGLength::determineViewport): Resolve lengths against override container size in documents embedded through SVGImage.
1331         * svg/SVGSVGElement.cpp: Remove "override container size" handling from SVGSVGElement.
1332         (WebCore::SVGSVGElement::SVGSVGElement): Ditto.
1333         (WebCore::SVGSVGElement::currentViewBoxRect): Always synthesize a viewBox, if we're embedded through SVGImage, as demanded by SVG 1.1 2nd Edition.
1334         * svg/SVGSVGElement.h:
1335         * svg/graphics/SVGImage.cpp:
1336         (WebCore::SVGImageChromeClient::setObserver): Helper function.
1337         (WebCore::SVGImageChromeClient::isSVGImageChromeClient): Return true, used to identify whether RenderSVGRoot is embedded through SVGImage.
1338         (WebCore::SVGImage::setContainerZoom): Forwarded to Page::setPageZoomFactor.
1339         (WebCore::SVGImage::setContainerSize): Assert that container size is not empty. We should never receive an empty container size.
1340         (WebCore::SVGImage::usesContainerSize): Adapt to override container size changes, it now lives in RenderSVGRoot instead of SVGSVGElement.
1341         (WebCore::SVGImage::size): New algorithm to figure out the size of an embedded SVG, as demanded by the CSS/SVG specs.
1342         (WebCore::SVGImage::draw): Stop calling layout() while painting!
1343         (WebCore::SVGImage::embeddedContentBox): Add helper which returns the RenderSVGRoot of the document.
1344         (WebCore::SVGImage::computeIntrinsicDimensions): Implement intrinsic ratio calculation. 
1345         (WebCore::SVGImage::dataChanged): Force calling FrameView::setCanHaveScrollbars(false), as SVG images now always synthesize a viewBox, and thus never receive scrollbars.
1346         * svg/graphics/SVGImage.h:
1347
1348 2011-10-26  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1349
1350         Properly suspend/resume Geolocation/DeviceMotion/DeviceOrientation objects
1351         https://bugs.webkit.org/show_bug.cgi?id=70328
1352
1353         Reviewed by Simon Hausmann.
1354
1355         Also remove checks for m_client in DeviceMotionController as it can never be null.
1356
1357         No new tests, as the suspend/resume functionality is not fully working yet.
1358
1359         * dom/DeviceMotionController.cpp:
1360         (WebCore::DeviceMotionController::timerFired):
1361         (WebCore::DeviceMotionController::addListener):
1362         (WebCore::DeviceMotionController::removeListener):
1363         (WebCore::DeviceMotionController::removeAllListeners):
1364         (WebCore::DeviceMotionController::suspend):
1365         (WebCore::DeviceMotionController::resume):
1366         * dom/DeviceMotionController.h:
1367         * dom/DeviceOrientationController.cpp:
1368         (WebCore::DeviceOrientationController::suspend):
1369         (WebCore::DeviceOrientationController::resume):
1370         * dom/DeviceOrientationController.h:
1371         * dom/Document.cpp:
1372         (WebCore::Document::suspendActiveDOMObjects):
1373         (WebCore::Document::resumeActiveDOMObjects):
1374         (WebCore::Document::stopActiveDOMObjects):
1375         * dom/Document.h:
1376         * dom/ScriptExecutionContext.h:
1377         * page/GeolocationController.cpp:
1378         (WebCore::GeolocationController::GeolocationController):
1379         (WebCore::GeolocationController::removeObserver):
1380         (WebCore::GeolocationController::suspend):
1381         (WebCore::GeolocationController::resume):
1382         * page/GeolocationController.h:
1383
1384 2011-10-26  Pavel Feldman  <pfeldman@google.com>
1385
1386         Not reviewed: follow up to 98236 - moved inspector settings initialization earlier to unbreak settings panel.
1387
1388         * inspector/front-end/TextEditorModel.js:
1389         (WebInspector.TextEditorModel):
1390
1391 2011-10-26  Zalan Bujtas  <zbujtas@gmail.com>
1392
1393         Name viewport change event consistently.
1394         https://bugs.webkit.org/show_bug.cgi?id=70901
1395
1396         Reviewed by Kenneth Rohde Christiansen.
1397
1398         Use ViewportPropertiesDidChange term consistently throughout WebKit.
1399
1400         No tests needed as the change is only method renaming.
1401
1402         * page/Chrome.cpp:
1403         (WebCore::Chrome::dispatchViewportPropertiesDidChange):
1404         * page/Chrome.h:
1405         * page/ChromeClient.h:
1406         (WebCore::ChromeClient::dispatchViewportPropertiesDidChange):
1407         * page/Page.cpp:
1408         (WebCore::Page::updateViewportArguments):
1409
1410 2011-10-25  Stephen White  <senorblanco@chromium.org>
1411
1412         [chromium] Canvas2D should rate-limit drawing to prevent swamping the GPU process.
1413         https://bugs.webkit.org/show_bug.cgi?id=70367
1414
1415         Reviewed by James Robinson.
1416
1417         Sadly, we don't have infrastructure to test this kind of GPU swamping
1418         yet.
1419
1420         * WebCore.gypi:
1421         Add RateLimiter.* to the Chromium build.
1422         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1423         (WebCore::Canvas2DLayerChromium::contentChanged):
1424         When the layer is notified that the contents have changed, ping the
1425         rate limiter.
1426         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1427         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1428         (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
1429         Call (new) virtual contentChanged() on a layer when its contents have
1430         been changed (e.g., by a drawing call).
1431         * platform/graphics/chromium/LayerChromium.h:
1432         (WebCore::LayerChromium::contentChanged):
1433         New virtual contentChanged().
1434         * platform/graphics/chromium/RateLimiter.cpp: Added.
1435         (WebCore::RateLimiter::create):
1436         Rate limiter factory function.
1437         (WebCore::RateLimiter::RateLimiter):
1438         (WebCore::RateLimiter::start):
1439         Public API to start rate limiting a context.
1440         (WebCore::RateLimiter::stop):
1441         Public API to stop rate limiting a context.
1442         (WebCore::RateLimiter::rateLimitContext):
1443         Internal timer callback when a context should be rate limited.
1444         * platform/graphics/chromium/RateLimiter.h: Added.
1445         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1446         (WebCore::WebGLLayerChromium::WebGLLayerChromium):
1447         Remove rate limiting timer and extension check (moved to RateLimiter).
1448         (WebCore::WebGLLayerChromium::contentChanged):
1449         The function formerly known as setTextureUpdated(), now renamed to
1450         match the base class virtual contentChanged().  Call rate limiter in
1451         CCLayerTreeHost (local implementation removed).
1452         (WebCore::WebGLLayerChromium::setContext):
1453         When the context is changed, stop the pending rate limiter on the old
1454         context.  Remove extension check (moved to RateLimiter).
1455         * platform/graphics/chromium/WebGLLayerChromium.h:
1456         Remove rate limiting timer and extension check (moved to RateLimiter).
1457         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1458         (WebCore::CCLayerTreeHost::startRateLimiter):
1459         Public API for starting per-context rate limiter.
1460         (WebCore::CCLayerTreeHost::stopRateLimiter):
1461         Public API for stopping per-context rate limiter.
1462         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1463         Implementation of per-GraphicsContext3D RateLimiter.
1464
1465
1466 2011-10-26  Pavel Feldman  <pfeldman@chromium.org>
1467
1468         Not reviewed: fixing inspector extensions tests.
1469
1470         * inspector/front-end/ConsoleMessage.js:
1471         (WebInspector.ConsoleMessageImpl):
1472         * inspector/front-end/ExtensionServer.js:
1473         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
1474
1475 2011-10-26  Balazs Kelemen  <kbalazs@webkit.org>
1476
1477         ParallelJobs path of FEConvolveMatrix is erroneous
1478         https://bugs.webkit.org/show_bug.cgi?id=70409
1479
1480         Reviewed by Zoltan Herczeg.
1481
1482         Covered by existing tests.
1483
1484         * platform/graphics/filters/FEConvolveMatrix.cpp:
1485         (WebCore::FEConvolveMatrix::fastSetInteriorPixels):
1486         Reject the silly idea that bytes per pixel ratio is 3 in preserveAlphaValues mode.
1487         The bug was hidden so far because that computation has no effect when we are going
1488         with the full inferior area in one round (in that case clipBottom and yEnd are equals
1489         and the value of the expression is always 0). With ParallelJobs we process sub-areas
1490         on each thread which has triggered the issue.
1491
1492 2011-10-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1493
1494         Unreviewed, rolling out r98393.
1495         http://trac.webkit.org/changeset/98393
1496         https://bugs.webkit.org/show_bug.cgi?id=70892
1497
1498         "Compilation is broken on Chromium Webkit Mac Builder (dbg) "
1499         (Requested by yurys on #webkit).
1500
1501         * platform/graphics/chromium/LayerChromium.h:
1502         (WebCore::LayerChromium::setMasksToBounds):
1503         (WebCore::LayerChromium::setMaskLayer):
1504
1505 2011-10-26  Pavel Feldman  <pfeldman@google.com>
1506
1507         Web Inspector: order console message parameters for better optional parameters handling.
1508         https://bugs.webkit.org/show_bug.cgi?id=70809
1509
1510         Reviewed by Yury Semikhatsky.
1511
1512         * inspector/Inspector.json:
1513         * inspector/front-end/ConsoleMessage.js:
1514         (WebInspector.ConsoleMessageImpl):
1515         (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
1516         * inspector/front-end/ConsoleModel.js:
1517         (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
1518         (WebInspector.ConsoleMessage.create):
1519         (WebInspector.ConsoleDispatcher.prototype.messageAdded):
1520         * inspector/front-end/ConsoleView.js:
1521         (WebInspector.ConsoleCommandResult):
1522         (WebInspector.ConsoleMessage.create):
1523         * inspector/front-end/ExtensionServer.js:
1524         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
1525         * inspector/front-end/NetworkManager.js:
1526         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
1527         * inspector/front-end/inspector.js:
1528         (WebInspector.log.logMessage):
1529         (WebInspector.log):
1530
1531 2011-10-26  Vsevolod Vlasov  <vsevik@chromium.org>
1532
1533         Web Inspector: Debugger fails when there is an invalid watch expression.
1534         https://bugs.webkit.org/show_bug.cgi?id=70718
1535
1536         Reviewed by Pavel Feldman.
1537
1538         Test: inspector/debugger/watch-expressions-panel-switch.html
1539
1540         * inspector/front-end/ScriptsPanel.js:
1541         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
1542
1543 2011-10-26  Fady Samuel  <fsamuel@chromium.org>
1544
1545         Page Scale Factor broken when navigating history on pages with child frames
1546         https://bugs.webkit.org/show_bug.cgi?id=70459
1547
1548         Reviewed by Darin Fisher.
1549
1550         With frameScaleFactor now always returning 1.0 for subframes and pageScaleFactor for the mainFrame,
1551         and there being only a single pageScaleFactor, history for scaling is broken. Scaling history is
1552         saved on a per frame basis but restored, overriding the per-page pageScaleFactor multiple times.
1553         As a result, sometimes pages that have subframes end up getting a scale factor of 1.0 instead
1554         of the correct scale factor that was assigned to the main frame.
1555
1556         No new tests because I don't know how to test this.
1557
1558         * loader/HistoryController.cpp:
1559         (WebCore::HistoryController::restoreScrollPositionAndViewState):
1560
1561 2011-10-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1562
1563         Unreviewed, rolling out r98429.
1564         http://trac.webkit.org/changeset/98429
1565         https://bugs.webkit.org/show_bug.cgi?id=70881
1566
1567         "webkit_gpu_tests fail in Chromium" (Requested by yurys on
1568         #webkit).
1569
1570         * platform/graphics/chromium/LayerRendererChromium.cpp:
1571         (WebCore::LayerRendererChromium::initialize):
1572         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1573         (WebCore::WebGLLayerChromium::layerRendererContext):
1574         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1575         (WebCore::CCHeadsUpDisplay::enabled):
1576         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1577         (WebCore::CCLayerTreeHost::initialize):
1578         (WebCore::CCLayerTreeHost::context):
1579         (WebCore::CCLayerTreeHost::setNeedsAnimate):
1580         (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
1581         (WebCore::CCLayerTreeHost::setNeedsRedraw):
1582         (WebCore::CCLayerTreeHost::composite):
1583         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1584         (WebCore::CCSettings::CCSettings):
1585         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1586         (WebCore::CCThreadProxy::setThread):
1587         * platform/graphics/chromium/cc/CCThreadProxy.h:
1588
1589 2011-10-26  Ben Wells  <benwells@chromium.org>
1590
1591         Canvas drawImage with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
1592         https://bugs.webkit.org/show_bug.cgi?id=66920
1593
1594         Reviewed by James Robinson.
1595
1596         Test: fast/canvas/canvas-composite-image.html
1597
1598         Use the same method as fills to handle composited drawImage calls that will affect the whole
1599         canvas. To do this code used when doing fills has been factored into seperate functions and
1600         used by drawImage. Some functions used to do these types of operations have also been renamed.
1601
1602         * html/canvas/CanvasRenderingContext2D.cpp:
1603         (WebCore::isFullCanvasCompositeMode):
1604         (WebCore::CanvasRenderingContext2D::fill):
1605         (WebCore::CanvasRenderingContext2D::fillRect):
1606         (WebCore::CanvasRenderingContext2D::drawImage):
1607         (WebCore::CanvasRenderingContext2D::calculateCompositingBufferRect):
1608         (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
1609         (WebCore::CanvasRenderingContext2D::compositeBuffer):
1610         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
1611         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
1612         * html/canvas/CanvasRenderingContext2D.h:
1613
1614 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1615
1616         Unreviewed, rolling out r98379.
1617         http://trac.webkit.org/changeset/98379
1618         https://bugs.webkit.org/show_bug.cgi?id=70875
1619
1620         Did not pass on JSC ports (Requested by abarth on #webkit).
1621
1622         * bindings/scripts/CodeGeneratorJS.pm:
1623         (GenerateHeader):
1624         (GenerateImplementation):
1625         * bindings/scripts/CodeGeneratorV8.pm:
1626         (GenerateHeader):
1627         (GenerateArgumentsCountCheck):
1628         (GenerateImplementation):
1629         * html/canvas/CanvasRenderingContext2D.idl:
1630         * page/DOMWindow.idl:
1631
1632 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1633
1634         Unreviewed, rolling out r98346.
1635         http://trac.webkit.org/changeset/98346
1636         https://bugs.webkit.org/show_bug.cgi?id=70874
1637
1638         Breaks JSC-based bots. (Requested by pfeldman on #webkit).
1639
1640         * inspector/front-end/ScriptsPanel.js:
1641         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
1642
1643 2011-10-25  Nat Duca  <nduca@chromium.org>
1644
1645         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
1646         https://bugs.webkit.org/show_bug.cgi?id=70838
1647
1648         Reviewed by James Robinson.
1649
1650         * platform/graphics/chromium/LayerRendererChromium.cpp:
1651         (WebCore::LayerRendererChromium::initialize):
1652         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1653         (WebCore::WebGLLayerChromium::layerRendererContext):
1654         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1655         (WebCore::CCHeadsUpDisplay::enabled):
1656         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1657         (WebCore::CCLayerTreeHost::initialize):
1658         (WebCore::CCLayerTreeHost::context):
1659         (WebCore::CCLayerTreeHost::setNeedsAnimate):
1660         (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
1661         (WebCore::CCLayerTreeHost::setNeedsRedraw):
1662         (WebCore::CCLayerTreeHost::composite):
1663         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1664         (WebCore::CCSettings::CCSettings):
1665         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1666         (WebCore::CCThreadProxy::hasThread):
1667         * platform/graphics/chromium/cc/CCThreadProxy.h:
1668
1669 2011-10-25  Xiaomei Ji  <xji@chromium.org>
1670
1671         --webkit-visual-word does not work in multi-line
1672         https://bugs.webkit.org/show_bug.cgi?id=61344
1673
1674         Reviewed by Ryosuke Niwa.
1675
1676         Get next or previous root inline box (which is not in the same
1677         render object as the current root inline box) by traversing DOM node.
1678
1679         Test: editing/selection/move-by-word-visually-inline-block-positioned-element.html
1680
1681         * editing/visible_units.cpp:
1682         (WebCore::previousRootInlineBox):
1683         (WebCore::nextRootInlineBox):
1684         (WebCore::leftInlineBox):
1685         (WebCore::rightInlineBox):
1686
1687 2011-10-25  Adam Barth  <abarth@webkit.org>
1688
1689         JSEventTarget.cpp has a bunch of unnessary includes
1690         https://bugs.webkit.org/show_bug.cgi?id=70865
1691
1692         Reviewed by Eric Seidel.
1693
1694         In the process of removing these includes, I noticed we had a bunch of
1695         non-autogenerated code in this file, which I've now autogenerated.
1696
1697         * bindings/js/JSEventTarget.cpp:
1698         (WebCore::toEventTarget):
1699             - One subtly here is the outter static_cast, which is caused by an
1700               inheritance infelicity in JavaScriptAudioNode, which I've noted
1701               with a FIXME.  In any case, the extra static_cast shouldn't cause
1702               any trouble.
1703         * webaudio/JavaScriptAudioNode.h:
1704
1705 2011-10-25  Adam Barth  <abarth@webkit.org>
1706
1707         V8DOMWrapper.cpp has unneeded header includes
1708         https://bugs.webkit.org/show_bug.cgi?id=70863
1709
1710         Reviewed by Eric Seidel.
1711
1712         * bindings/v8/V8DOMWrapper.cpp:
1713
1714 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1715
1716         Resetting baseline for test bindings
1717
1718         Unreviewed preemptive build fix
1719
1720         No new tests.
1721
1722         * bindings/scripts/test/JS/JSTestObj.cpp:
1723         * bindings/scripts/test/JS/JSTestObj.h:
1724
1725 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1726
1727         Remove deletePropertyVirtual
1728         https://bugs.webkit.org/show_bug.cgi?id=70738
1729
1730         Reviewed by Geoffrey Garen.
1731
1732         No new tests.
1733
1734         Removed all declarations and definitions of deletePropertyVirtual.
1735         Also replaced all call sites to deletePropertyVirtual with a 
1736         corresponding lookup in the MethodTable.
1737
1738         * WebCore.exp.in:
1739         * bindings/js/JSDOMStringMapCustom.cpp:
1740         (WebCore::JSDOMStringMap::deleteProperty):
1741         * bindings/js/JSDOMWindowCustom.cpp:
1742         (WebCore::JSDOMWindow::deleteProperty):
1743         * bindings/js/JSDOMWindowShell.cpp:
1744         (WebCore::JSDOMWindowShell::deleteProperty):
1745         * bindings/js/JSDOMWindowShell.h:
1746         * bindings/js/JSHistoryCustom.cpp:
1747         (WebCore::JSHistory::deleteProperty):
1748         * bindings/js/JSLocationCustom.cpp:
1749         (WebCore::JSLocation::deleteProperty):
1750         * bindings/js/JSStorageCustom.cpp:
1751         (WebCore::JSStorage::deleteProperty):
1752         * bindings/js/ScriptObject.cpp:
1753         (WebCore::ScriptGlobalObject::remove):
1754         * bindings/objc/WebScriptObject.mm:
1755         (-[WebScriptObject removeWebScriptKey:]):
1756         * bindings/scripts/CodeGeneratorJS.pm:
1757         (GenerateHeader):
1758         * bridge/NP_jsobject.cpp:
1759         (_NPN_RemoveProperty):
1760         * bridge/jni/jni_jsobject.mm:
1761         (JavaJSObject::removeMember):
1762         * bridge/objc/objc_runtime.h:
1763         * bridge/objc/objc_runtime.mm:
1764         * bridge/runtime_array.cpp:
1765         * bridge/runtime_array.h:
1766         * bridge/runtime_object.cpp:
1767         * bridge/runtime_object.h:
1768
1769 2011-10-25  Chris Fleizach  <cfleizach@apple.com>
1770
1771         AX: WebKit does not expose HTML label for slider elements
1772         https://bugs.webkit.org/show_bug.cgi?id=70856
1773
1774         Reviewed by Darin Adler.
1775
1776         Test: platform/mac/accessibility/slider-allows-title-ui-element.html
1777
1778         * accessibility/AccessibilitySlider.h:
1779         (WebCore::AccessibilitySlider::isControl):
1780         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1781         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
1782
1783 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
1784
1785         Remove putVirtual
1786         https://bugs.webkit.org/show_bug.cgi?id=70740
1787
1788         Reviewed by Geoffrey Garen.
1789
1790         No new tests.
1791
1792         Removed all declarations and definitions of putVirtual.
1793         Also replaced all call sites to putVirtual with a 
1794         corresponding lookup in the MethodTable.
1795
1796         * WebCore.exp.in:
1797         * bindings/js/JSDOMWindowCustom.cpp:
1798         * bindings/js/JSDOMWindowShell.cpp:
1799         (WebCore::JSDOMWindowShell::put):
1800         * bindings/js/JSDOMWindowShell.h:
1801         * bindings/js/JSPluginElementFunctions.cpp:
1802         (WebCore::runtimeObjectCustomPut):
1803         * bindings/js/SerializedScriptValue.cpp:
1804         (WebCore::CloneDeserializer::putProperty):
1805         * bindings/objc/WebScriptObject.mm:
1806         (-[WebScriptObject setValue:forKey:]):
1807         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
1808         * bindings/scripts/CodeGeneratorJS.pm:
1809         (GenerateHeader):
1810         (GenerateImplementation):
1811         * bridge/NP_jsobject.cpp:
1812         (_NPN_SetProperty):
1813         * bridge/jni/jni_jsobject.mm:
1814         (JavaJSObject::setMember):
1815         (JavaJSObject::setSlot):
1816         * bridge/objc/objc_runtime.h:
1817         * bridge/objc/objc_runtime.mm:
1818         * bridge/qt/qt_runtime.cpp:
1819         (JSC::Bindings::convertQVariantToValue):
1820         * bridge/runtime_array.cpp:
1821         * bridge/runtime_array.h:
1822         * bridge/runtime_object.cpp:
1823         * bridge/runtime_object.h:
1824         * bridge/testqtbindings.cpp:
1825         (main):
1826
1827 2011-10-25  Adam Barth  <abarth@webkit.org>
1828
1829         EventTargetFactory.in is not sorted
1830         https://bugs.webkit.org/show_bug.cgi?id=70855
1831
1832         Reviewed by Eric Seidel.
1833
1834         This patch sorts the file.  I was not able to measure a performance
1835         difference using the microbenchmark included with this patch.
1836
1837         * dom/EventTargetFactory.in:
1838
1839 2011-10-25  Adam Barth  <abarth@webkit.org>
1840
1841         Attempt to fix the Windows build.  Windows mashes all these files into
1842         one, which doesn't respect the compilation unit rules of C++.
1843
1844         * bindings/js/JSEventCustom.cpp:
1845         * bindings/js/JSEventTarget.cpp:
1846
1847 2011-10-25  Ryosuke Niwa  <rniwa@webkit.org>
1848
1849         Moving to the start of line should not place the caret outside of the table
1850         https://bugs.webkit.org/show_bug.cgi?id=70757
1851
1852         Reviewed by Chang Shu.
1853
1854         The bug was caused by positionAvoidingFirstPositionInTable. Get rid of the function.
1855
1856         Test: editing/selection/table-lineboundary.html
1857
1858         * editing/visible_units.cpp:
1859         (WebCore::startPositionForLine):
1860
1861 2011-10-25  Beth Dakin  <bdakin@apple.com>
1862
1863         https://bugs.webkit.org/show_bug.cgi?id=70852
1864         Setting up a HiDPI base-level GraphicsContext should be more straightforward for 
1865         WebKit2
1866
1867         Reviewed by Dan Bernstein.
1868
1869         This patch removes the old cg-only GraphicsContext::setBaseCTM() api, and adds 
1870         platform-independent GraphicsContext::applyDeviceScaleFactor().
1871         * WebCore.exp.in:
1872         * platform/graphics/GraphicsContext.cpp:
1873         (WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
1874         (WebCore::GraphicsContext::applyDeviceScaleFactor):
1875         * platform/graphics/GraphicsContext.h:
1876         * platform/graphics/cg/GraphicsContextCG.cpp:
1877         (WebCore::GraphicsContext::platformApplyDeviceScaleFactor):
1878
1879         Since this patch removes GraphicsContext::setBaseCTM(), this code has been 
1880         reverted to do what it used to do before that was added; it just calls into 
1881         WebCoreSystemInterface directly.
1882         * platform/graphics/cg/ImageCG.cpp:
1883         (WebCore::Image::drawPattern):
1884
1885 2011-10-25  Anders Carlsson  <andersca@apple.com>
1886
1887         Plug-ins have to use JavaScript to find out the current device scale factor
1888         https://bugs.webkit.org/show_bug.cgi?id=67225
1889
1890         Reviewed by Darin Adler.
1891
1892         Test: platform/mac-wk2/plugins/contents-scale-factor.html
1893
1894         Add NPNVcontentsScaleFactor, as per https://wiki.mozilla.org/NPAPI:ContentsScaleFactor.
1895
1896         * plugins/npapi.h:
1897
1898 2011-10-25  Adam Klein  <adamk@chromium.org>
1899
1900         Forward declare MutationObserverEntry as a struct to fix clang build
1901         https://bugs.webkit.org/show_bug.cgi?id=70853
1902
1903         Reviewed by Ryosuke Niwa.
1904
1905         Node.h forward declared MutationObserverEntry as a class, and clang
1906         complains if the two declarations don't match.
1907
1908         * dom/Node.h:
1909
1910 2011-10-25  Dan Bernstein  <mitz@apple.com>
1911
1912         Caret can be positioned or repainted incorrectly in flipped-blocks multi-column blocks
1913         https://bugs.webkit.org/show_bug.cgi?id=70851
1914
1915         Reviewed by Dave Hyatt.
1916
1917         * manual-tests/caret-in-columns-flipped.html: Added.
1918         * rendering/RenderBlock.cpp:
1919         (WebCore::RenderBlock::adjustForColumns): Removed flipped-blocks writing mode considerations
1920         from this function, since not all callers were expecting it to account for flippedness. This makes
1921         it similar to adjustRectForColumns() in not adjusting for flippedness.
1922         * rendering/RenderBox.cpp:
1923         (WebCore::RenderBox::offsetFromContainer): In the columns case, account for flipped-blocks modes
1924         by first mapping the point and the offset to non-flipped, non-columns space, then adjusting for
1925         columns, then flipping.
1926
1927 2011-10-25  Michal Mocny  <mmocny@google.com>
1928
1929         LayerRendererChromium::setVisible called needlessly without a visibility change
1930         https://bugs.webkit.org/show_bug.cgi?id=70766
1931
1932         Reviewed by Kenneth Russell.
1933
1934         Check that visibility has actually changed before calling LayerRendererChromium::setVisible
1935
1936         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1937         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
1938         (WebCore::CCLayerTreeHostImpl::setVisible):
1939         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1940
1941 2011-10-25  Anders Carlsson  <andersca@apple.com>
1942
1943         REGRESSION(97821): HistoryController::itemsAreClones crashes a lot
1944         https://bugs.webkit.org/show_bug.cgi?id=70827
1945         <rdar://problem/10342925>
1946
1947         Reviewed by Adam Barth.
1948
1949         Check that m_currentItem is non-null before passing it to itemsAreClones. While I wasn't
1950         able to make a test case that would reproduce this crash, we do check m_currentItem for null
1951         everywhere else, and the crash log indicates that this would fix the crash.
1952
1953         * loader/HistoryController.cpp:
1954         (WebCore::HistoryController::recursiveUpdateForCommit):
1955
1956 2011-10-25  Adam Barth  <abarth@webkit.org>
1957
1958         EventTarget.h shouldn't need to know about every feature and ifdef
1959         https://bugs.webkit.org/show_bug.cgi?id=70659
1960
1961         Reviewed by Darin Adler.
1962
1963         This patch follows the approach of Event.h and introduces an
1964         interfaceName virtual function that returns the name of the DOM
1965         interface for the concrete type of the object.  This function lets us
1966         remove a large number of fake dynamic casts.
1967
1968         * CMakeLists.txt:
1969         * CodeGenerators.pri:
1970         * DerivedSources.make:
1971         * GNUmakefile.am:
1972         * WebCore.gyp/WebCore.gyp:
1973         * WebCore.gyp/scripts/action_makenames.py:
1974             - Teach action_makenames how to handle the new "in" file.
1975         * WebCore.gypi:
1976         * WebCore.vcproj/WebCore.vcproj:
1977         * WebCore.xcodeproj/project.pbxproj:
1978         * bindings/js/JSEventTarget.cpp:
1979         (WebCore::toJS):
1980             - Use the new autogenerated macro to remove a large amount of
1981               feature-specific code.
1982         * bindings/js/WorkerScriptController.cpp:
1983         (WebCore::WorkerScriptController::initScript):
1984         * bindings/objc/DOM.mm:
1985         (kit):
1986             - The SVGElementInstance branch was never taken previously because
1987               SVGElementInstance::toNode returns a non-NULL value. This code
1988               was introduced in http://trac.webkit.org/changeset/42618 and
1989               doesn't appear to have ever worked as the author intended.
1990         * bindings/v8/V8DOMWrapper.cpp:
1991         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1992             - Use the new autogenerated macro to remove a large amount of
1993               feature-specific code.
1994         * dom/EventNames.cpp:
1995         (WebCore::EventNames::EventNames):
1996         * dom/EventNames.h:
1997         * dom/EventTarget.cpp:
1998         * dom/EventTarget.h:
1999         * dom/EventTargetFactory.in: Added.
2000             - Add a new "in" file that lists all the EventTargets.
2001         * dom/LocalMediaStream.cpp:
2002         (WebCore::LocalMediaStream::interfaceName):
2003         * dom/LocalMediaStream.h:
2004         * dom/MediaStream.cpp:
2005         (WebCore::MediaStream::interfaceName):
2006         * dom/MediaStream.h:
2007         * dom/MessagePort.cpp:
2008         (WebCore::MessagePort::interfaceName):
2009         * dom/MessagePort.h:
2010         * dom/Node.cpp:
2011         (WebCore::Node::toNode):
2012         (WebCore::Node::interfaceName):
2013         * dom/Node.h:
2014         * dom/make_event_factory.pl:
2015             - Generalize make_event_factory.pl to be able to generate
2016               interfaces for different namespaces.
2017         * fileapi/FileReader.cpp:
2018         (WebCore::FileReader::interfaceName):
2019         * fileapi/FileReader.h:
2020         * fileapi/FileWriter.cpp:
2021         (WebCore::FileWriter::interfaceName):
2022         * fileapi/FileWriter.h:
2023         * loader/appcache/DOMApplicationCache.cpp:
2024         (WebCore::DOMApplicationCache::interfaceName):
2025         * loader/appcache/DOMApplicationCache.h:
2026         * notifications/Notification.cpp:
2027         (WebCore::Notification::interfaceName):
2028         * notifications/Notification.h:
2029         (WebCore::Notification::scriptExecutionContext):
2030         * p2p/PeerConnection.cpp:
2031         (WebCore::PeerConnection::interfaceName):
2032         * p2p/PeerConnection.h:
2033         * page/DOMWindow.cpp:
2034         (WebCore::DOMWindow::interfaceName):
2035         (WebCore::DOMWindow::toDOMWindow):
2036         * page/DOMWindow.h:
2037         * page/EventSource.cpp:
2038         (WebCore::EventSource::interfaceName):
2039         * page/EventSource.h:
2040         * storage/IDBDatabase.cpp:
2041         (WebCore::IDBDatabase::interfaceName):
2042         * storage/IDBDatabase.h:
2043         * storage/IDBRequest.cpp:
2044         (WebCore::IDBRequest::interfaceName):
2045         * storage/IDBRequest.h:
2046         * storage/IDBTransaction.cpp:
2047         (WebCore::IDBTransaction::interfaceName):
2048         * storage/IDBTransaction.h:
2049         * storage/IDBVersionChangeRequest.cpp:
2050         (WebCore::IDBVersionChangeRequest::interfaceName):
2051         * storage/IDBVersionChangeRequest.h:
2052         * svg/SVGElementInstance.cpp:
2053         (WebCore::SVGElementInstance::interfaceName):
2054         * svg/SVGElementInstance.h:
2055         (WebCore::SVGElementInstance::toNode):
2056         * webaudio/AudioContext.cpp:
2057         (WebCore::AudioContext::interfaceName):
2058         (WebCore::AudioContext::scriptExecutionContext):
2059         * webaudio/AudioContext.h:
2060         * webaudio/JavaScriptAudioNode.cpp:
2061         (WebCore::JavaScriptAudioNode::interfaceName):
2062         * webaudio/JavaScriptAudioNode.h:
2063         * websockets/WebSocket.cpp:
2064         (WebCore::WebSocket::interfaceName):
2065         * websockets/WebSocket.h:
2066         * workers/DedicatedWorkerContext.cpp:
2067         (WebCore::DedicatedWorkerContext::interfaceName):
2068         * workers/DedicatedWorkerContext.h:
2069         * workers/DefaultSharedWorkerRepository.cpp:
2070         (WebCore::SharedWorkerConnectTask::performTask):
2071         * workers/SharedWorker.cpp:
2072         (WebCore::SharedWorker::interfaceName):
2073         * workers/SharedWorker.h:
2074         * workers/SharedWorkerContext.cpp:
2075         (WebCore::SharedWorkerContext::interfaceName):
2076         * workers/SharedWorkerContext.h:
2077         * workers/Worker.cpp:
2078         (WebCore::Worker::interfaceName):
2079         * workers/Worker.h:
2080         * xml/XMLHttpRequest.cpp:
2081         (WebCore::XMLHttpRequest::interfaceName):
2082         * xml/XMLHttpRequest.h:
2083         * xml/XMLHttpRequestUpload.cpp:
2084         (WebCore::XMLHttpRequestUpload::interfaceName):
2085         * xml/XMLHttpRequestUpload.h:
2086
2087 2011-10-25  Pavel Podivilov  <podivilov@chromium.org>
2088
2089         Fix several minor problems in idls.
2090         https://bugs.webkit.org/show_bug.cgi?id=70811
2091
2092         Reviewed by Adam Barth.
2093
2094         This patch does not have any effect on generated bindings.
2095
2096         * dom/DataTransferItems.idl:
2097         * page/History.idl:
2098         * storage/IDBIndex.idl:
2099         * xml/XMLHttpRequest.idl:
2100
2101 2011-10-25  Nate Chapin  <japhet@chromium.org>
2102
2103         Make DocumentThreadableLoader a CachedResourceClient.
2104         This will allow us to cache ThreadableLoaderClients as
2105         appropriate in a later patch.
2106         https://bugs.webkit.org/show_bug.cgi?id=61225
2107
2108         Reviewed by Antti Koivisto.
2109
2110         No new tests, no functionality change intended.
2111
2112         * WebCore.gypi:
2113         * loader/DocumentThreadableLoader.cpp:
2114         (WebCore::DocumentThreadableLoader::notifyFinished): CachedResourceClients don't send separate callbacks
2115             for didFail() and didFinishLoading(), so we need to differentiate here.
2116         (WebCore::DocumentThreadableLoader::loadRequest): Call CachedResourceLoader::requestRawResource()
2117             instead of ResourceLoadScheduler::scheduleSubresourceLoad().
2118         * loader/DocumentThreadableLoader.h:
2119         * loader/cache/CachedRawResource.cpp:
2120         (WebCore::CachedRawResource::data): Handle the complexity of some ThreadableLoaderClients setting
2121             DoNotBufferData in ResoureLoaderOptions. If the DataBufferingPolicy is BufferData, then the
2122             'data' input parameter will contain all data received so far, and we need to determine the
2123             incremental data to forward to the clients. If the policy is DoNotBufferData, 'data' is just
2124             the incremental data.
2125         * loader/cache/CachedRawResource.h:
2126         * loader/cache/CachedResource.cpp:
2127         * loader/cache/CachedResource.h:
2128         (WebCore::CachedResource::preloadResult):
2129         (WebCore::CachedResource::didSendData):
2130         (WebCore::CachedResource::didDownloadData):
2131         (WebCore::CachedResource::setLoadFinishTime):
2132         (WebCore::CachedResource::loadFinishTime):
2133         * loader/cache/CachedResourceClient.h: Add several new callbacks needed by DocumentThreadableLoader.
2134         * loader/cache/CachedResourceRequest.cpp:
2135         (WebCore::CachedResourceRequest::didReceiveResponse): CachedResource::setResponse() can now cancel
2136             the request, so protect appropriately.
2137         * loader/cache/CachedResourceRequest.h:
2138         * loader/chromium/CachedRawResourceChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
2139         * loader/chromium/CachedResourceRequestChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
2140         * loader/chromium/DocumentThreadableLoaderChromium.cpp:
2141         * platform/network/BlobResourceHandle.cpp:
2142         (WebCore::BlobResourceHandle::notifyResponse): Protect before setting response, since it might kill us.
2143
2144 2011-10-25  Pavel Podivilov  <podivilov@chromium.org>
2145
2146         Get rid of optional parameters in the middle in IDLs.
2147         https://bugs.webkit.org/show_bug.cgi?id=70816
2148
2149         Reviewed by Adam Barth.
2150
2151         Optional parameters in the middle are prohibited by WebIDL spec.
2152
2153         * bindings/scripts/CodeGeneratorJS.pm:
2154         (GenerateHeader):
2155         (GenerateImplementation):
2156         * bindings/scripts/CodeGeneratorV8.pm:
2157         (GenerateHeader):
2158         (GenerateArgumentsCountCheck):
2159         (GenerateImplementation):
2160         * html/canvas/CanvasRenderingContext2D.idl:
2161         * page/DOMWindow.idl:
2162
2163 2011-10-25  Chris Evans  <cevans@google.com>
2164
2165         Manage the CSS property array length correctly
2166         https://bugs.webkit.org/show_bug.cgi?id=70783
2167
2168         Reviewed by Adam Barth.
2169
2170         * css/CSSParser.cpp:
2171         (WebCore::CSSParser::addProperty): don't allow max length to get out of sync with the buffer.
2172
2173 2011-10-25  Tony Chang  <tony@chromium.org>
2174
2175         avoid unnecessary layouts of flex items during the flex pass
2176         https://bugs.webkit.org/show_bug.cgi?id=70557
2177
2178         Reviewed by Ojan Vafai.
2179
2180         If the preferred size of a flex item is provided, we don't need to
2181         layout the flex item when computing the preferred size.  This allows
2182         us to only call layout on each flex item once in the common case.
2183
2184         No new tests, covered by existing tests.
2185
2186         * rendering/RenderFlexibleBox.cpp:
2187         (WebCore::RenderFlexibleBox::flowAwareLogicalWidthLengthForChild):
2188         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
2189         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
2190         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
2191         * rendering/RenderFlexibleBox.h:
2192
2193 2011-10-25  Fady Samuel  <fsamuel@chromium.org>
2194
2195         Crash in WebCore::RenderTableSection::addChild due to assert failure
2196         https://bugs.webkit.org/show_bug.cgi?id=70678
2197
2198         Reviewed by David Hyatt.
2199
2200         Tests: fast/table/table-anonymous-cell-bug.html
2201                fast/table/table-anonymous-row-bug.html
2202                fast/table/table-anonymous-section-bug.html
2203
2204         If the child being added is not a Section/Row/Cell, and the previous sibling is not anonymous, 
2205         we need to create a new anonymous Section/Row/Cell respectively, instead of failing an
2206         assert.
2207
2208         * rendering/RenderTable.cpp:
2209         (WebCore::RenderTable::addChild):
2210         * rendering/RenderTableRow.cpp:
2211         (WebCore::RenderTableRow::addChild):
2212         * rendering/RenderTableSection.cpp:
2213         (WebCore::RenderTableSection::addChild):
2214
2215 2011-10-25  Mark Hahnenberg  <mhahnenberg@apple.com>
2216
2217         Add getOwnPropertySlot to MethodTable
2218         https://bugs.webkit.org/show_bug.cgi?id=69807
2219
2220         Reviewed by Oliver Hunt.
2221
2222         No new tests.
2223
2224         * bridge/runtime_method.h: Changed getOwnPropertySlot to be protected so 
2225         subclasses can reference it in their MethodTables.
2226
2227 2011-10-25  Simon Fraser  <simon.fraser@apple.com>
2228
2229         REGRESSION (r88580): Cursor fails to change to pointer on embedded Google maps popups
2230         https://bugs.webkit.org/show_bug.cgi?id=62797
2231
2232         Reviewed by Chris Marrin.
2233         
2234         When hit testing through transformed layers, RenderLayer would simply use
2235         the composited bounds of the layer as the localHitTestRect for hit testing sublayers.
2236         However, this broke hit testing on pages that have a composited, non-transformed layer
2237         which falls outside the bounds of its parent, composited-transformed layer, like Google
2238         Maps.
2239         
2240         Fix by mapping the hitTestRect through transforms. However this is tricky, because
2241         mapping a rect into the coordinate system of a layer can result in invalid rectangles
2242         when point projection results in a negative w component. Fix TransformationMatrix::projectPoint()
2243         to detect this case and replace X and Y with large values, and add boundsOfProjectedQuad(), which 
2244         maps rectangles with possibly-infinite location or bounds into rects which are representable
2245         in an IntRect.
2246
2247         Tests: transforms/3d/hit-testing/composited-hit-test.html
2248                transforms/3d/hit-testing/rotated-hit-test-with-child.html
2249                transforms/3d/hit-testing/rotated-hit-test2.html
2250
2251         * platform/graphics/transforms/TransformationMatrix.cpp:
2252         (WebCore::TransformationMatrix::projectPoint):
2253         (WebCore::TransformationMatrix::projectQuad):
2254         (WebCore::clampEdgeValue):
2255         (WebCore::TransformationMatrix::boundsOfProjectedQuad):
2256         * platform/graphics/transforms/TransformationMatrix.h:
2257         * rendering/HitTestingTransformState.cpp:
2258         (WebCore::HitTestingTransformState::boundsOfMappedQuad):
2259         * rendering/HitTestingTransformState.h:
2260         * rendering/RenderLayer.cpp:
2261         (WebCore::RenderLayer::hitTestLayer):
2262
2263 2011-10-25  Adrienne Walker  <enne@google.com>
2264
2265         [chromium] Batch up texture uploads so that they can be updated incrementally
2266         https://bugs.webkit.org/show_bug.cgi?id=70454
2267
2268         Reviewed by James Robinson.
2269
2270         Because texture uploads can sometimes take more than a frame to
2271         complete, collect all the uploads that need to occur in a
2272         CCTextureUpdater so that we can easily incrementally upload some of
2273         them, interleaving input and drawing so that the compositor thread
2274         continues to appear responsive during a commit.
2275
2276         This change doesn't actually interleave the commits, it just pushes
2277         the infrastructure for doing so up to the CCProxy level so that a
2278         future scheduler can make this decision.
2279
2280         VideoLayerChromium is the only layer type to not use this system. It
2281         needs to be converted to use a texture updater first and it is less of
2282         a priority than the tiled layers.
2283
2284         * WebCore.gypi:
2285         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2286         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
2287         * platform/graphics/chromium/Canvas2DLayerChromium.h:
2288         * platform/graphics/chromium/LayerChromium.h:
2289         (WebCore::LayerChromium::updateCompositorResources):
2290         * platform/graphics/chromium/TiledLayerChromium.cpp:
2291         (WebCore::TiledLayerChromium::updateCompositorResources):
2292         * platform/graphics/chromium/TiledLayerChromium.h:
2293         * platform/graphics/chromium/VideoLayerChromium.cpp:
2294         (WebCore::VideoLayerChromium::updateCompositorResources):
2295         * platform/graphics/chromium/VideoLayerChromium.h:
2296         * platform/graphics/chromium/WebGLLayerChromium.cpp:
2297         (WebCore::WebGLLayerChromium::updateCompositorResources):
2298         * platform/graphics/chromium/WebGLLayerChromium.h:
2299         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2300         (WebCore::CCLayerTreeHost::beginCommitOnImplThread):
2301         (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
2302         (WebCore::CCLayerTreeHost::updateCompositorResources):
2303         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2304         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2305         (WebCore::CCSingleThreadProxy::setNeedsCommit):
2306         (WebCore::CCSingleThreadProxy::doCommit):
2307         (WebCore::CCSingleThreadProxy::commitIfNeeded):
2308         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
2309         * platform/graphics/chromium/cc/CCTextureUpdater.cpp: Added.
2310         (WebCore::CCTextureUpdater::CCTextureUpdater):
2311         (WebCore::CCTextureUpdater::~CCTextureUpdater):
2312         (WebCore::CCTextureUpdater::append):
2313         (WebCore::CCTextureUpdater::update):
2314         (WebCore::CCTextureUpdater::clear):
2315         * platform/graphics/chromium/cc/CCTextureUpdater.h: Added.
2316         (WebCore::CCTextureUpdater::allocator):
2317         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2318         (WebCore::CCThreadProxy::commitOnImplThread):
2319
2320 2011-10-24  Jer Noble  <jer.noble@apple.com>
2321
2322         compositing/video tests time out on Lion
2323         https://bugs.webkit.org/show_bug.cgi?id=70448
2324
2325         Reviewed by Simon Fraser.
2326
2327         AVFoundation will not begin loading or decoding media until a consumer for that media is present.
2328         For video-only media, this means that an AVPlayerLayer must be created and attached to the 
2329         AVPlayer before the load state will ever reach "canPlayThrough". Once the metadata for a media
2330         is loaded, create a AVPlayerLayer if the media has a video track.
2331
2332         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2333         (WebCore::MediaPlayerPrivateAVFoundation::updateStates):
2334
2335 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
2336
2337         Merge endOfLine with logicalEndOfLine and startOfLine with logicalStartOfLine
2338         https://bugs.webkit.org/show_bug.cgi?id=70755
2339
2340         Reviewed by Chang Shu.
2341
2342         Merged endOfLine with logicalEndOfLine, and startOfLine with logicalStartOfLine
2343         to reduce the code duplication.
2344
2345         * editing/visible_units.cpp:
2346         (WebCore::startPositionForLine):
2347         (WebCore::startOfLine):
2348         (WebCore::logicalStartOfLine):
2349         (WebCore::endPositionForLine):
2350         (WebCore::inSameLogicalLine):
2351         (WebCore::endOfLine):
2352         (WebCore::logicalEndOfLine):
2353         * editing/visible_units.h:
2354
2355 2011-10-25  Arko Saha  <arko@motorola.com>
2356
2357         Microdata: itemtype attribute should be space-separated list to allow multiple types.
2358         https://bugs.webkit.org/show_bug.cgi?id=70501
2359
2360         Reviewed by Ryosuke Niwa.
2361
2362         Tests: fast/dom/MicroData/getitems-multiple-itemtypes.html
2363                fast/dom/MicroData/itemtype-add-remove-tokens.html
2364                fast/dom/MicroData/itemtype-attribute-test.html
2365
2366         * dom/MicroDataItemList.cpp:
2367         (WebCore::MicroDataItemList::nodeMatches):
2368         * html/DOMSettableTokenList.h:
2369         (WebCore::DOMSettableTokenList::tokens):
2370         * html/HTMLElement.cpp:
2371         (WebCore::HTMLElement::parseMappedAttribute):
2372         (WebCore::HTMLElement::setItemValueText):
2373         (WebCore::HTMLElement::itemType):
2374         (WebCore::HTMLElement::setItemType):
2375         * html/HTMLElement.h:
2376         * html/HTMLElement.idl:
2377
2378 2011-10-25  Dan Bernstein  <mitz@apple.com>
2379
2380         <rdar://problem/10337033> DOMRangeOfString:relativeTo:options has problems with -webkit-user-select: none
2381
2382         Reviewed by Adam Roben.
2383
2384         Test: added to TestWebKitAPI/Tests/mac/DOMRangeOfString.mm
2385
2386         * page/Page.cpp:
2387         (WebCore::Page::rangeOfString): This function was incorrectly adding the StartInSelection option to
2388         the initial search.
2389
2390 2011-10-25  Yury Semikhatsky  <yurys@chromium.org>
2391
2392         Web Inspector: redesign workers sidebar pane
2393         https://bugs.webkit.org/show_bug.cgi?id=70815
2394
2395         Changed workers sidebar pane design.
2396
2397         Now there is a link to worker inspector for each dedicated worker created
2398         by inspected page. The sidebar display a link to a page with list of all
2399         shared workers if there one is supported by the WebKit port. Also there
2400         is a checkbox that allows pause all new workers on first statements.
2401
2402         Reviewed by Pavel Feldman.
2403
2404         * inspector/front-end/Settings.js:
2405         * inspector/front-end/StylesSidebarPane.js:
2406         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
2407         * inspector/front-end/WorkerManager.js:
2408         (WebInspector.WorkerManager.prototype.openWorkerInspector):
2409         (WebInspector.WorkerManager.prototype._workerInspectorClosing):
2410         * inspector/front-end/WorkersSidebarPane.js:
2411         (WebInspector.WorkerListSidebarPane):
2412         (WebInspector.WorkerListSidebarPane.prototype._workerRemoved):
2413         (WebInspector.WorkerListSidebarPane.prototype._workersCleared):
2414         (WebInspector.WorkerListSidebarPane.prototype._addWorker):
2415         (WebInspector.WorkerListSidebarPane.prototype._workerItemClicked):
2416         (WebInspector.WorkerListSidebarPane.prototype._autoattachToWorkersClicked):
2417         (WebInspector.WorkerListSidebarPane.prototype._createSharedWorkersLink.link.onclick):
2418         (WebInspector.WorkerListSidebarPane.prototype._createSharedWorkersLink):
2419         * inspector/front-end/elementsPanel.css:
2420         * inspector/front-end/inspectorCommon.css:
2421         (.sidebar-separator):
2422         (.sidebar-label):
2423         * inspector/front-end/scriptsPanel.css:
2424         (.dedicated-worker-item):
2425         (#shared-workers-list):
2426         (#pause-workers-checkbox > input):
2427
2428 2011-10-25  Nico Weber  <thakis@chromium.org>
2429
2430         [chromium/mac] Fix an ODR violation.
2431         https://bugs.webkit.org/show_bug.cgi?id=70753
2432
2433         Reviewed by Anders Carlsson.
2434
2435         Both ScrollAnimatorNone and ScrollAnimatorMac define ScrollAnimator::create() on OS X.
2436         Remove the unused one.
2437
2438         * WebCore.gyp/WebCore.gyp:
2439
2440 2011-10-25  Vsevolod Vlasov  <vsevik@chromium.org>
2441
2442         Web Inspector: Debugger fails when there is an invalid watch expression.
2443         https://bugs.webkit.org/show_bug.cgi?id=70718
2444
2445         Reviewed by Pavel Feldman.
2446
2447         Test: inspector/debugger/watch-expressions-panel-switch.html
2448
2449         * inspector/front-end/ScriptsPanel.js:
2450         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2451
2452 2011-10-24  Pavel Podivilov  <podivilov@chromium.org>
2453
2454         Web Inspector: fix empty line handling in source maps.
2455         https://bugs.webkit.org/show_bug.cgi?id=70726
2456
2457         Reviewed by Yury Semikhatsky.
2458
2459         * inspector/front-end/CompilerSourceMapping.js:
2460         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
2461
2462 2011-10-25  Justin Schuh  <jschuh@chromium.org>
2463
2464         Check for empty string in parseArcFlag
2465         https://bugs.webkit.org/show_bug.cgi?id=70763
2466
2467         Reviewed by Dirk Schulze.
2468
2469         Test: svg/path-invalid.html
2470
2471         * svg/SVGParserUtilities.cpp:
2472         (WebCore::parseArcFlag):
2473
2474 2011-10-24  Pavel Podivilov  <podivilov@chromium.org>
2475
2476         Web Inspector: keep old source mapping when new one could not be loaded.
2477         https://bugs.webkit.org/show_bug.cgi?id=70729
2478
2479         Reviewed by Yury Semikhatsky.
2480
2481         * inspector/front-end/RawSourceCode.js:
2482         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
2483         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
2484         (WebInspector.RawSourceCode.prototype._createSourceMapping.didLoadSourceMapping):
2485
2486 2011-10-25  Sachin Puranik  <sachin.puranik@motorola.com>
2487
2488         Double number step=.5 should be considered valid in <input type="number" step=".5">
2489         https://bugs.webkit.org/show_bug.cgi?id=70320
2490
2491         Reviewed by Kent Tamura.
2492
2493         Test: fast/forms/input-step-as-double.html
2494
2495         * html/parser/HTMLParserIdioms.cpp:
2496         (WebCore::parseToDoubleForNumberType): Changed the function to consider
2497         step as valid even if it starts with "."
2498
2499 2011-10-25  Alexander Pavlov  <apavlov@chromium.org>
2500
2501         Web Inspector: [Chromium] Audits panel context menu for links not working properly
2502         https://bugs.webkit.org/show_bug.cgi?id=70813
2503
2504         Reviewed by Pavel Feldman.
2505
2506         * inspector/front-end/AuditResultView.js:
2507         (WebInspector.AuditResultView):
2508         (WebInspector.AuditResultView.prototype._contextMenuEventFired):
2509
2510 2011-10-25  Vsevolod Vlasov  <vsevik@chromium.org>
2511
2512         Web Inspector: Resources panel: display the current search match index in the toolbar.
2513         https://bugs.webkit.org/show_bug.cgi?id=66050
2514
2515         Reviewed by Pavel Feldman.
2516
2517         Test: http/tests/inspector/search/resources-search-match-index.html
2518
2519         * inspector/front-end/ResourcesPanel.js:
2520         (WebInspector.ResourcesPanel.prototype.performSearch.callback):
2521         (WebInspector.ResourcesPanel.prototype.performSearch):
2522         (WebInspector.ResourcesPanel.prototype._showSearchResult.callback):
2523         (WebInspector.ResourcesPanel.prototype._showSearchResult):
2524         (WebInspector.BaseStorageTreeElement.prototype.get searchMatchesCount):
2525         (WebInspector.ResourcesSearchController):
2526         (WebInspector.ResourcesSearchController.prototype.nextSearchResult):
2527         (WebInspector.ResourcesSearchController.prototype.previousSearchResult):
2528         (WebInspector.ResourcesSearchController.prototype._searchResult):
2529         (WebInspector.SearchResultsTreeElementsTraverser.prototype.next):
2530         (WebInspector.SearchResultsTreeElementsTraverser.prototype.previous):
2531         (WebInspector.SearchResultsTreeElementsTraverser.prototype.matchIndex):
2532         (WebInspector.SearchResultsTreeElementsTraverser.prototype._elementSearchMatchesCount):
2533         (WebInspector.SearchResultsTreeElementsTraverser.prototype._traverseNext):
2534         (WebInspector.SearchResultsTreeElementsTraverser.prototype._traversePrevious):
2535         * inspector/front-end/treeoutline.js:
2536
2537 2011-10-25  Andrey Kosyakov  <caseq@chromium.org>
2538
2539         Web Inspector: JS exception in JavaScriptSourceFrame.onShowPopover/showObjectPopover()
2540         https://bugs.webkit.org/show_bug.cgi?id=70812
2541
2542         Reviewed by Pavel Feldman.
2543
2544         Check if highlighted element is present while displaying object popover.
2545
2546         * inspector/front-end/JavaScriptSourceFrame.js:
2547         (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover.showObjectPopover):
2548         (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover):
2549
2550 2011-10-21  Nat Duca  <nduca@chromium.org>
2551
2552         [chromium] Route Console::time and Console::timeEnd to trace_event
2553         https://bugs.webkit.org/show_bug.cgi?id=70620
2554
2555         Reviewed by Pavel Feldman.
2556
2557         * page/Console.cpp:
2558         (WebCore::Console::time):
2559         (WebCore::Console::timeEnd):
2560
2561 2011-10-21  Andrey Kosyakov  <caseq@chromium.org>
2562
2563         Web Inspector: [Extensions API] allow extensions to specify script to be injected on reload
2564         https://bugs.webkit.org/show_bug.cgi?id=70600
2565
2566         Reviewed by Pavel Feldman.
2567
2568         - change webInspector.inspectedPage.reload() to accept multiple options in an object
2569         - add an ability to inject a script upon a page reload
2570         - return script id in addScriptToEvaluateOnLoad()
2571         - provide removeScriptToEvaluateOnLoad()
2572         - store scripts to evaluate on load in inspector state cookie
2573
2574         Test: inspector/extensions/extensions-reload.html
2575
2576         * inspector/Inspector.json:
2577         * inspector/InspectorPageAgent.cpp:
2578         (WebCore::InspectorPageAgent::InspectorPageAgent):
2579         (WebCore::InspectorPageAgent::restore):
2580         (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
2581         (WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
2582         (WebCore::InspectorPageAgent::removeAllScriptsToEvaluateOnLoad):
2583         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
2584         (WebCore::InspectorPageAgent::frameNavigated):
2585         * inspector/InspectorPageAgent.h:
2586         * inspector/front-end/ExtensionAPI.js:
2587         (injectedExtensionAPI.InspectedWindow.prototype.reload):
2588         * inspector/front-end/ExtensionServer.js:
2589         (WebInspector.ExtensionServer.prototype._onReload):
2590         * inspector/front-end/WorkersSidebarPane.js:
2591         (WebInspector.WorkersSidebarPane.prototype.setInstrumentation.callback):
2592         (WebInspector.WorkersSidebarPane.prototype.setInstrumentation):
2593
2594 2011-10-24  Pavel Feldman  <pfeldman@google.com>
2595
2596         Web Inspector: print expired message count before remaining messages.
2597         https://bugs.webkit.org/show_bug.cgi?id=70736
2598
2599         Reviewed by Yury Semikhatsky.
2600
2601         * inspector/Inspector-0.1.json:
2602         * inspector/Inspector.json:
2603         * inspector/InspectorConsoleAgent.cpp:
2604         (WebCore::InspectorConsoleAgent::enable):
2605         (WebCore::InspectorConsoleAgent::restore):
2606         * inspector/InspectorConsoleAgent.h:
2607         * inspector/front-end/ConsoleModel.js:
2608
2609 2011-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2610
2611         Unreviewed, rolling out r98309.
2612         http://trac.webkit.org/changeset/98309
2613         https://bugs.webkit.org/show_bug.cgi?id=70801
2614
2615         Test fails on mac (Requested by benwells on #webkit).
2616
2617         * html/canvas/CanvasRenderingContext2D.cpp:
2618         (WebCore::CanvasRenderingContext2D::fill):
2619         (WebCore::CanvasRenderingContext2D::fillRect):
2620         (WebCore::CanvasRenderingContext2D::drawImage):
2621         (WebCore::CanvasRenderingContext2D::shouldDisplayTransparencyElsewhere):
2622         (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
2623         * html/canvas/CanvasRenderingContext2D.h:
2624
2625 2011-10-24  Geoffrey Garen  <ggaren@apple.com>
2626
2627         Chromium build fix: #include window.h for HANDLE.
2628
2629         * platform/graphics/opentype/OpenTypeUtilities.h:
2630
2631 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
2632
2633         Include ThreadSafeRefCounted.h since the class declared in this header file
2634         inherits from ThreadSafeRefCounted.
2635
2636         * storage/IDBIndexBackendInterface.h:
2637
2638 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
2639
2640         Fix a typo.
2641
2642         * bindings/v8/JavaScriptCallFrame.h:
2643
2644 2011-10-24  Geoffrey Garen  <ggaren@apple.com>
2645
2646         Removed SharedUChar and tightened language around its previous uses
2647         https://bugs.webkit.org/show_bug.cgi?id=70698
2648
2649         Reviewed by David Levin.
2650
2651         - Renamed "threadSafeCopy" and "crossThreadCopy" to "isolatedCopy" because
2652         the former names gave the dangerous misimpression that the resulting object
2653         was thread-safe, which is not true.
2654         
2655         - Updated a bunch of files for header dependency changes, now that
2656         CrossThreadRefCounted is gone.
2657
2658         * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Removed.
2659         * WebCore.exp.in:
2660         * bindings/js/ScriptHeapSnapshot.h:
2661         * bindings/v8/SerializedScriptValue.cpp:
2662         (WebCore::SerializedScriptValue::release):
2663         (WebCore::SerializedScriptValue::SerializedScriptValue):
2664         * css/CSSPropertySourceData.h:
2665         * css/CSSValue.h:
2666         * css/StyleMedia.h:
2667         * css/WebKitCSSMatrix.h:
2668         * dom/QualifiedName.h:
2669         * fileapi/LocalFileSystem.h:
2670         (WebCore::LocalFileSystem::SystemBasePath::operator String):
2671         * history/CachedFrame.h:
2672         * history/CachedPage.h:
2673         * history/HistoryItem.h:
2674         * html/canvas/CanvasStyle.h:
2675         * inspector/InspectorResourceAgent.h:
2676         * loader/FormState.h:
2677         * loader/TextResourceDecoder.h:
2678         * loader/WorkerThreadableLoader.cpp:
2679         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2680         * loader/icon/IconDatabase.cpp:
2681         (WebCore::IconDatabase::open):
2682         (WebCore::IconDatabase::synchronousIconForPageURL):
2683         (WebCore::IconDatabase::synchronousIconURLForPageURL):
2684         (WebCore::IconDatabase::retainIconForPageURL):
2685         (WebCore::IconDatabase::releaseIconForPageURL):
2686         (WebCore::IconDatabase::setIconDataForIconURL):
2687         (WebCore::IconDatabase::setIconURLForPageURL):
2688         (WebCore::IconDatabase::databasePath):
2689         (WebCore::IconDatabase::defaultDatabaseFilename):
2690         (WebCore::ImportedIconURLForPageURLWorkItem::ImportedIconURLForPageURLWorkItem):
2691         (WebCore::ImportedIconDataForPageURLWorkItem::ImportedIconDataForPageURLWorkItem):
2692         * page/ContentSecurityPolicy.h:
2693         * page/Coordinates.h:
2694         (WebCore::Coordinates::isolatedCopy):
2695         * page/Geoposition.h:
2696         (WebCore::Geoposition::isolatedCopy):
2697         * page/SecurityOrigin.cpp:
2698         (WebCore::SecurityOrigin::SecurityOrigin):
2699         (WebCore::SecurityOrigin::isolatedCopy):
2700         * page/SecurityOrigin.h:
2701         * page/animation/AnimationBase.h:
2702         * platform/CrossThreadCopier.cpp:
2703         (WebCore::::copy):
2704         * platform/FileChooser.h:
2705         * platform/KURL.cpp:
2706         (WebCore::KURL::copy):
2707         * platform/cf/SchedulePair.h:
2708         * platform/network/BlobData.cpp:
2709         (WebCore::BlobDataItem::detachFromCurrentThread):
2710         (WebCore::BlobData::detachFromCurrentThread):
2711         * platform/network/HTTPHeaderMap.cpp:
2712         (WebCore::HTTPHeaderMap::copyData):
2713         * platform/network/MIMEHeader.h:
2714         * platform/network/ResourceErrorBase.cpp:
2715         (WebCore::ResourceErrorBase::copy):
2716         * platform/network/ResourceLoadInfo.h:
2717         * platform/network/ResourceRequestBase.cpp:
2718         (WebCore::ResourceRequestBase::copyData):
2719         * platform/network/ResourceResponseBase.cpp:
2720         (WebCore::ResourceResponseBase::copyData):
2721         * platform/sql/SQLValue.cpp:
2722         (WebCore::SQLValue::SQLValue):
2723         (WebCore::SQLValue::string):
2724         * rendering/style/QuotesData.h:
2725         * storage/AbstractDatabase.cpp:
2726         (WebCore::updateGuidVersionMap):
2727         (WebCore::AbstractDatabase::AbstractDatabase):
2728         (WebCore::AbstractDatabase::performOpenAndVerify):
2729         (WebCore::AbstractDatabase::stringIdentifier):
2730         (WebCore::AbstractDatabase::displayName):
2731         (WebCore::AbstractDatabase::fileName):
2732         (WebCore::AbstractDatabase::setExpectedVersion):
2733         (WebCore::AbstractDatabase::getCachedVersion):
2734         * storage/ChangeVersionWrapper.cpp:
2735         (WebCore::ChangeVersionWrapper::ChangeVersionWrapper):
2736         * storage/Database.cpp:
2737         (WebCore::Database::Database):
2738         (WebCore::Database::tableNames):
2739         * storage/DatabaseDetails.h:
2740         * storage/DatabaseTracker.cpp:
2741         (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
2742         (WebCore::DatabaseTracker::databaseDirectoryPath):
2743         (WebCore::DatabaseTracker::trackerDatabasePath):
2744         (WebCore::DatabaseTracker::canEstablishDatabase):
2745         (WebCore::DatabaseTracker::originPath):
2746         (WebCore::DatabaseTracker::fullPathForDatabase):
2747         (WebCore::DatabaseTracker::populateOrigins):
2748         (WebCore::DatabaseTracker::databaseNamesForOrigin):
2749         (WebCore::DatabaseTracker::addOpenDatabase):
2750         (WebCore::DatabaseTracker::setQuota):
2751         (WebCore::DatabaseTracker::recordCreatingDatabase):
2752         (WebCore::DatabaseTracker::recordDeletingDatabase):
2753         (WebCore::DatabaseTracker::recordDeletingOrigin):
2754         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2755         * storage/OriginQuotaManager.cpp:
2756         (WebCore::OriginQuotaManager::trackOrigin):
2757         (WebCore::OriginQuotaManager::addDatabase):
2758         * storage/SQLError.h:
2759         (WebCore::SQLError::message):
2760         (WebCore::SQLError::SQLError):
2761         * storage/SQLResultSetRowList.h:
2762         * storage/SQLStatement.cpp:
2763         (WebCore::SQLStatement::SQLStatement):
2764         * storage/StorageAreaSync.cpp:
2765         (WebCore::StorageAreaSync::StorageAreaSync):
2766         (WebCore::StorageAreaSync::syncTimerFired):
2767         * storage/StorageAreaSync.h:
2768         * storage/StorageMap.cpp:
2769         (WebCore::StorageMap::importItem):
2770         * storage/StorageNamespaceImpl.cpp:
2771         (WebCore::StorageNamespaceImpl::StorageNamespaceImpl):
2772         * storage/StorageSyncManager.cpp:
2773         (WebCore::StorageSyncManager::StorageSyncManager):
2774         * storage/StorageTracker.cpp:
2775         (WebCore::StorageTracker::StorageTracker):
2776         (WebCore::StorageTracker::syncImportOriginIdentifiers):
2777         (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
2778         (WebCore::StorageTracker::setOriginDetails):
2779         (WebCore::StorageTracker::willDeleteAllOrigins):
2780         * svg/SVGPathSeg.h:
2781         * workers/DefaultSharedWorkerRepository.cpp:
2782         (WebCore::SharedWorkerProxy::url):
2783         (WebCore::SharedWorkerProxy::name):
2784         (WebCore::SharedWorkerProxy::SharedWorkerProxy):
2785         (WebCore::DefaultSharedWorkerRepository::getProxy):
2786         * workers/SharedWorkerThread.cpp:
2787         (WebCore::SharedWorkerThread::SharedWorkerThread):
2788         * workers/WorkerMessagingProxy.cpp:
2789         (WebCore::WorkerExceptionTask::WorkerExceptionTask):
2790         (WebCore::PostMessageToPageInspectorTask::PostMessageToPageInspectorTask):
2791         * workers/WorkerRunLoop.cpp:
2792         (WebCore::WorkerRunLoop::postTaskForMode):
2793         (WebCore::WorkerRunLoop::Task::Task):
2794         * workers/WorkerThread.cpp:
2795         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
2796
2797 2011-10-24  Adam Barth  <abarth@webkit.org>
2798
2799         Remove empty directory.
2800
2801         * p2p: Removed.
2802
2803 2011-10-24  Shawn Singh  <shawnsingh@chromium.org>
2804
2805         [chromium] Refactor painting/updating/drawing code.
2806         https://bugs.webkit.org/show_bug.cgi?id=70057
2807
2808         Reviewed by James Robinson.
2809
2810         This refactoring separates the "early exits" from the actual loop
2811         that draws layers. As part of this, it was also appropriate to
2812         clean up the way that masks and replicas are dealt with when
2813         painting and updating. The purpose of all this is to make things
2814         easier to test, and for a scissoring optimization that needs to
2815         know exatly what gets drawn. Existing layout tests were able to
2816         verify the refactoring did not change behavior.
2817
2818         * platform/graphics/chromium/LayerRendererChromium.cpp:
2819         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
2820         (WebCore::LayerRendererChromium::drawLayersInternal):
2821         (WebCore::LayerRendererChromium::drawLayer):
2822         * platform/graphics/chromium/LayerRendererChromium.h:
2823         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2824         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
2825         (WebCore::CCLayerTreeHost::paintLayerContents):
2826         (WebCore::CCLayerTreeHost::updateCompositorResources):
2827         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2828         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
2829         (WebCore::layerShouldBeAppended):
2830         (WebCore::calculateDrawTransformsAndVisibilityInternal):
2831         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
2832         (WebCore::CCLayerTreeHostCommon::calculateVisibleLayerRect):
2833
2834 2011-10-24  Luke Macpherson   <macpherson@chromium.org>
2835
2836         REGRESSION(80893): HTML5 spec takes 2s longer to load due to time spent in CSSStyleSelector
2837         https://bugs.webkit.org/show_bug.cgi?id=68944
2838
2839         Reviewed by Antti Koivisto.
2840
2841         No new tests / Covered by existing tests.
2842
2843         Removes all virtual dispatch from CSSStyleApplyProperty by converting to use static function pointers for dispatch.
2844         Uses class templates instead of function templates to allow default parameters and also to share parameter declarations across static functions.
2845         All constructor parameters become template parameters. This improves the level of compiler optimization that can be achieved.
2846         Overall this achieved a ~2% overall speedup on run-safari PerformanceTests/Parser/html5-full-render.html,
2847         and profiling showed a reduction in the time spent inside CSSStyleSelector::applyProperty().
2848
2849         * css/CSSStyleApplyProperty.cpp:
2850         (WebCore::ApplyPropertyExpanding::applyInheritValue):
2851         (WebCore::ApplyPropertyExpanding::applyInitialValue):
2852         (WebCore::ApplyPropertyExpanding::applyValue):
2853         (WebCore::ApplyPropertyExpanding::createHandler):
2854         (WebCore::ApplyPropertyDefaultBase::setValue):
2855         (WebCore::ApplyPropertyDefaultBase::value):
2856         (WebCore::ApplyPropertyDefaultBase::initial):
2857         (WebCore::ApplyPropertyDefaultBase::applyInheritValue):
2858         (WebCore::ApplyPropertyDefaultBase::applyInitialValue):
2859         (WebCore::ApplyPropertyDefaultBase::applyValue):
2860         (WebCore::ApplyPropertyDefaultBase::createHandler):
2861         (WebCore::ApplyPropertyDefault::setValue):
2862         (WebCore::ApplyPropertyDefault::applyValue):
2863         (WebCore::ApplyPropertyDefault::createHandler):
2864         (WebCore::ApplyPropertyStyleImage::applyValue):
2865         (WebCore::ApplyPropertyStyleImage::createHandler):
2866         (WebCore::ApplyPropertyAuto::setValue):
2867         (WebCore::ApplyPropertyAuto::value):
2868         (WebCore::ApplyPropertyAuto::hasAuto):
2869         (WebCore::ApplyPropertyAuto::setAuto):
2870         (WebCore::ApplyPropertyAuto::applyInheritValue):
2871         (WebCore::ApplyPropertyAuto::applyInitialValue):
2872         (WebCore::ApplyPropertyAuto::applyValue):
2873         (WebCore::ApplyPropertyAuto::createHandler):
2874         (WebCore::defaultInitialColor):
2875         (WebCore::ApplyPropertyColor::applyInheritValue):
2876         (WebCore::ApplyPropertyColor::applyInitialValue):
2877         (WebCore::ApplyPropertyColor::applyValue):
2878         (WebCore::ApplyPropertyColor::createHandler):
2879         (WebCore::ApplyPropertyDirection::applyValue):
2880         (WebCore::ApplyPropertyDirection::createHandler):
2881         (WebCore::ApplyPropertyLength::setValue):
2882         (WebCore::ApplyPropertyLength::applyValue):
2883         (WebCore::ApplyPropertyLength::createHandler):
2884         (WebCore::ApplyPropertyString::setValue):
2885         (WebCore::ApplyPropertyString::applyValue):
2886         (WebCore::ApplyPropertyString::createHandler):
2887         (WebCore::ApplyPropertyBorderRadius::setValue):
2888         (WebCore::ApplyPropertyBorderRadius::applyValue):
2889         (WebCore::ApplyPropertyBorderRadius::createHandler):
2890         (WebCore::ApplyPropertyFillLayer::applyInheritValue):
2891         (WebCore::ApplyPropertyFillLayer::applyInitialValue):
2892         (WebCore::ApplyPropertyFillLayer::applyValue):
2893         (WebCore::ApplyPropertyFillLayer::createHandler):
2894         (WebCore::ApplyPropertyComputeLength::setValue):
2895         (WebCore::ApplyPropertyComputeLength::applyValue):
2896         (WebCore::ApplyPropertyComputeLength::createHandler):
2897         (WebCore::ApplyPropertyFont::applyInheritValue):
2898         (WebCore::ApplyPropertyFont::applyInitialValue):
2899         (WebCore::ApplyPropertyFont::applyValue):
2900         (WebCore::ApplyPropertyFont::createHandler):
2901         (WebCore::ApplyPropertyFontWeight::applyValue):
2902         (WebCore::ApplyPropertyFontWeight::createHandler):
2903         (WebCore::ApplyPropertyCounter::emptyFunction):
2904         (WebCore::ApplyPropertyCounter::applyValue):
2905         (WebCore::ApplyPropertyCounter::createHandler):
2906         (WebCore::ApplyPropertyCursor::applyInheritValue):
2907         (WebCore::ApplyPropertyCursor::applyInitialValue):
2908         (WebCore::ApplyPropertyCursor::applyValue):
2909         (WebCore::ApplyPropertyCursor::createHandler):
2910         (WebCore::ApplyPropertyTextEmphasisStyle::applyInheritValue):
2911         (WebCore::ApplyPropertyTextEmphasisStyle::applyInitialValue):
2912         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
2913         (WebCore::ApplyPropertyTextEmphasisStyle::createHandler):
2914         (WebCore::ApplyPropertyAnimation::setValue):
2915         (WebCore::ApplyPropertyAnimation::value):
2916         (WebCore::ApplyPropertyAnimation::test):
2917         (WebCore::ApplyPropertyAnimation::clear):
2918         (WebCore::ApplyPropertyAnimation::initial):
2919         (WebCore::ApplyPropertyAnimation::map):
2920         (WebCore::ApplyPropertyAnimation::accessAnimations):
2921         (WebCore::ApplyPropertyAnimation::animations):
2922         (WebCore::ApplyPropertyAnimation::applyInheritValue):
2923         (WebCore::ApplyPropertyAnimation::applyInitialValue):
2924         (WebCore::ApplyPropertyAnimation::applyValue):
2925         (WebCore::ApplyPropertyAnimation::createHandler):
2926         (WebCore::ApplyPropertyOutlineStyle::applyInheritValue):
2927         (WebCore::ApplyPropertyOutlineStyle::applyInitialValue):
2928         (WebCore::ApplyPropertyOutlineStyle::applyValue):
2929         (WebCore::ApplyPropertyOutlineStyle::createHandler):
2930         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2931         * css/CSSStyleApplyProperty.h:
2932         (WebCore::PropertyHandler::PropertyHandler):
2933         (WebCore::PropertyHandler::applyInheritValue):
2934         (WebCore::PropertyHandler::applyInitialValue):
2935         (WebCore::PropertyHandler::applyValue):
2936         (WebCore::PropertyHandler::isValid):
2937         (WebCore::PropertyHandler::inheritFunction):
2938         (WebCore::PropertyHandler::initialFunction):
2939         (WebCore::PropertyHandler::applyFunction):
2940         (WebCore::CSSStyleApplyProperty::propertyHandler):
2941         (WebCore::CSSStyleApplyProperty::setPropertyHandler):
2942         * css/CSSStyleSelector.cpp:
2943         (WebCore::CSSStyleSelector::applyProperty):
2944         * rendering/style/RenderStyle.h:
2945         (WebCore::InheritedFlags::invalidColor):
2946
2947 2011-10-24  Ben Wells  <benwells@chromium.org>
2948
2949         Canvas drawImage with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
2950         https://bugs.webkit.org/show_bug.cgi?id=66920
2951
2952         Reviewed by James Robinson.
2953
2954         Test: fast/canvas/canvas-composite-image.html
2955
2956         Use the same method as fills to handle composited drawImage calls that will affect the whole
2957         canvas. To do this code used when doing fills has been factored into seperate functions and
2958         used by drawImage. Some functions used to do these types of operations have also been renamed.
2959
2960         * html/canvas/CanvasRenderingContext2D.cpp:
2961         (WebCore::isFullCanvasCompositeMode):
2962         (WebCore::CanvasRenderingContext2D::fill):
2963         (WebCore::CanvasRenderingContext2D::fillRect):
2964         (WebCore::CanvasRenderingContext2D::drawImage):
2965         (WebCore::CanvasRenderingContext2D::calculateCompositingBufferRect):
2966         (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
2967         (WebCore::CanvasRenderingContext2D::compositeBuffer):
2968         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
2969         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
2970         * html/canvas/CanvasRenderingContext2D.h:
2971
2972 2011-10-24  Sheriff Bot  <webkit.review.bot@gmail.com>
2973
2974         Unreviewed, rolling out r98294 and r98306.
2975         http://trac.webkit.org/changeset/98294
2976         http://trac.webkit.org/changeset/98306
2977         https://bugs.webkit.org/show_bug.cgi?id=70790
2978
2979         the first patch broke chromium-mac and the second gclient
2980         (Requested by jchaffraix on #webkit).
2981
2982         * WebCore.gyp/WebCore.gyp:
2983
2984 2011-10-24  Ryosuke Niwa  <rniwa@webkit.org>
2985
2986         Build fix after r98300.
2987
2988         * WebCore.gypi:
2989         * WebCore.pro:
2990
2991 2011-10-24  Anders Carlsson  <andersca@apple.com>
2992
2993         It should be possible for Widget subclasses to control whether transforms affect the frame rect
2994         https://bugs.webkit.org/show_bug.cgi?id=70787
2995
2996         Reviewed by Sam Weinig.
2997
2998         Currently RenderWidget sets the frame rect of it's hosted widget to the bounding box of the transformed
2999         content box rect (unless the Widget is a frame view). It should be possible for Widget subclasses to override
3000         this behavior and have the frame rect set to the absolute content box without any transforms applied.
3001
3002         * platform/Widget.h:
3003         (WebCore::Widget::transformsAffectFrameRect):
3004         Add new member function.
3005
3006         * rendering/RenderWidget.cpp:
3007         (WebCore::RenderWidget::updateWidgetGeometry):
3008         Move shared code from setWidget and updateWidgetPosition out into a new function. If transformsAffectFrameRect returns 
3009         false, just set the frame rect to the absolute content box.
3010
3011         (WebCore::RenderWidget::setWidget):
3012         (WebCore::RenderWidget::updateWidgetPosition):
3013         Call updateWidgetGeometry.
3014
3015         * rendering/RenderWidget.h:
3016
3017 2011-10-24  Arko Saha  <arko@motorola.com>
3018
3019         Microdata: Add itemprop, itemref, itemvalue attributes.
3020         https://bugs.webkit.org/show_bug.cgi?id=69839
3021
3022         Reviewed by Ryosuke Niwa.
3023
3024         Tests: fast/dom/MicroData/itemprop-add-remove-tokens.html
3025                fast/dom/MicroData/itemprop-for-an-element-must-be-correct.html
3026                fast/dom/MicroData/itemprop-must-be-read-only.html
3027                fast/dom/MicroData/itemprop-reflected-by-itemProp-property.html
3028                fast/dom/MicroData/itemref-add-remove-tokens.html
3029                fast/dom/MicroData/itemref-attribute-reflected-by-itemRef-property.html
3030                fast/dom/MicroData/itemref-for-an-element-must-be-correct.html
3031                fast/dom/MicroData/itemref-must-be-read-only.html
3032                fast/dom/MicroData/itemvalue-reflects-data-attr-on-object-element.html
3033                fast/dom/MicroData/itemvalue-reflects-href-attr.html
3034                fast/dom/MicroData/itemvalue-reflects-src-attribute-on-img-element.html
3035                fast/dom/MicroData/itemvalue-reflects-the-content-attr-on-meta-element.html
3036                fast/dom/MicroData/itemvalue-reflects-the-src-attr.html
3037                fast/dom/MicroData/itemvalue-returns-element-itself.html
3038                fast/dom/MicroData/itemvalue-returns-null.html
3039                fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-001.html
3040                fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-002.html
3041
3042         * CMakeLists.txt:
3043         * GNUmakefile.list.am:
3044         * WebCore.gypi:
3045         * WebCore.pro:
3046         * WebCore.vcproj/WebCore.vcproj:
3047         * bindings/js/JSHTMLElementCustom.cpp:
3048         (WebCore::toJS):
3049         (WebCore::JSHTMLElement::itemValue):
3050         (WebCore::JSHTMLElement::setItemValue):
3051         * bindings/v8/custom/V8HTMLElementCustom.cpp:
3052         (WebCore::toV8Object):
3053         (WebCore::V8HTMLElement::itemValueAccessorGetter):
3054         (WebCore::V8HTMLElement::itemValueAccessorSetter):
3055         * dom/MicroDataItemList.cpp:
3056         * html/HTMLAnchorElement.cpp:
3057         (WebCore::HTMLAnchorElement::itemValueText):
3058         (WebCore::HTMLAnchorElement::setItemValueText):
3059         * html/HTMLAnchorElement.h:
3060         * html/HTMLAreaElement.cpp:
3061         (WebCore::HTMLAreaElement::itemValueText):
3062         (WebCore::HTMLAreaElement::setItemValueText):
3063         * html/HTMLAreaElement.h:
3064         * html/HTMLAttributeNames.in:
3065         * html/HTMLElement.cpp:
3066         (WebCore::HTMLElement::parseMappedAttribute):
3067         (WebCore::HTMLElement::itemProp): Returns element's itemprop content attribute.
3068         (WebCore::HTMLElement::setItemProp): Sets itemprop value on changing elemet's
3069         itemprop attribute.
3070         (WebCore::HTMLElement::itemRef): Returns element's itemref content attribute.
3071         (WebCore::HTMLElement::setItemRef): Sets itemref value on changing elemet's
3072         itemref attribute.
3073         (WebCore::HTMLElement::setItemValue): Sets element's itemvalue. If the element has no
3074         itemprop attribute or if element has an itemscope attribute, it throws INVALID_ACCESS_ERR
3075         exception.
3076         (WebCore::HTMLElement::itemValue): Returns the elements itemvalue.
3077
3078         If the element has no itemprop attribute it returns null.
3079         If the element has an itemscope attribute, it returns the element itself.
3080         If the element is a meta element: It acts as it would if it was reflecting the element's
3081         content content attribute.
3082         If the element is an audio, embed, iframe, img, source, track, or video element: It acts
3083         as it would if it was reflecting the element's src content attribute.
3084         If the element is an a, area, or link element: It act as it would if it was reflecting the
3085         href content attribute.
3086         If the element is an object element: It acts as  it would if it was reflecting the element's
3087         data content attribute.
3088
3089         (WebCore::HTMLElement::itemValueText):
3090         (WebCore::HTMLElement::setItemValueText):
3091         * html/HTMLElement.h:
3092         * html/HTMLElement.idl:
3093         * html/HTMLEmbedElement.cpp:
3094         (WebCore::HTMLEmbedElement::itemValueText):
3095         (WebCore::HTMLEmbedElement::setItemValueText):
3096         * html/HTMLEmbedElement.h:
3097         * html/HTMLIFrameElement.cpp:
3098         (WebCore::HTMLIFrameElement::itemValueText):
3099         (WebCore::HTMLIFrameElement::setItemValueText):
3100         * html/HTMLIFrameElement.h:
3101         * html/HTMLImageElement.cpp:
3102         (WebCore::HTMLImageElement::itemValueText):
3103         (WebCore::HTMLImageElement::setItemValueText):
3104         * html/HTMLImageElement.h:
3105         * html/HTMLLinkElement.cpp:
3106         (WebCore::HTMLLinkElement::itemValueText):
3107         (WebCore::HTMLLinkElement::setItemValueText):
3108         * html/HTMLLinkElement.h:
3109         * html/HTMLMediaElement.cpp:
3110         (WebCore::HTMLMediaElement::itemValueText):
3111         (WebCore::HTMLMediaElement::setItemValueText):
3112         * html/HTMLMediaElement.h:
3113         * html/HTMLMetaElement.cpp:
3114         (WebCore::HTMLMetaElement::itemValueText):
3115         (WebCore::HTMLMetaElement::setItemValueText):
3116         * html/HTMLMetaElement.h:
3117         * html/HTMLObjectElement.cpp:
3118         (WebCore::HTMLObjectElement::itemValueText):
3119         (WebCore::HTMLObjectElement::setItemValueText):
3120         * html/HTMLObjectElement.h:
3121         * html/HTMLSourceElement.cpp:
3122         (WebCore::HTMLSourceElement::itemValueText):
3123         (WebCore::HTMLSourceElement::setItemValueText):
3124         * html/HTMLSourceElement.h:
3125         * html/HTMLTrackElement.cpp:
3126         (WebCore::HTMLTrackElement::itemValueText):
3127         (WebCore::HTMLTrackElement::setItemValueText):
3128         * html/HTMLTrackElement.h:
3129         * html/MicroDataItemValue.cpp: Added.
3130         (WebCore::MicroDataItemValue::MicroDataItemValue):
3131         (WebCore::MicroDataItemValue::createFromString):
3132         (WebCore::MicroDataItemValue::createFromNode):
3133         * html/MicroDataItemValue.h: Added.
3134         (WebCore::MicroDataItemValue::isNode):
3135         (WebCore::MicroDataItemValue::getNode):
3136         (WebCore::MicroDataItemValue::getString):
3137
3138 2011-10-24  Joseph Pecoraro  <joepeck@webkit.org>
3139
3140         Remove unused instance variable
3141         https://bugs.webkit.org/show_bug.cgi?id=70750
3142
3143         Reviewed by Dimitri Glazkov.
3144
3145         * rendering/RenderTextControl.h:
3146
3147 2011-10-24  Nico Weber  <thakis@chromium.org>
3148
3149         [chromium/mac] Fix an ODR violation.
3150         https://bugs.webkit.org/show_bug.cgi?id=70753
3151
3152         Reviewed by Anders Carlsson.
3153
3154         Both ScrollAnimatorNone and ScrollAnimatorMac define ScrollAnimator::create() on OS X.
3155         Remove the unused one.
3156
3157         * WebCore.gyp/WebCore.gyp:
3158
3159 2011-10-24  Tim Horton  <timothy_horton@apple.com>
3160
3161         feColorMatrix doesn't use the correct default "matrix" type when no type attribute is specified
3162         https://bugs.webkit.org/show_bug.cgi?id=70035
3163         <rdar://problem/10280177>
3164
3165         Reviewed by Nikolas Zimmermann.
3166
3167         Make feColorMatrix's type attribute be "matrix" by default.
3168
3169         Test: svg/filters/feColorMatrix-default-type.svg
3170
3171         * svg/SVGFEColorMatrixElement.cpp:
3172         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
3173
3174 2011-10-24  Joshua Bell  <jsbell@chromium.org>
3175
3176         Unbreak binding generation tests
3177         https://bugs.webkit.org/show_bug.cgi?id=70768
3178
3179         Reviewed by Darin Adler.
3180
3181         Update the expected output of V8 binding tests to match
3182         results c/o https://bugs.webkit.org/show_bug.cgi?id=70065
3183
3184         * bindings/scripts/test/V8/V8TestObj.cpp:
3185         (WebCore::TestObjInternal::idbKeyCallback):
3186
3187 2011-10-21  Nat Duca  <nduca@chromium.org>
3188
3189         [chromium] Add isTraceEventEnabled to PlatformSupport.
3190         https://bugs.webkit.org/show_bug.cgi?id=70618
3191
3192         Reviewed by Darin Fisher.
3193
3194         * platform/chromium/PlatformSupport.h:
3195
3196 2011-10-24  Mihnea Ovidenie  <mihnea@adobe.com>
3197
3198         Use StringBuilder in CSSRuleList::rulesText()/CSSSelectorList::selectorsText()
3199         https://bugs.webkit.org/show_bug.cgi?id=70746
3200
3201         Reviewed by Tony Chang.
3202
3203         Covered by existing tests.
3204
3205         * css/CSSRuleList.cpp:
3206         (WebCore::CSSRuleList::rulesText):
3207         * css/CSSSelectorList.cpp:
3208         (WebCore::CSSSelectorList::selectorsText):
3209         * css/WebKitCSSKeyframesRule.cpp:
3210         (WebCore::WebKitCSSKeyframesRule::cssText): Use CSSRuleList::rulesText() method instead of explicit loop.
3211
3212 2011-10-24  Michael Saboff  <msaboff@apple.com>
3213
3214         WebKit doesn't build with recent changes to libdispatch
3215         https://bugs.webkit.org/show_bug.cgi?id=70737
3216
3217         Added initialization for new WebKitSystemInterface function 
3218         CreateVMPressureDispatchOnMainQueue.  Changed MemoryPressureHandler::install
3219         to use new function.
3220
3221         Reviewed by Geoffrey Garen.
3222
3223         No new tests.  Moved functionality to WebKitSystemInterface.
3224
3225         * WebCore.exp.in:
3226         * platform/mac/MemoryPressureHandlerMac.mm:
3227         (WebCore::MemoryPressureHandler::install):
3228         * platform/mac/WebCoreSystemInterface.h:
3229         * platform/mac/WebCoreSystemInterface.mm:
3230
3231 2011-10-24  Joshua Bell  <jsbell@chromium.org>
3232
3233         IndexedDB: Throw DATA_ERR on invalid keys, remove null key support
3234         https://bugs.webkit.org/show_bug.cgi?id=70065
3235
3236         Reviewed by Tony Chang.
3237
3238         Part 1 of a two-sided commit. Renames IDBKey::NullType to
3239         IDBKey::InvalidType. JS binding yields this type rather
3240         than throwing immediately so the correct exception type can
3241         be raised. Checks for invalid keys added to front-end classes.
3242
3243         * bindings/js/JSIDBKeyCustom.cpp:
3244         (WebCore::toJS):
3245         * bindings/scripts/CodeGeneratorV8.pm:
3246         (TypeCanFailConversion):
3247         * bindings/v8/IDBBindingUtilities.cpp:
3248         (WebCore::createIDBKeyFromValue):
3249         * bindings/v8/custom/V8IDBKeyCustom.cpp:
3250         (WebCore::toV8):
3251         * storage/IDBCursor.cpp:
3252         (WebCore::IDBCursor::continueFunction):
3253         * storage/IDBFactory.cpp:
3254         (WebCore::IDBFactory::cmp):
3255         * storage/IDBIndex.cpp:
3256         (WebCore::IDBIndex::get):
3257         (WebCore::IDBIndex::getKey):
3258         * storage/IDBKey.cpp:
3259         (WebCore::IDBKey::IDBKey):
3260         (WebCore::IDBKey::compare):
3261         * storage/IDBKey.h:
3262         (WebCore::IDBKey::createInvalid):
3263         * storage/IDBKeyRange.cpp:
3264         (WebCore::IDBKeyRange::only):
3265         (WebCore::IDBKeyRange::lowerBound):
3266         (WebCore::IDBKeyRange::upperBound):
3267         (WebCore::IDBKeyRange::bound):
3268         * storage/IDBKeyRange.h:
3269         (WebCore::IDBKeyRange::lowerBound):
3270         (WebCore::IDBKeyRange::upperBound):
3271         (WebCore::IDBKeyRange::bound):
3272         * storage/IDBKeyRange.idl:
3273         * storage/IDBLevelDBCoding.cpp:
3274         (WebCore::IDBLevelDBCoding::encodeIDBKey):
3275         (WebCore::IDBLevelDBCoding::decodeIDBKey):
3276         * storage/IDBObjectStore.cpp:
3277         (WebCore::IDBObjectStore::get):
3278         (WebCore::IDBObjectStore::add):
3279         (WebCore::IDBObjectStore::put):
3280         (WebCore::IDBObjectStore::deleteFunction):
3281         * storage/IDBObjectStoreBackendImpl.cpp:
3282         (WebCore::IDBObjectStoreBackendImpl::put):
3283         (WebCore::IDBObjectStoreBackendImpl::putInternal):
3284         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
3285         * storage/IDBSQLiteBackingStore.cpp:
3286         (WebCore::whereSyntaxForKey):
3287         (WebCore::bindKeyToQuery):
3288         (WebCore::lowerCursorWhereFragment):
3289         (WebCore::upperCursorWhereFragment):
3290         (WebCore::bindKeyToQueryWithNulls):
3291         (WebCore::keyFromQuery):
3292
3293 2011-10-24  Alok Priyadarshi  <alokp@chromium.org>
3294
3295         [chromium] Make accelerated drawing work with threaded compositing
3296         https://bugs.webkit.org/show_bug.cgi?id=70656
3297
3298         Reviewed by James Robinson.
3299
3300         Make sure that the compositor context is not used outside LayerTextureUpdater::updateTextureRect().
3301         Created a FrameBuffer class that wraps skia gpu canvas and manages GL resources.
3302
3303         * platform/graphics/chromium/ContentLayerChromium.cpp:
3304         (WebCore::ContentLayerChromium::createTextureUpdater):
3305         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
3306         (WebCore::FrameBuffer::FrameBuffer::FrameBuffer):
3307         (WebCore::FrameBuffer::FrameBuffer::~FrameBuffer):
3308         (WebCore::FrameBuffer::FrameBuffer::initialize):
3309         (WebCore::LayerTextureUpdaterSkPicture::LayerTextureUpdaterSkPicture):
3310         (WebCore::LayerTextureUpdaterSkPicture::~LayerTextureUpdaterSkPicture):
3311         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
3312         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
3313         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
3314         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3315         (WebCore::CCLayerTreeHost::initialize):
3316
3317 2011-10-24  Adam Klein  <adamk@chromium.org>
3318
3319         Optimize Node::isInShadowTree to execute in constant-time
3320         https://bugs.webkit.org/show_bug.cgi?id=67686
3321
3322         Reviewed by Dimitri Glazkov.
3323
3324         No expected change in behavior, so no new tests.
3325
3326         * dom/Node.cpp:
3327         (WebCore::Node::isInShadowTree):
3328
3329 2011-10-24  Nat Duca  <nduca@chromium.org>
3330
3331         [chromium] Expose WebThread::postDelayedTask to CCThread
3332         https://bugs.webkit.org/show_bug.cgi?id=70712
3333
3334         Reviewed by James Robinson.
3335
3336         * platform/graphics/chromium/cc/CCThread.h:
3337
3338 2011-10-24  Levi Weintraub  <leviw@chromium.org>
3339
3340         <svg> fails to use explicit width and height inside <html> inside IFRAME
3341         https://bugs.webkit.org/show_bug.cgi?id=64823
3342
3343         Reviewed by Nikolas Zimmermann.
3344
3345         Checking that embedded SVG is in an SVG document before negotiating size
3346         with the host document.
3347
3348         Test: svg/as-object/svg-embedded-in-html-in-iframe.html
3349
3350         * rendering/svg/RenderSVGRoot.cpp:
3351         (WebCore::isEmbeddedThroughFrameContainingSVGDocument):
3352         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
3353         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
3354
3355 2011-10-24  Rafael Weinstein  <rafaelw@chromium.org>
3356
3357         Node::registeredMutationObserversOfType should be prefixed by "get"
3358         https://bugs.webkit.org/show_bug.cgi?id=70359
3359
3360         Reviewed by Ojan Vafai.
3361
3362         This change renames Node::registeredMutationObserversOfType to
3363         Node::getRegisteredMutationObserversOfType per the WebKit style guide.
3364
3365         No tests needed as the change is only method renaming.
3366
3367         * dom/CharacterData.cpp:
3368         (WebCore::CharacterData::dispatchModifiedEvent):
3369         * dom/ChildListMutationScope.cpp:
3370         (WebCore::MutationAccumulationRouter::MutationAccumulationRouter::incrementScopingLevel):
3371         * dom/Element.cpp:
3372         (WebCore::enqueueAttributesMutationRecord):
3373         * dom/Node.cpp:
3374         (WebCore::Node::getRegisteredMutationObserversOfType):
3375         * dom/Node.h:
3376
3377 2011-10-24  Mark Hahnenberg  <mhahnenberg@apple.com>
3378
3379         Rename static getOwnPropertySlot to getOwnPropertySlotByIndex
3380         https://bugs.webkit.org/show_bug.cgi?id=70271
3381
3382         Reviewed by Darin Adler.
3383
3384         No new tests.
3385
3386         Renaming versions of getOwnPropertySlot that use an unsigned as the property
3387         name to "getOwnPropertySlotByIndex" in preparation for adding them to the 
3388         MethodTable, which requires unique names for each method.
3389
3390         * bindings/js/SerializedScriptValue.cpp:
3391         (WebCore::CloneSerializer::getSparseIndex):
3392         * bindings/scripts/CodeGeneratorJS.pm:
3393         (GenerateHeader):
3394         (GenerateImplementation):
3395         * bridge/runtime_array.cpp:
3396         (JSC::RuntimeArray::getOwnPropertySlotVirtual):
3397         (JSC::RuntimeArray::getOwnPropertySlotByIndex):
3398         * bridge/runtime_array.h:
3399
3400 2011-10-24  Joshua Bell  <jsbell@chromium.org>
3401
3402         IndexedDB add should fail adding an inline and passed key simultaneously
3403         https://bugs.webkit.org/show_bug.cgi?id=58598
3404
3405         Reviewed by Tony Chang.
3406
3407         Test: storage/indexeddb/mozilla/key-requirements-inline-and-passed.html
3408
3409         Implement the spec clause: passing a key into add() or put() when
3410         the object store has a key path ("inline key") is an error.
3411
3412         * storage/IDBObjectStoreBackendImpl.cpp:
3413         (WebCore::IDBObjectStoreBackendImpl::put):
3414
3415 2011-10-24  Simon Fraser  <simon.fraser@apple.com>
3416
3417         Improve debug compositing border colors
3418         https://bugs.webkit.org/show_bug.cgi?id=70742
3419
3420         Reviewed by Dean Jackson.
3421
3422         Improve the appearance of the debug borders used to indicate compositing:
3423         1. Use green for normal layers, orange for tiled layers
3424         2. Make the repaint counter translucent
3425         3. Change the color of the repaint counter to show when accelerated drawing is enabled.
3426
3427         * platform/graphics/GraphicsLayer.cpp:
3428         (WebCore::GraphicsLayer::updateDebugIndicators):
3429         * platform/graphics/mac/WebLayer.mm:
3430         (drawLayerContents):
3431
3432 2011-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
3433
3434         [GTK] Fix make distcheck build
3435         https://bugs.webkit.org/show_bug.cgi?id=69745
3436
3437         Reviewed by Martin Robinson.
3438
3439         * GNUmakefile.am:
3440         * GNUmakefile.list.am:
3441
3442 2011-10-24  Alexander Pavlov  <apavlov@chromium.org>
3443
3444         Web Inspector: [Styles] Adding a new style rule breaks things
3445         https://bugs.webkit.org/show_bug.cgi?id=70721
3446
3447         Reviewed by Pavel Feldman.
3448
3449         We had used to swap BlankStylePropertiesSection prototype and recently got rid of this hack,
3450         but still had dependencies on the old behavior.
3451
3452         * inspector/front-end/StylesSidebarPane.js:
3453         (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
3454         (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
3455         (WebInspector.BlankStylePropertiesSection.prototype.get isBlank):
3456         (WebInspector.BlankStylePropertiesSection.prototype.expand):
3457         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
3458         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
3459         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCancelled):
3460         (WebInspector.BlankStylePropertiesSection.prototype.makeNormal):
3461
3462 2011-10-24  Pavel Feldman  <pfeldman@google.com>
3463
3464         Web Inspector: do not force document loading on reload (should happen on demand).
3465         https://bugs.webkit.org/show_bug.cgi?id=70724
3466
3467         Reviewed by Yury Semikhatsky.
3468
3469         * inspector/front-end/ConsoleMessage.js:
3470         (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
3471         * inspector/front-end/DOMAgent.js:
3472         (WebInspector.DOMAgent.prototype._documentUpdated):
3473         * inspector/front-end/ElementsPanel.js:
3474         (WebInspector.ElementsPanel.prototype.wasShown):
3475         * inspector/front-end/ElementsTreeOutline.js:
3476         (WebInspector.ElementsTreeOutline.prototype.setVisible):
3477
3478 2011-10-24  Eric Carlson  <eric.carlson@apple.com>
3479
3480         Drop MutableTextTrack and make TextTrack always mutable
3481         https://bugs.webkit.org/show_bug.cgi?id=62890
3482
3483         The MutableTextTrack type was removed from the spec, all text tracks are now mutable.
3484
3485         Reviewed by Sam Weinig.
3486
3487         No new tests needed, the changes just refactor existing code.
3488
3489         * CMakeLists.txt: Remove all traces of MutableTextTrack.
3490         * CodeGenerators.pri: Ditto.
3491         * DerivedSources.cpp: Ditto.
3492         * DerivedSources.make: Ditto.
3493         * GNUmakefile.list.am: Ditto.
3494         * WebCore.gypi: Ditto.
3495         * WebCore.pro: Ditto.
3496         * WebCore.xcodeproj/project.pbxproj: Ditto.
3497         * bindings/gobject/GNUmakefile.am: Ditto.
3498         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Ditto.
3499         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
3500
3501         * bindings/js/JSTextTrackCustom.cpp: Removed.
3502
3503         * html/HTMLMediaElement.cpp:
3504         (WebCore::HTMLMediaElement::addTrack): Return a TextTrack instead of a MutableTextTrack.
3505         * html/HTMLMediaElement.h:
3506         * html/HTMLMediaElement.idl:
3507
3508         * html/LoadableTextTrack.cpp:
3509         (WebCore::LoadableTextTrack::LoadableTextTrack): Return a TextTrack instead of a MutableTextTrack.
3510
3511         * html/MutableTextTrack.cpp: Removed.
3512         * html/MutableTextTrack.h: Removed.
3513         * html/MutableTextTrack.idl: Removed.
3514
3515         * html/TextTrack.cpp:
3516         (WebCore::TextTrack::TextTrack): Remove Type parameter.
3517         (WebCore::TextTrack::addCue): New, moved from MutableTextTrack.
3518         (WebCore::TextTrack::removeCue): Ditto.
3519         (WebCore::TextTrack::newCuesLoaded): Ditto.
3520         (WebCore::TextTrack::fetchNewestCues): Ditto.
3521         * html/TextTrack.h:
3522         (WebCore::TextTrack::create): Remove Type parameter
3523         * html/TextTrack.idl: Add addCue and removeCue.
3524
3525 2011-10-24  Yury Semikhatsky  <yurys@chromium.org>
3526
3527         Web Inspector: allow debugging dedicated worker initialization
3528         https://bugs.webkit.org/show_bug.cgi?id=70723
3529
3530         Now it is possible to pause each new dedicated worker on start. The user
3531         needs to select a checkbox and then each newly created dedicated worker
3532         will be paused on the first statement until the user resumes it explicitely.
3533
3534         Reviewed by Pavel Feldman.
3535
3536         * inspector/Inspector.json: resume command is added. It is similar to GDB's run
3537         command, i.e. worker execution will be paused until explicit "resume" command is
3538         received.
3539         * inspector/InspectorInstrumentation.cpp:
3540         (WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStartImpl):
3541         * inspector/InspectorInstrumentation.h:
3542         (WebCore::InspectorInstrumentation::shouldPauseDedicatedWorkerOnStart):
3543         * inspector/InspectorRuntimeAgent.cpp:
3544         (WebCore::InspectorRuntimeAgent::resume):
3545         (WebCore::InspectorRuntimeAgent::pauseWorkerContext):
3546         * inspector/InspectorRuntimeAgent.h:
3547         * inspector/InspectorWorkerAgent.cpp:
3548         (WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart): returns true
3549         if the user chose to automatically pause all new workers.
3550         * inspector/InspectorWorkerAgent.h:
3551         * inspector/WorkerInspectorController.cpp:
3552         (WebCore::WorkerInspectorController::resume):
3553         * inspector/front-end/WorkerManager.js:
3554         (WebInspector.WorkerManager.loaded):
3555         (WebInspector.WorkerManager.loadCompleted):
3556         (WebInspector.WorkerManager.prototype._workerCreated):
3557         (WebInspector.WorkerManager.prototype.openWorkerInspector):
3558         (WebInspector.WorkerManager.prototype._openInspectorWindow):
3559         * inspector/front-end/inspector.js:
3560         (WebInspector.loaded):
3561         * workers/Worker.cpp:
3562         (WebCore::Worker::notifyFinished):
3563         * workers/WorkerContextProxy.h:
3564         * workers/WorkerMessagingProxy.cpp:
3565         (WebCore::WorkerMessagingProxy::startWorkerContext): additional flag specifying
3566         worker initial state(paused/not paused) is added to the factory method. The flag
3567         will be carried to the corresponding WorkerThread.
3568         (WebCore::WorkerMessagingProxy::connectToInspector):
3569         * workers/WorkerMessagingProxy.h:
3570
3571 2011-10-21  Nikita Vasilyev  <me@elv1s.ru>
3572
3573         Web Inspector: Make indent configurable
3574         https://bugs.webkit.org/show_bug.cgi?id=69986
3575
3576         Add a setting to choose an indent from "8 spaces", "4 spaces" (default), "2 spaces", or "Tab character".
3577
3578         Reviewed by Pavel Feldman.
3579
3580         * English.lproj/localizedStrings.js:
3581         * inspector/front-end/SettingsScreen.js:
3582         (WebInspector.SettingsScreen):
3583         (WebInspector.SettingsScreen.prototype._createSelectSetting.get p):
3584         (WebInspector.SettingsScreen.prototype._createSelectSetting.changeListener):
3585         * inspector/front-end/TextEditorModel.js:
3586         (WebInspector.TextEditorModel):
3587         * inspector/front-end/TextViewer.js:
3588
3589 2011-10-17  Andrey Kosyakov  <caseq@chromium.org>
3590
3591         Web Inspector: add "Add to Watch" option to context menu on selection in source frame
3592         https://bugs.webkit.org/show_bug.cgi?id=69924
3593
3594         Reviewed by Pavel Feldman.
3595
3596         - added 'Add to Watch' context menu item in scripts panel;
3597         - include both default and custom items into a context menu if selection is present;
3598
3599         * inspector/front-end/ScriptsPanel.js:
3600         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
3601         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.addToWatch):
3602         * inspector/front-end/SourceFrame.js:
3603         (WebInspector.SourceFrame.prototype.populateSelectionContextMenu):
3604         (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateSelectionContextMenu):
3605         (WebInspector.SourceFrameDelegate.prototype.suggestedFileName):
3606         (WebInspector.SourceFrameDelegate.prototype.addToWatch):
3607         * inspector/front-end/TextViewer.js:
3608         (WebInspector.TextViewer.prototype._contextMenu):
3609         (WebInspector.TextViewerDelegate.prototype.populateSelectionContextMenu):
3610         * inspector/front-end/WatchExpressionsSidebarPane.js:
3611         (WebInspector.WatchExpressionsSidebarPane.prototype.addExpression):
3612         (WebInspector.WatchExpressionsSidebarPane.prototype._addButtonClicked):
3613         (WebInspector.WatchExpressionsSection.prototype.addExpression):
3614         (WebInspector.WatchExpressionsSection.prototype.addNewExpressionAndEdit):
3615         * page/ContextMenuController.cpp:
3616         (WebCore::ContextMenuController::showContextMenu):
3617
3618 2011-10-21  Alexander Pavlov  <apavlov@chromium.org>
3619
3620         Web Inspector: Audits hang on pages without img[src] elements
3621         https://bugs.webkit.org/show_bug.cgi?id=70604
3622
3623         Reviewed by Pavel Feldman.
3624
3625         Test: inspector/audits/audits-panel-noimages-functional.html
3626
3627         * inspector/front-end/AuditRules.js:
3628         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
3629
3630 2011-10-24  Deepak Sherveghar  <bpwv64@motorola.com>
3631
3632         [Qt] fast/events/media-focus-in-standalone-media-document.html fails
3633         https://bugs.webkit.org/show_bug.cgi?id=70110
3634
3635         Reviewed by Simon Hausmann.
3636
3637         ExtensionMap should also include media files mapping.
3638
3639         * platform/qt/MIMETypeRegistryQt.cpp: Added media files mapping.
3640
3641 2011-10-24  Pavel Feldman  <pfeldman@google.com>
3642
3643         Not reviewed: [chromium] follow up to 98228 - added missing css.
3644
3645         * WebCore.gypi:
3646
3647 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
3648
3649         Web Inspector: Make CSS files load upon View demand; split inspector.css into views.
3650         https://bugs.webkit.org/show_bug.cgi?id=70694
3651
3652         Reviewed by Yury Semikhatsky.
3653
3654         * WebCore.gypi:
3655         * WebCore.vcproj/WebCore.vcproj:
3656         * inspector/front-end/AuditsPanel.js:
3657         (WebInspector.AuditsPanel):
3658         * inspector/front-end/DataGrid.js:
3659         (WebInspector.DataGrid):
3660         * inspector/front-end/ElementsPanel.js:
3661         * inspector/front-end/NetworkPanel.js:
3662         (WebInspector.NetworkLogView):
3663         * inspector/front-end/PanelEnablerView.js:
3664         * inspector/front-end/ProfilesPanel.js:
3665         * inspector/front-end/ResourceView.js:
3666         (WebInspector.ResourceView):
3667         * inspector/front-end/ResourcesPanel.js:
3668         * inspector/front-end/ScriptsPanel.js:
3669         * inspector/front-end/TextViewer.js:
3670         * inspector/front-end/TimelinePanel.js:
3671         (WebInspector.TimelinePanel):
3672         * inspector/front-end/WebKit.qrc:
3673         * inspector/front-end/WelcomeView.js:
3674         (WebInspector.WelcomeView):
3675         * inspector/front-end/auditsPanel.css: Renamed from Source/WebCore/inspector/front-end/audits.css.
3676
3677 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
3678
3679         Web Inspector: make view load CSS files upon show.
3680         https://bugs.webkit.org/show_bug.cgi?id=70696
3681
3682         Reviewed by Yury Semikhatsky.
3683
3684         Test: inspector/view-css.html
3685
3686         * inspector/front-end/View.js:
3687         (WebInspector.View):
3688         (WebInspector.View.prototype._callOnVisibleChildren):
3689         (WebInspector.View.prototype._processWillShow):
3690         (WebInspector.View.prototype._processWasShown):
3691         (WebInspector.View.prototype._processWillHide):
3692         (WebInspector.View.prototype._processWasHidden):
3693         (WebInspector.View.prototype._processOnResize):
3694         (WebInspector.View.prototype.show):
3695         (WebInspector.View.prototype.detach):
3696         (WebInspector.View.prototype.registerRequiredCSS):
3697         (WebInspector.View.prototype._loadCSSIfNeeded):
3698         (WebInspector.View.prototype._doLoadCSS):
3699         (WebInspector.View.prototype._disableCSSIfNeeded):
3700         (WebInspector.View.prototype._doUnloadCSS):
3701
3702 2011-10-24  Pavel Feldman  <pfeldman@chromium.org>
3703
3704         Web Inspector: make DataGrid a view
3705         https://bugs.webkit.org/show_bug.cgi?id=70695
3706
3707         Reviewed by Yury Semikhatsky.
3708
3709         * inspector/front-end/ApplicationCacheItemsView.js:
3710         (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
3711         * inspector/front-end/CookieItemsView.js:
3712         (WebInspector.CookieItemsView.prototype._updateWithCookies):
3713         (WebInspector.SimpleCookiesTable):
3714         (WebInspector.SimpleCookiesTable.prototype.setCookies):
3715         * inspector/front-end/CookiesTable.js:
3716         (WebInspector.CookiesTable):
3717         * inspector/front-end/DOMStorageItemsView.js:
3718         (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
3719         * inspector/front-end/DataGrid.js:
3720         (WebInspector.DataGrid):
3721         (WebInspector.DataGrid.prototype.onResize):
3722         * inspector/front-end/DatabaseQueryView.js:
3723         (WebInspector.DatabaseQueryView.prototype._queryFinished):
3724         (WebInspector.DatabaseQueryView.prototype._queryError):
3725         (WebInspector.DatabaseQueryView.prototype._appendViewQueryResult):
3726         (WebInspector.DatabaseQueryView.prototype._appendErrorQueryResult):
3727         (WebInspector.DatabaseQueryView.prototype._appendQueryResult):
3728         * inspector/front-end/DatabaseTableView.js:
3729         (WebInspector.DatabaseTableView.prototype._queryFinished):
3730         * inspector/front-end/DetailedHeapshotView.js:
3731         (WebInspector.DetailedHeapshotView.prototype.wasShown.profileCallback2):
3732         (WebInspector.DetailedHeapshotView.prototype.wasShown):
3733         (WebInspector.DetailedHeapshotView.prototype.onResize):
3734         * inspector/front-end/NetworkPanel.js:
3735         (WebInspector.NetworkLogView.prototype.onResize):
3736         (WebInspector.NetworkLogView.prototype._createTable):
3737         * inspector/front-end/ProfileView.js:
3738         * inspector/front-end/ResourceCookiesView.js:
3739         (WebInspector.ResourceCookiesView.prototype._buildCookiesTable):
3740         * inspector/front-end/ResourceView.js:
3741         (WebInspector.ResourceView):
3742
3743 2011-10-24  Yosifumi Inoue  <yosin@chromium.org>
3744
3745         [Forms] Setting defaultValue should hide an input placeholder.
3746         https://bugs.webkit.org/show_bug.cgi?id=70586
3747
3748         Reviewed by Kent Tamura.
3749
3750         Tests: fast/forms/placeholder-and-default-value-expected.html
3751                fast/forms/placeholder-and-default-value.html
3752
3753         When input element has default value, we should not display
3754         placeholder. Changing default value should tell rendering engine about
3755         changing display of input element.
3756
3757         * html/HTMLInputElement.cpp:
3758         (WebCore::HTMLInputElement::parseMappedAttribute): Calls updatePlaceholderVisibility for valueAttr if it doesn't have dirty value.
3759
3760 2011-10-23  Darin Adler  <darin@apple.com>
3761
3762         Eliminate OptionElement (second and final part)
3763         https://bugs.webkit.org/show_bug.cgi?id=70710
3764
3765         Reviewed by Kent Tamura.
3766
3767         * CMakeLists.txt: Removed OptionElement.h and OptionElement.cpp.
3768         * GNUmakefile.list.am: Ditto.
3769         * WebCore.gypi: Ditto.
3770         * WebCore.pro: Ditto.
3771         * WebCore.vcproj/WebCore.vcproj: Ditto.
3772         * WebCore.xcodeproj/project.pbxproj: Ditto.
3773         * dom/DOMAllInOne.cpp: Ditto.
3774
3775         * dom/OptionElement.cpp: Removed.
3776         * dom/OptionElement.h: Removed.
3777
3778         * html/HTMLSelectElement.cpp:
3779         (WebCore::HTMLSelectElement::saveLastSelection): Eliminate use of the
3780         toOptionElement function. Use hasTagName and toHTMLOptionElement instead.
3781         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): Ditto.
3782         (WebCore::HTMLSelectElement::updateListBoxSelection): Ditto.
3783         (WebCore::HTMLSelectElement::listBoxOnChange): Ditto.
3784         (WebCore::HTMLSelectElement::recalcListItems): Ditto.
3785         (WebCore::HTMLSelectElement::selectedIndex): Ditto.
3786         (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
3787         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): Ditto.
3788         (WebCore::HTMLSelectElement::saveFormControlState): Ditto.
3789         (WebCore::HTMLSelectElement::restoreFormControlState): Ditto.
3790         (WebCore::HTMLSelectElement::appendFormData): Ditto.
3791         (WebCore::HTMLSelectElement::reset): Ditto.
3792         (WebCore::HTMLSelectElement::updateSelectedState): Ditto.
3793         (WebCore::HTMLSelectElement::lastSelectedListIndex): Ditto.
3794         (WebCore::HTMLSelectElement::typeAheadFind): Ditto.
3795         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.
3796
3797         * html/HTMLSelectElement.h: Changed the argument type of the
3798         deselectItemsWithoutValidation function to HTMLElement* since that's
3799         the type of an item in our items vector now.
3800
3801 2011-10-23  Yuzo Fujishima  <yuzo@google.com>
3802
3803         [chromium] Attempt to fix compilation error for Chromium OS.
3804
3805         Unreviewed.
3806
3807         * mediastream/MediaStreamTrack.cpp:
3808         (WebCore::MediaStreamTrack::kind):
3809
3810 2011-10-23  Adam Barth  <abarth@webkit.org>
3811
3812         <img crossorigin> should fail to load when CORS check fails
3813         https://bugs.webkit.org/show_bug.cgi?id=69732
3814
3815         Reviewed by Darin Adler.
3816
3817         When loading an image with the crossorigin attribute, the spec says
3818         that we're not supposed to load the image if the CORS check fails.
3819         This "fails fast" behavior is intended to help developers understand
3820         whether they've configured CORS correctly (instead of only catching the
3821         error later when trying to read back the canvas).
3822
3823         Our new behavior matches the spec and Firefox.
3824
3825         Test: http/tests/security/img-with-failed-cors-check-fails-to-load.html
3826
3827         * loader/ImageLoader.cpp:
3828         (WebCore::ImageLoader::notifyFinished):
3829
3830 2011-10-23  Noel Gordon  <noel.gordon@gmail.com>
3831
3832         [chromium] Remove GeolocationServiceGtk.{h,cpp} from the gyp projects
3833         https://bugs.webkit.org/show_bug.cgi?id=70702
3834
3835         Reviewed by Kent Tamura.
3836
3837         platform/gtk/GeolocationServiceGtk.{h,cpp} were removed in r97746, so
3838         remove references to these files from the gyp files.
3839
3840         * WebCore.gypi:
3841
3842 2011-10-23  Andreas Kling  <kling@webkit.org>
3843
3844         Move StyleSheet::addSubresourceStyleURLs() to CSSStyleSheet.
3845         https://bugs.webkit.org/show_bug.cgi?id=70690
3846
3847         Reviewed by Antti Koivisto.
3848
3849         This method isn't part of the StyleSheet DOM interface, nor is it used by
3850         XSLStyleSheet, so move it down to CSSStyleSheet and make it non-virtual.
3851         Also remove some nearby unneeded casts from CSSStyleSheet* to StyleSheet*.
3852
3853         * css/CSSStyleSheet.h:
3854         * css/StyleSheet.h:
3855         * html/HTMLLinkElement.cpp:
3856         (WebCore::HTMLLinkElement::isLoading):
3857         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs):
3858         * html/HTMLStyleElement.cpp:
3859         (WebCore::HTMLStyleElement::addSubresourceAttributeURLs):
3860         (WebCore::HTMLStyleElement::disabled):
3861         (WebCore::HTMLStyleElement::setDisabled):
3862
3863 2011-10-23  Andreas Kling  <kling@webkit.org>
3864
3865         Remove style sheet constructors that take a style sheet parent.
3866         https://bugs.webkit.org/show_bug.cgi?id=70692
3867
3868         Reviewed by Antti Koivisto.
3869
3870         Style sheets are never directly parented by other style sheets, they always
3871         go via a rule (such as @import.)
3872
3873         * css/CSSStyleSheet.cpp:
3874         * css/CSSStyleSheet.h:
3875         (WebCore::CSSStyleSheet::create):
3876         * css/StyleSheet.cpp:
3877         * css/StyleSheet.h:
3878
3879 2011-10-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3880
3881         Add deleteProperty to the MethodTable
3882         https://bugs.webkit.org/show_bug.cgi?id=70162
3883
3884         Reviewed by Sam Weinig.
3885
3886         No new tests.
3887
3888         * WebCore.exp.in:
3889
3890 2011-10-23  Adam Barth  <abarth@webkit.org>
3891
3892         Update baselines for run-bindings-tests.
3893
3894         * bindings/scripts/test/JS/JSTestInterface.cpp:
3895         * bindings/scripts/test/JS/JSTestInterface.h:
3896         * bindings/scripts/test/JS/JSTestObj.cpp:
3897
3898 2011-10-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3899
3900         Remove getConstructDataVirtual
3901         https://bugs.webkit.org/show_bug.cgi?id=70638
3902
3903         Reviewed by Darin Adler.
3904
3905         No new tests.
3906
3907         Removed all declarations and definitions of getConstructDataVirtual.
3908         Also replaced all call sites to getConstructDataVirtual with a 
3909         corresponding lookup in the MethodTable.
3910
3911         * WebCore.exp.in:
3912         * bindings/js/JSAudioConstructor.cpp:
3913         * bindings/js/JSAudioConstructor.h:
3914         * bindings/js/JSImageConstructor.cpp:
3915         * bindings/js/JSImageConstructor.h:
3916         * bindings/js/JSOptionConstructor.cpp:
3917         * bindings/js/JSOptionConstructor.h:
3918         * bindings/js/ScriptFunctionCall.cpp:
3919         (WebCore::ScriptFunctionCall::construct):
3920         * bindings/scripts/CodeGeneratorJS.pm:
3921         (GenerateConstructorDeclaration):
3922         (GenerateConstructorDefinition):
3923         * bridge/runtime_object.cpp:
3924         * bridge/runtime_object.h:
3925
3926 2011-10-22  Geoffrey Garen  <ggaren@apple.com>
3927
3928         Separated string lifetime bits from character buffer state bits
3929         https://bugs.webkit.org/show_bug.cgi?id=70673
3930
3931         Reviewed by Anders Carlsson.
3932
3933         * bindings/scripts/CodeGeneratorJS.pm:
3934         (GenerateHashValue): Updated for string hashing changes in JavaScriptCore.
3935
3936 2011-10-22  Pratik Solanki  <psolanki@apple.com>
3937
3938         HTTPBodyStream in NSURLRequest gets lost when using CFNetwork loader
3939         https://bugs.webkit.org/show_bug.cgi?id=70583
3940         <rdar://problem/10281227>
3941
3942         Reviewed by Darin Adler.
3943
3944         Call WebCore::setHTTPBody() only if we actually have a FormData. Unconditionally calling it
3945         results in us passing 0 to wkCFURLRequestSetHTTPRequestBodyParts() which resets any input
3946         stream specified by the user on the NSURLRequest. This code matches the behavior in the
3947         Foundation version of doUpdatePlatformRequest().
3948
3949         * platform/network/cf/ResourceRequestCFNet.cpp:
3950         (WebCore::ResourceRequest::doUpdatePlatformRequest):
3951
3952 2011-10-22  Adam Bergkvist  <adam.bergkvist@ericsson.com>
3953
3954         Move all MediaStream and PeerConnection related non-platform files to WebCore/mediastream
3955         https://bugs.webkit.org/show_bug.cgi?id=70233
3956
3957         Reviewed by Adam Barth.
3958
3959         Removed affected files from build systems that don't have a MEDIA_STREAM build flag.
3960
3961         No new tests since we're just moving files.
3962
3963         * CMakeLists.txt:
3964         * CodeGenerators.pri:
3965         * DerivedSources.cpp:
3966         * DerivedSources.make:
3967         * GNUmakefile.am:
3968         * GNUmakefile.list.am:
3969         * UseJSC.cmake:
3970         * WebCore.gyp/WebCore.gyp:
3971         * WebCore.gypi:
3972         * WebCore.pro:
3973         * WebCore.vcproj/WebCore.vcproj:
3974         * WebCore.xcodeproj/project.pbxproj:
3975         * bindings/js/JSBindingsAllInOne.cpp:
3976         * dom/DOMAllInOne.cpp:
3977         * dom/DispatchTask.h: Removed unused file.
3978         * dom/ScriptExecutionContext.cpp:
3979         * mediastream/LocalMediaStream.cpp: Renamed from Source/WebCore/dom/LocalMediaStream.cpp.
3980         (WebCore::LocalMediaStream::create):
3981         (WebCore::LocalMediaStream::LocalMediaStream):
3982         (WebCore::LocalMediaStream::stop):
3983         (WebCore::LocalMediaStream::stopTimerFired):
3984         (WebCore::LocalMediaStream::~LocalMediaStream):
3985         (WebCore::LocalMediaStream::toLocalMediaStream):
3986         * mediastream/LocalMediaStream.h: Renamed from Source/WebCore/dom/LocalMediaStream.h.
3987         * mediastream/LocalMediaStream.idl: Renamed from Source/WebCore/dom/LocalMediaStream.idl.
3988         * mediastream/MediaStream.cpp: Renamed from Source/WebCore/dom/MediaStream.cpp.
3989         (WebCore::MediaStream::create):
3990         (WebCore::MediaStream::MediaStream):
3991         (WebCore::MediaStream::~MediaStream):
3992         (WebCore::MediaStream::readyState):
3993         (WebCore::MediaStream::toMediaStream):
3994         (WebCore::MediaStream::streamEnded):
3995         (WebCore::MediaStream::scriptExecutionContext):
3996         (WebCore::MediaStream::eventTargetData):
3997         (WebCore::MediaStream::ensureEventTargetData):
3998         * mediastream/MediaStream.h: Renamed from Source/WebCore/dom/MediaStream.h.
3999         (WebCore::MediaStream::label):
4000         (WebCore::MediaStream::tracks):
4001         (WebCore::MediaStream::descriptor):
4002         (WebCore::MediaStream::refEventTarget):
4003         (WebCore::MediaStream::derefEventTarget):
4004         * mediastream/MediaStream.idl: Renamed from Source/WebCore/dom/MediaStream.idl.
4005         * mediastream/MediaStreamClient.h: Renamed from Source/WebCore/page/MediaStreamClient.h.
4006         (WebCore::MediaStreamClient::~MediaStreamClient):
4007         * mediastream/MediaStreamController.cpp: Renamed from Source/WebCore/page/MediaStreamController.cpp.
4008         (WebCore::MediaStreamController::Request::Request):
4009         (WebCore::MediaStreamController::Request::localId):
4010         (WebCore::MediaStreamController::Request::frameController):
4011         (WebCore::MediaStreamController::MediaStreamController):
4012         (WebCore::MediaStreamController::~MediaStreamController):
4013         (WebCore::MediaStreamController::isClientAvailable):
4014         (WebCore::MediaStreamController::unregisterFrameController):
4015         (WebCore::MediaStreamController::registerRequest):
4016         (WebCore::MediaStreamController::generateStream):
4017         (WebCore::MediaStreamController::streamGenerated):
4018         (WebCore::MediaStreamController::streamGenerationFailed):
4019         * mediastream/MediaStreamController.h: Renamed from Source/WebCore/page/MediaStreamController.h.
4020         * mediastream/MediaStreamEvent.cpp: Renamed from Source/WebCore/p2p/MediaStreamEvent.cpp.
4021         (WebCore::MediaStreamEvent::create):
4022         (WebCore::MediaStreamEvent::MediaStreamEvent):
4023         (WebCore::MediaStreamEvent::~MediaStreamEvent):
4024         (WebCore::MediaStreamEvent::initMediaStreamEvent):
4025         (WebCore::MediaStreamEvent::stream):
4026         * mediastream/MediaStreamEvent.h: Renamed from Source/WebCore/p2p/MediaStreamEvent.h.
4027         (WebCore::MediaStreamEvent::isMediaStreamEvent):
4028         * mediastream/MediaStreamEvent.idl: Renamed from Source/WebCore/p2p/MediaStreamEvent.idl.
4029         * mediastream/MediaStreamFrameController.cpp: Renamed from Source/WebCore/page/MediaStreamFrameController.cpp.
4030         (WebCore::MediaStreamFrameController::Request::~Request):
4031         (WebCore::MediaStreamFrameController::Request::scriptExecutionContext):
4032         (WebCore::MediaStreamFrameController::Request::isGenerateStreamRequest):
4033         (WebCore::MediaStreamFrameController::Request::Request):
4034         (WebCore::MediaStreamFrameController::GenerateStreamRequest::create):
4035         (WebCore::MediaStreamFrameController::GenerateStreamRequest::~GenerateStreamRequest):
4036         (WebCore::MediaStreamFrameController::GenerateStreamRequest::isGenerateStreamRequest):
4037         (WebCore::MediaStreamFrameController::GenerateStreamRequest::abort):
4038         (WebCore::MediaStreamFrameController::GenerateStreamRequest::successCallback):
4039         (WebCore::MediaStreamFrameController::GenerateStreamRequest::errorCallback):
4040         (WebCore::MediaStreamFrameController::GenerateStreamRequest::GenerateStreamRequest):
4041         (WebCore::MediaStreamFrameController::RequestMap::abort):
4042         (WebCore::MediaStreamFrameController::RequestMap::abortAll):
4043         (WebCore::MediaStreamFrameController::MediaStreamFrameController):
4044         (WebCore::MediaStreamFrameController::~MediaStreamFrameController):
4045         (WebCore::MediaStreamFrameController::securityOrigin):
4046         (WebCore::MediaStreamFrameController::scriptExecutionContext):
4047         (WebCore::MediaStreamFrameController::pageController):
4048         (WebCore::MediaStreamFrameController::enterDetachedState):
4049         (WebCore::MediaStreamFrameController::isClientAvailable):
4050         (WebCore::MediaStreamFrameController::disconnectPage):
4051         (WebCore::MediaStreamFrameController::disconnectFrame):
4052         (WebCore::MediaStreamFrameController::transferToNewPage):
4053         (WebCore::MediaStreamFrameController::parseGenerateStreamOptions):
4054         (WebCore::MediaStreamFrameController::generateStream):