AX: cleanup style and naming and code in accessibility search mechanism
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-11-17  Chris Fleizach  <cfleizach@apple.com>
2
3         AX: cleanup style and naming and code in accessibility search mechanism
4         https://bugs.webkit.org/show_bug.cgi?id=72570
5
6         Reviewed by Beth Dakin.
7
8         Cleanup the naming and code style within the element searching mechanism.
9
10         * accessibility/AccessibilityObject.cpp:
11         (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatch):
12         (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
13         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
14         (WebCore::AccessibilityObject::findMatchingObjects):
15         * accessibility/AccessibilityObject.h:
16         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
17         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
18
19 2011-11-17  Julien Chaffraix  <jchaffraix@webkit.org>
20
21         CSS table with 100% width can overflow their containing block
22         https://bugs.webkit.org/show_bug.cgi?id=72180
23
24         Reviewed by David Hyatt.
25
26         Tests: fast/table/table-in-table-percent-width-collapsing-border-quirks-mode.html
27                fast/table/table-in-table-percent-width-collapsing-border.html
28                fast/table/table-in-table-percent-width-quirks-mode.html
29                fast/table/table-in-table-percent-width.html
30
31         After r97555, we would include the borders in a CSS table's logical width even if the 'width'
32         property was a percent. This does not match what Firefox and IE are doing. Thus don't apply
33         this behavior to percent 'width'.
34
35         * rendering/RenderTable.cpp:
36         (WebCore::RenderTable::computeLogicalWidth):
37
38 2011-11-17  Adrienne Walker  <enne@google.com>
39
40         [chromium] Implicitly skip render surfaces that won't be drawn
41         https://bugs.webkit.org/show_bug.cgi?id=71038
42
43         Rather than having redundant checks in three places for how to walk
44         through a render surface list, instead don't add render surfaces that
45         don't need to get rendered to the render surface list.
46
47         Reviewed by James Robinson.
48
49         Covered by existing layout tests and unit tests.
50
51         * platform/graphics/chromium/LayerRendererChromium.cpp:
52         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
53         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
54         (WebCore::CCLayerTreeHost::paintLayerContents):
55         (WebCore::CCLayerTreeHost::updateCompositorResources):
56         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
57         (WebCore::calculateDrawTransformsAndVisibilityInternal):
58
59 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
60
61         [Qt] Layer violation: qt_runtime.cpp accesses QWebElement and QTDRTNode
62         https://bugs.webkit.org/show_bug.cgi?id=72595
63
64         Reviewed by Noam Rosenthal.
65
66         Removed QWebElement and QtDRTNode usage that reached from WebCore into
67         WebKit/qt and replaced it with the ability to register custom JSValue
68         conversion functions. The old code has been moved to WebKit/qt.
69
70         * bridge/qt/qt_instance.cpp:
71         (JSC::Bindings::QtInstance::QtInstance): Remove unnecessary meta type registration
72         (now done in QtWebElementRuntime::initialize in WebKit/qt).
73         * bridge/qt/qt_runtime.cpp:
74         (JSC::Bindings::registerCustomType):
75         (JSC::Bindings::convertValueToQVariant):
76         (JSC::Bindings::convertQVariantToValue):
77         * bridge/qt/qt_runtime.h:
78
79 2011-11-17  Fady Samuel  <fsamuel@chromium.org>
80
81         Pass Aspect Ratio to RenderStyle
82         https://bugs.webkit.org/show_bug.cgi?id=72350
83
84         Reviewed by Ojan Vafai.
85
86         * css/CSSComputedStyleDeclaration.cpp:
87         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
88         * css/CSSStyleApplyProperty.cpp:
89         (WebCore::ApplyPropertyAspectRatio::applyInheritValue):
90         (WebCore::ApplyPropertyAspectRatio::applyInitialValue):
91         (WebCore::ApplyPropertyAspectRatio::applyValue):
92         (WebCore::ApplyPropertyAspectRatio::createHandler):
93         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
94         * css/CSSStyleSelector.cpp:
95         (WebCore::CSSStyleSelector::applyProperty):
96         * css/CSSValue.h:
97         (WebCore::CSSValue::isAspectRatioValue):
98         * rendering/style/RenderStyle.h:
99         (WebCore::InheritedFlags::hasAspectRatio):
100         (WebCore::InheritedFlags::aspectRatio):
101         (WebCore::InheritedFlags::aspectRatioDenominator):
102         (WebCore::InheritedFlags::aspectRatioNumerator):
103         (WebCore::InheritedFlags::setHasAspectRatio):
104         (WebCore::InheritedFlags::setAspectRatioDenominator):
105         (WebCore::InheritedFlags::setAspectRatioNumerator):
106         (WebCore::InheritedFlags::initialHasAspectRatio):
107         (WebCore::InheritedFlags::initialAspectRatioDenominator):
108         (WebCore::InheritedFlags::initialAspectRatioNumerator):
109         * rendering/style/StyleRareNonInheritedData.cpp:
110         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
111         (WebCore::StyleRareNonInheritedData::operator==):
112         * rendering/style/StyleRareNonInheritedData.h:
113
114 2011-11-09  Robert Hogan  <robert@webkit.org>
115
116         CSS 2.1 failure: outline-color-* tests fail
117         https://bugs.webkit.org/show_bug.cgi?id=71931
118
119         Reviewed by Julien Chaffraix.
120
121         WebKit wasn't displaying the top block in these tests because it did not paint the outline
122         of divs with zero size.
123
124         * rendering/RenderObject.cpp:
125         (WebCore::RenderObject::paintOutline): paint the outline even when the block has zero size
126
127 2011-11-17  Sergio Villar Senin  <svillar@igalia.com>
128
129         [GTK] plugins/get-url-notify-with-url-that-fails-to-load.html on bots after r100466
130         https://bugs.webkit.org/show_bug.cgi?id=72613
131
132         Reviewed by Martin Robinson.
133
134         Do not assume that a SoupRequest always exists, it is not
135         generated for example when the provided URL is
136         invalid. ResourceHandle::platformSetDefersLoading was crashing
137         because of that.
138
139         * platform/network/soup/ResourceHandleSoup.cpp:
140         (WebCore::ResourceHandle::platformSetDefersLoading):
141
142 2011-11-17  Vsevolod Vlasov  <vsevik@chromium.org>
143
144         Web Inspector: Remove onlineDetectionEnabled from Preferences
145         https://bugs.webkit.org/show_bug.cgi?id=72617
146
147         Reviewed by Pavel Feldman.
148
149         * inspector/front-end/ApplicationCacheItemsView.js:
150         (WebInspector.ApplicationCacheItemsView):
151         (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems):
152         * inspector/front-end/Settings.js:
153
154 2011-11-17  Ken Buchanan  <kenrb@chromium.org>
155
156         Crash from nested tables with generated content
157         https://bugs.webkit.org/show_bug.cgi?id=68811
158
159         Reviewed by David Hyatt.
160
161         When adding a child to a table that has generated content, this change
162         ensures that we leave alone any generated content renderers that belong
163         to descendants in the tree. They don't need to be touched, and doing so
164         can create confusion about who the content belongs to.
165
166         This patch also simplifies some existing code for finding pseudoelement
167         renderers. 
168
169         * rendering/RenderBlock.cpp:
170         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
171         * rendering/RenderObject.cpp:
172         (WebCore::RenderObject::addChild):
173         (WebCore::RenderObject::isBeforeAfterContentGeneratedByAncestor): Added
174         * rendering/RenderObject.h:
175         (WebCore::RenderObject::findAfterContentRenderer): Deleted
176         (WebCore::RenderObject::findBeforeContentRenderer): Deleted
177         * rendering/RenderObjectChildList.cpp:
178         (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
179         (WebCore::RenderObjectChildList::afterPseudoElementRenderer):
180         * rendering/RenderTable.cpp:
181         (WebCore::RenderTable::addChild):
182         * rendering/RenderTableRow.cpp:
183         (WebCore::RenderTableRow::addChild):
184         * rendering/RenderTableSection.cpp:
185         (WebCore::RenderTableSection::addChild):
186
187 2011-11-17  Patrick Gansterer  <paroga@webkit.org>
188
189         Unreviewed WinCE build fix for r94119.
190
191         MSVC throws multiply defined symbols linker error when using local class in inline function.
192
193         * bindings/js/JSDictionary.h:
194         (WebCore::JSDictionary::IdentitySetter::identitySetter):
195         (WebCore::JSDictionary::tryGetProperty):
196
197 2011-11-17  Eric Carlson  <eric.carlson@apple.com>
198
199         TextTrackList not sorted correctly
200         https://bugs.webkit.org/show_bug.cgi?id=72545
201
202         Reviewed by Darin Adler.
203
204         Test: media/track/track-texttracks.html
205
206         * WebCore.xcodeproj/project.pbxproj: Add TextTrack.h to WebCore private headers because 
207             it is included by HTMLMediaElement.h.
208         * html/LoadableTextTrack.cpp:
209         (WebCore::LoadableTextTrack::LoadableTextTrack): Pass track type to base class constructor.
210         (WebCore::LoadableTextTrack::trackElementIndex): New, return the <track> element's tree order
211             for sorting.
212         * html/LoadableTextTrack.h:
213
214         * html/TextTrack.cpp:
215         (WebCore::TextTrack::TextTrack): Set track type.
216         * html/TextTrack.h:
217         (WebCore::TextTrack::create): Ditto.
218         (WebCore::TextTrack::trackType): Ditto.
219
220         * html/track/TextTrackList.cpp:
221         (TextTrackList::length): Update to deal with two TextTrack vectors.
222         (TextTrackList::item): Ditto.
223         (TextTrackList::append): Ditto.
224         (TextTrackList::remove): Ditto
225         * html/track/TextTrackList.h: Store the two types of TextTracks in separate Vectors to make
226             it simpler to keep them in the correct order.
227
228 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
229
230         [Qt] Layer violation: WebCore::dnsPrefetch uses QWebSettings::globalSettings()
231         https://bugs.webkit.org/show_bug.cgi?id=72596
232
233         Reviewed by Kenneth Rohde Christiansen.
234
235         We don't need to use QWebSettings here, because we now propagate the DNS prefetch
236         setting to WebCore::Settings and the rest of WebCore checks the setting before calling
237         WebCore::prefetchDNS.
238
239         * platform/network/qt/DnsPrefetchHelper.cpp:
240         (WebCore::prefetchDNS): Removed the use of QWebSettings.
241         * platform/network/qt/DnsPrefetchHelper.h: Remove offending qwebsettings.h inclusion.
242
243 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
244
245         [Qt] Layer violation: Image::loadPlatformResource uses QWebSettings::webGraphic
246         https://bugs.webkit.org/show_bug.cgi?id=72594
247
248         Reviewed by Kenneth Rohde Christiansen.
249
250         Move the cache for the resource pixmaps into ImageQt.cpp.
251
252         * platform/graphics/Image.h: Add Qt specific setter for resource pixmaps.
253         * platform/graphics/qt/ImageQt.cpp: Moved resource pixmap hash from qwebsettings.
254         (earlyClearGraphics):
255         (graphics):
256         (loadResourcePixmap):
257         (WebCore::Image::setPlatformResource):
258
259 2011-11-17  Zeno Albisser  <zeno@webkit.org>
260
261         [Qt][WK2] Touch/Mouse events are delivered with wrong coordinates.
262         https://bugs.webkit.org/show_bug.cgi?id=72604
263
264         When using the QtViewportInterationEngine for zooming/panning,
265         no additional scroll offset should be applied to input events
266         by the ScrollView.
267
268         This patch is based on work by Andreas Kling.
269
270         Reviewed by Kenneth Rohde Christiansen.
271
272         * platform/ScrollView.cpp:
273         (WebCore::ScrollView::windowToContents):
274         (WebCore::ScrollView::contentsToWindow):
275
276 2011-11-17  Ben Murdoch  <benm@google.com>
277
278         Unreviewed build fix.
279
280         Fix the Windows builds by adding WorkerEventQueue.cpp|h to the
281         vcproj. Build break was introduced in
282         https://bugs.webkit.org/show_bug.cgi?id=72528
283
284         * WebCore.vcproj/WebCore.vcproj: Add missing files.
285
286 2011-11-17  Mihnea Ovidenie  <mihnea@adobe.com>
287
288         CSS Exclusions: parse the wrap-margin and wrap-padding properties
289         https://bugs.webkit.org/show_bug.cgi?id=71900
290
291         Reviewed by Dean Jackson.
292
293         Tests: fast/exclusions/wrap-margin-parsing.html
294                fast/exclusions/wrap-padding-parsing.html
295
296         * css/CSSComputedStyleDeclaration.cpp:
297         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
298         * css/CSSParser.cpp:
299         (WebCore::isSimpleLengthPropertyID):
300         (WebCore::CSSParser::parseValue):
301         * css/CSSProperty.cpp:
302         (WebCore::CSSProperty::isInheritedProperty):
303         * css/CSSPropertyNames.in:
304         * css/CSSStyleApplyProperty.cpp:
305         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
306         * css/CSSStyleSelector.cpp:
307         (WebCore::CSSStyleSelector::applyProperty):
308         * rendering/style/RenderStyle.cpp:
309         (WebCore::RenderStyle::diff):
310         * rendering/style/RenderStyle.h:
311         (WebCore::InheritedFlags::wrapPadding):
312         (WebCore::InheritedFlags::setWrapPadding):
313         (WebCore::InheritedFlags::initialWrapPadding):
314         (WebCore::InheritedFlags::wrapMargin):
315         (WebCore::InheritedFlags::setWrapMargin):
316         (WebCore::InheritedFlags::initialWrapMargin):
317         * rendering/style/StyleRareNonInheritedData.cpp:
318         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
319         (WebCore::StyleRareNonInheritedData::operator==):
320         * rendering/style/StyleRareNonInheritedData.h:
321
322 2011-11-17  Kenichi Ishibashi  <bashi@chromium.org>
323
324         [chromium] don't call fontconfig twice in complex text path
325         https://bugs.webkit.org/show_bug.cgi?id=38701
326
327         Adds a new API for getting font family. For now, FontCacheLinux calls the new API, but don't use additional properties for compatibility. The old API will be removed when Chromium is ready to use new API.
328
329         Reviewed by Tony Chang.
330
331         No new tests. No behavior changes for now.
332
333         * platform/chromium/PlatformSupport.h: Added FontFamily struct and changed the declaration of getFontFamilyForCharacters().
334         * platform/graphics/chromium/FontCacheLinux.cpp:
335         (WebCore::FontCache::getFontDataForCharacters): Uses new PlatformSupport::getFontFamilyForCharacters().
336         * platform/graphics/chromium/FontPlatformDataLinux.h:
337         (WebCore::FontPlatformData::setFakeBold): Added.
338         (WebCore::FontPlatformData::setFakeItalic): Added.
339
340 2011-11-17  Mario Sanchez Prada  <msanchez@igalia.com>
341
342         [GTK] Consider parent AtkObject in webkit_accessible_get_parent(), if already set
343         https://bugs.webkit.org/show_bug.cgi?id=72525
344
345         Reviewed by Xan Lopez.
346
347         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
348         (webkit_accessible_get_parent): Call to the implementation of
349         atk_object_get_parent in AtkObject class to check whether a parent
350         AtkObject has been previously set, before trying to find one.
351
352 2011-11-17  Pavel Feldman  <pfeldman@google.com>
353
354         Not reviewed: fix IE user agents strings in the inspector.
355
356         * inspector/front-end/SettingsScreen.js:
357         (WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):
358
359 2011-11-16  Kenneth Rohde Christiansen  <kenneth@webkit.org>
360
361         Make use-fixed-layout work reliable
362         https://bugs.webkit.org/show_bug.cgi?id=72511
363
364         Reviewed by Simon Hausmann.
365
366         Always send a viewport update per page load as we depend on that,
367         to reset all viewport handling before doing layout.
368
369         * page/Page.cpp:
370         (WebCore::Page::updateViewportArguments):
371
372 2011-11-16  Alexander Pavlov  <apavlov@chromium.org>
373
374         Web Inspector: inspector follows javascript: hrefs as relative
375         https://bugs.webkit.org/show_bug.cgi?id=72373
376
377         javascript: hrefs should never be linkified for security.
378
379         Reviewed by Yury Semikhatsky.
380
381         * inspector/front-end/ElementsTreeOutline.js:
382         (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
383         * inspector/front-end/ResourceUtils.js:
384         (WebInspector.completeURL):
385
386 2011-11-17  Nikolas Zimmermann  <nzimmermann@rim.com>
387
388         Not reviewed. Fix 32bit builds.
389
390         * platform/ClockGeneric.cpp:
391         (ClockGeneric::now): Use narrowPrecisionToFloat.
392         * rendering/FilterEffectRenderer.cpp:
393         (WebCore::FilterEffectRenderer::build): Use it correctly.
394
395 2011-11-17  Dominic Mazzoni  <dmazzoni@google.com>
396
397         Accessibility: Chromium requires an AX notification when an iframe loads.
398         https://bugs.webkit.org/show_bug.cgi?id=72239
399
400         When a document finishes loading, we were sending an AXLoadComplete if it
401         was the top document. Now, if it's a document in an iframe, send an
402         AXLayoutComplete on the iframe.
403
404         Reviewed by Chris Fleizach.
405
406         Test: accessibility/loading-iframe-sends-notification.html
407
408         * dom/Document.cpp:
409         (WebCore::Document::implicitClose):
410
411 2011-11-16  Mark Rowe  <mrowe@apple.com>
412
413         <http://webkit.org/b/72574> Remove unnecessary use of CarbonCore APIs from Audio code
414
415         Reviewed by Andy Estes.
416
417         * platform/audio/mac/AudioDestinationMac.cpp:
418         (WebCore::AudioDestinationMac::AudioDestinationMac): Switch from using the Carbon Component Manager
419         to using AudioUnit's own component interface.
420         (WebCore::AudioDestinationMac::~AudioDestinationMac): Ditto.
421         * platform/audio/mac/AudioFileReaderMac.cpp:
422         (WebCore::AudioFileReader::AudioFileReader): Remove an unncessary trip through the Carbon File Manager
423         when converting a char* path to a CFURLRef representing the same.
424
425 2011-11-17  Adam Barth  <abarth@webkit.org>
426
427         CSP report-only mode doesn't work from an HTTP header
428         https://bugs.webkit.org/show_bug.cgi?id=71958
429
430         Reviewed by Eric Seidel.
431
432         "It's tested or it's broken." -- Adam Leventhal
433
434         Test: http/tests/security/contentSecurityPolicy/report-only-from-header.php
435
436         * loader/FrameLoader.cpp:
437         (WebCore::FrameLoader::didBeginDocument):
438
439 2011-11-15  Pavel Feldman  <pfeldman@google.com>
440
441         Web Inspector: introduce Debugger domain capabilities concept.
442         https://bugs.webkit.org/show_bug.cgi?id=72393
443
444         Many of the Preferences that we have in Settings.js and override in DevTools.js
445         are really not preferences, but capabilities. Protocol clients should have a way
446         of figuring out whether some capability is present before using it.
447
448         Reviewed by Yury Semikhatsky.
449
450         * bindings/js/ScriptDebugServer.cpp:
451         (WebCore::ScriptDebugServer::canSetScriptSource):
452         * bindings/js/ScriptDebugServer.h:
453         * bindings/v8/ScriptDebugServer.cpp:
454         (WebCore::ScriptDebugServer::canSetScriptSource):
455         * bindings/v8/ScriptDebugServer.h:
456         * inspector/CodeGeneratorInspector.py:
457         * inspector/Inspector.json:
458         * inspector/InspectorDebuggerAgent.cpp:
459         (WebCore::InspectorDebuggerAgent::getCapabilities):
460         * inspector/InspectorDebuggerAgent.h:
461         * inspector/front-end/DebuggerModel.js:
462         (WebInspector.DebuggerModel):
463         (WebInspector.DebuggerModel.prototype.enableDebugger):
464         (WebInspector.DebuggerModel.prototype.canSetScriptSource):
465         * inspector/front-end/DebuggerPresentationModel.js:
466         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
467         * inspector/front-end/Settings.js:
468
469 2011-11-17  Mihnea Ovidenie  <mihnea@adobe.com>
470
471         CSS exclusions: parse the wrap-flow and wrap-through properties
472         https://bugs.webkit.org/show_bug.cgi?id=71904
473
474         Reviewed by Dean Jackson.
475
476         Tests: fast/exclusions/wrap-flow-parsing.html
477                fast/exclusions/wrap-through-parsing.html
478
479         * css/CSSComputedStyleDeclaration.cpp:
480         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
481         * css/CSSParser.cpp:
482         (WebCore::CSSParser::parseValue):
483         * css/CSSPrimitiveValueMappings.h:
484         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
485         (WebCore::CSSPrimitiveValue::operator WrapFlow):
486         (WebCore::CSSPrimitiveValue::operator WrapThrough):
487         * css/CSSProperty.cpp:
488         (WebCore::CSSProperty::isInheritedProperty):
489         * css/CSSPropertyNames.in:
490         * css/CSSStyleSelector.cpp:
491         (WebCore::CSSStyleSelector::applyProperty):
492         * css/CSSValueKeywords.in:
493         * rendering/style/RenderStyle.cpp:
494         (WebCore::RenderStyle::diff):
495         * rendering/style/RenderStyle.h:
496         (WebCore::InheritedFlags::wrapFlow):
497         (WebCore::InheritedFlags::wrapThrough):
498         (WebCore::InheritedFlags::setWrapFlow):
499         (WebCore::InheritedFlags::setWrapThrough):
500         (WebCore::InheritedFlags::initialWrapFlow):
501         (WebCore::InheritedFlags::initialWrapThrough):
502         * rendering/style/RenderStyleConstants.h:
503         * rendering/style/StyleRareNonInheritedData.cpp:
504         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
505         (WebCore::StyleRareNonInheritedData::operator==):
506         * rendering/style/StyleRareNonInheritedData.h:
507
508 2011-11-16  Dean Jackson  <dino@apple.com>
509
510         Implement filter function shorthands
511         https://bugs.webkit.org/show_bug.cgi?id=68475
512
513         Reviewed by Simon Fraser.
514
515         Implement the shorthand functions for filter effects.
516         This includes grayscale, sepia, invert, hue-rotate, saturate,
517         opacity, gamma, drop-shadow and blur. At the moment sharpen
518         and url are not supported.
519
520         CSSParser needed to be updated because it was mistakenly
521         clamping saturation values to [0,1]. Any positive number
522         is allowed so you can produce super-saturated images.
523
524         The biggest change was the API to FilterEffectRenderer. It now
525         builds a list of effects and applies the filter itself.
526
527         Note that the drop-shadow and blur operations don't yet
528         provide accurate results because they produce an output image
529         that is larger than the input. See
530         https://bugs.webkit.org/show_bug.cgi?id=71929
531         https://bugs.webkit.org/show_bug.cgi?id=71930
532
533         While I was there, I fixed a small style issue in
534         CustomFilterOperation.
535
536         Tests: css3/filters/effect-blur.html
537                css3/filters/effect-combined.html
538                css3/filters/effect-drop-shadow.html
539                css3/filters/effect-gamma.html
540                css3/filters/effect-grayscale.html
541                css3/filters/effect-hue-rotate.html
542                css3/filters/effect-invert.html
543                css3/filters/effect-opacity.html
544                css3/filters/effect-saturate.html
545                css3/filters/effect-sepia.html
546
547         * WebCore.xcodeproj/project.pbxproj: Add StyleShader.h to
548         the project (missing from earlier commit).
549         * css/CSSParser.cpp:
550         (WebCore::CSSParser::isValidFilterArgument): Don't clamp
551         saturate to [0,1]
552         * platform/graphics/filters/CustomFilterOperation.h:
553         * rendering/FilterEffectRenderer.cpp:
554         (WebCore::endMatrixRow):
555         (WebCore::lastMatrixRow):
556         (WebCore::FilterEffectRenderer::FilterEffectRenderer):
557         (WebCore::FilterEffectRenderer::inputContext):
558         (WebCore::FilterEffectRenderer::build):
559         (WebCore::FilterEffectRenderer::prepare):
560         (WebCore::FilterEffectRenderer::apply):
561         * rendering/FilterEffectRenderer.h:
562         (WebCore::FilterEffectRenderer::setSourceImageRect):
563         (WebCore::FilterEffectRenderer::output):
564         (WebCore::FilterEffectRenderer::setMaxEffectRects):
565         (WebCore::FilterEffectRenderer::lastEffect):
566         * rendering/RenderLayer.cpp:
567         (WebCore::RenderLayer::paintLayer):
568         (WebCore::RenderLayer::updateOrRemoveFilterEffect):
569         (WebCore::RenderLayer::updateFilterBackingStore):
570
571 2011-11-16  Kentaro Hara  <haraken@chromium.org>
572
573         Remove all custom constructors of Events from JSC
574         https://bugs.webkit.org/show_bug.cgi?id=72577
575
576         Reviewed by Adam Barth.
577
578         - Makes CodeGeneratorJS.pm generate Event constructors
579         if [ConstructorTemplate=Event] IDL is specified.
580         - Removes EventConstructors.h and JSEventConstructors.cpp.
581         - Replaces all JSC custom constructors of Events
582         with the generated code by [ConstructorTemplate=Event] IDL.
583
584         Tests: fast/events/constructors/before-load-event-constructor.html
585                fast/events/constructors/close-event-constructor.html
586                fast/events/constructors/custom-event-constructor.html
587                fast/events/constructors/error-event-constructor.html
588                fast/events/constructors/event-constructors.html
589                fast/events/constructors/hash-change-event-constructor.html
590                fast/events/constructors/message-event-constructor.html
591                fast/events/constructors/overflow-event-constructor.html
592                fast/events/constructors/page-transition-event-constructor.html
593                fast/events/constructors/pop-state-event-constructor.html
594                fast/events/constructors/progress-event-constructor.html
595                fast/events/constructors/track-event-constructor.html
596                fast/events/constructors/webkit-animation-event-constructor.html
597                fast/events/constructors/webkit-transition-event-constructor.html
598
599         * bindings/generic/EventConstructors.h: Removed. This is what we wanted to do in this patch.
600         * bindings/js/JSEventConstructors.cpp: Ditto.
601         * GNUmakefile.list.am: Removed EventConstructors.h and JSEventConstructors.cpp.
602         * Target.pri: Ditto.
603         * UseJSC.cmake: Ditto.
604         * WebCore.gypi: Ditto.
605         * WebCore.vcproj/WebCore.vcproj: Ditto.
606         * WebCore.xcodeproj/project.pbxproj: Ditto.
607         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
608
609         * bindings/scripts/CodeGeneratorJS.pm:
610         (GenerateHeader): Added JSDictionary.h.
611         (GenerateConstructorDeclaration): Added a header for fillXXXXEventInit(...).
612         (GenerateConstructorDefinition): Generates an Event constructor. The generated code is the same as the code that had been written in JSEventConstructors.cpp.
613         (IsConstructable): Judges if a given interface is constructable.
614         (IsConstructorTemplate): Judges if a given interface has a given template, e.g. judges if an interface has [ConstructorTemplate=Event].
615
616         * bindings/scripts/test/TestEventConstructor.idl: Changed 'CustomConstructor=Event' to 'ConstructorTemplate=Event'. We should have changed this in r100108.
617         * bindings/scripts/test/JS/JSTestEventConstructor.cpp: Updated a run-bindings-tests result.
618         (WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
619         (WebCore::fillTestEventConstructorInit):
620         * bindings/scripts/test/JS/JSTestEventConstructor.h: Ditto.
621         * bindings/scripts/test/V8/V8TestEventConstructor.cpp: Ditto.
622         (WebCore::V8TestEventConstructor::constructorCallback):
623         (WebCore::fillTestEventConstructorInit):
624         * bindings/scripts/test/V8/V8TestEventConstructor.h: Ditto.
625
626         * dom/BeforeLoadEvent.idl: In essence, replaced [JSCustomConstructor] IDL with [JSConstructorTemplate=Event] IDL.
627         * dom/CustomEvent.idl: Ditto.
628         * dom/ErrorEvent.idl: Ditto.
629         * dom/Event.idl: Ditto.
630         * dom/HashChangeEvent.idl: Ditto.
631         * dom/MessageEvent.idl: Ditto.
632         * dom/OverflowEvent.idl: Ditto.
633         * dom/PageTransitionEvent.idl: Ditto.
634         * dom/PopStateEvent.idl: Ditto.
635         * dom/ProgressEvent.idl: Ditto.
636         * dom/WebKitAnimationEvent.idl: Ditto.
637         * dom/WebKitTransitionEvent.idl: Ditto.
638         * html/track/TrackEvent.idl: Ditto.
639         * websockets/CloseEvent.idl: Ditto.
640
641 2011-11-16  Dean Jackson  <dino@apple.com>
642
643         Build fix for Apple WebKit due to r100560.
644         When I removed the violating header file it lost the
645         reference to Color.
646
647         No review.
648
649         * platform/graphics/filters/FilterOperation.h:
650
651 2011-11-16  Dean Jackson  <dino@apple.com>
652
653         DropShadowFilterOperation violates platform isolation
654         https://bugs.webkit.org/show_bug.cgi?id=72544
655
656         Reviewed by Simon Fraser.
657
658         Move ShadowData properties into the DropShadowFilterOperation
659         to avoid depending on something outside platform.
660
661         * css/CSSComputedStyleDeclaration.cpp:
662         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
663         * css/CSSStyleSelector.cpp:
664         (WebCore::CSSStyleSelector::createFilterOperations):
665         * platform/graphics/filters/FilterOperation.h:
666         (WebCore::DropShadowFilterOperation::create):
667         (WebCore::DropShadowFilterOperation::x):
668         (WebCore::DropShadowFilterOperation::y):
669         (WebCore::DropShadowFilterOperation::stdDeviation):
670         (WebCore::DropShadowFilterOperation::color):
671         (WebCore::DropShadowFilterOperation::operator==):
672         (WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
673
674 2011-11-16  Adam Bergkvist  <adam.bergkvist@ericsson.com>
675
676         Use a simple page client for user consent in getUserMedia()
677         https://bugs.webkit.org/show_bug.cgi?id=70897
678
679         Reviewed by Adam Barth.
680
681         This is one in a series of patches that update the MediaStream feature
682         to use WebCore platform interfaces.
683
684         Covered by existing tests.
685
686         * GNUmakefile.list.am:
687         * WebCore.gypi:
688         * mediastream/MediaStreamClient.h: Removed.
689         * mediastream/MediaStreamController.cpp: Removed.
690         * mediastream/MediaStreamController.h: Removed.
691         * mediastream/MediaStreamFrameController.cpp: Removed.
692         * mediastream/MediaStreamFrameController.h: Removed.
693         * mediastream/UserMediaClient.h: Added.
694         (WebCore::UserMediaClient::~UserMediaClient):
695         * mediastream/UserMediaRequest.cpp: Added.
696         (WebCore::UserMediaRequest::create):
697         (WebCore::UserMediaRequest::UserMediaRequest):
698         (WebCore::UserMediaRequest::~UserMediaRequest):
699         (WebCore::UserMediaRequest::start):
700         (WebCore::UserMediaRequest::mediaStreamSourcesQueryCompleted):
701         (WebCore::UserMediaRequest::succeed):
702         (WebCore::UserMediaRequest::fail):
703         (WebCore::UserMediaRequest::contextDestroyed):
704         (WebCore::UserMediaRequest::parseOptions):
705         * mediastream/UserMediaRequest.h: Added.
706         (WebCore::UserMediaRequest::audio):
707         (WebCore::UserMediaRequest::video):
708         (WebCore::UserMediaRequest::cameraPreferenceUser):
709         (WebCore::UserMediaRequest::cameraPreferenceEnvironment):
710         (WebCore::UserMediaRequest::successCallback):
711         (WebCore::UserMediaRequest::errorCallback):
712         * page/CallbackTask.h: Removed.
713         * page/Frame.cpp:
714         (WebCore::Frame::Frame):
715         (WebCore::Frame::~Frame):
716         (WebCore::Frame::pageDestroyed):
717         (WebCore::Frame::transferChildFrameToNewDocument):
718         * page/Frame.h:
719         * page/Navigator.cpp:
720         (WebCore::Navigator::webkitGetUserMedia):
721         * page/NavigatorUserMediaErrorCallback.h:
722         * page/Page.cpp:
723         (WebCore::Page::Page):
724         (WebCore::Page::~Page):
725         (WebCore::Page::PageClients::PageClients):
726         * page/Page.h:
727         (WebCore::Page::userMediaClient):
728
729 2011-11-16  David Grogan  <dgrogan@chromium.org>
730
731         instantiate WorkerEventQueue in WorkerContext
732         https://bugs.webkit.org/show_bug.cgi?id=72528
733
734         Reviewed by David Levin.
735
736         No new tests - nothing uses it yet.
737
738         * workers/WorkerContext.cpp:
739         (WebCore::WorkerContext::WorkerContext):
740         Instantiate WorkerEventQueue in InitializerList
741
742         * workers/WorkerEventQueue.h:
743         Don't inherit from RefCounted, WorkerContext has an OwnPtr to it
744
745 2011-11-16  Kentaro Hara  <haraken@chromium.org>
746
747         Unreviewed. Rebaselined run-bindings-tests results.
748
749         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
750         (WebCore::JSTestEventConstructor::JSTestEventConstructor):
751         (WebCore::JSTestEventConstructorOwner::finalize):
752         * bindings/scripts/test/JS/JSTestEventConstructor.h:
753         (WebCore::JSTestEventConstructor::impl):
754         (WebCore::JSTestEventConstructor::releaseImpl):
755         * bindings/scripts/test/JS/JSTestInterface.cpp:
756         (WebCore::JSTestInterface::JSTestInterface):
757         (WebCore::JSTestInterfaceOwner::finalize):
758         * bindings/scripts/test/JS/JSTestInterface.h:
759         (WebCore::JSTestInterface::impl):
760         (WebCore::JSTestInterface::releaseImpl):
761         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
762         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
763         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
764         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
765         (WebCore::JSTestMediaQueryListListener::impl):
766         (WebCore::JSTestMediaQueryListListener::releaseImpl):
767         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
768         (WebCore::JSTestNamedConstructor::JSTestNamedConstructor):
769         (WebCore::JSTestNamedConstructorOwner::finalize):
770         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
771         (WebCore::JSTestNamedConstructor::impl):
772         (WebCore::JSTestNamedConstructor::releaseImpl):
773         * bindings/scripts/test/JS/JSTestObj.cpp:
774         (WebCore::JSTestObj::JSTestObj):
775         (WebCore::JSTestObjOwner::finalize):
776         * bindings/scripts/test/JS/JSTestObj.h:
777         (WebCore::JSTestObj::impl):
778         (WebCore::JSTestObj::releaseImpl):
779         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
780         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
781         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
782         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
783         (WebCore::JSTestSerializedScriptValueInterface::impl):
784         (WebCore::JSTestSerializedScriptValueInterface::releaseImpl):
785
786 2011-11-16  Jay Civelli  <jcivelli@chromium.org>
787
788         Make sure MHTML documents use the domain of the MHTML file.
789         https://bugs.webkit.org/show_bug.cgi?id=72445
790
791         Reviewed by Adam Barth.
792
793         * dom/Document.h:
794         (WebCore::Document::setBaseURL):
795         * loader/FrameLoader.cpp:
796         (WebCore::FrameLoader::receivedFirstData):
797
798 2011-11-16  Julien Chaffraix  <jchaffraix@webkit.org>
799
800         Update supported display list after -webkit-grid and -webkit-inline-grid addition
801         https://bugs.webkit.org/show_bug.cgi?id=72559
802
803         Reviewed by Tony Chang.
804
805         * css/CSSParser.cpp:
806         (WebCore::CSSParser::parseValue): Added the 2 new supported
807         values (forgotten in the previous change).
808
809 2011-11-11  Adrienne Walker  <enne@google.com>
810
811         [chromium] Expose mock scrollbars to window.internals
812         https://bugs.webkit.org/show_bug.cgi?id=72195
813
814         Reviewed by James Robinson.
815
816         * testing/Internals.cpp:
817         (WebCore::Internals::setMockScrollbarsEnabled):
818         * testing/Internals.h:
819         * testing/Internals.idl:
820
821 2011-11-16  Michael Nordman  <michaeln@google.com>
822
823         ApplicationCache manifest should work with any MIME type.
824         https://bugs.webkit.org/show_bug.cgi?id=72082
825
826         Reviewed by Alexey Proskuryakov.
827
828         * loader/appcache/ApplicationCacheGroup.cpp:
829         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Remove the test for a particular type.
830
831 2011-11-16  Daniel Sievers  <sievers@chromium.org>
832
833         [Chromium] Avoid color mask operations for root layers
834         https://bugs.webkit.org/show_bug.cgi?id=72452
835
836         Instead of relying on the combination of clearing the surface and initializing
837         the alpha channel to 1.0 followed by disabling alpha in the color mask when
838         rendering the root layer tiles, add shaders to support writing out opaque layers
839         (alpha channel values written as 1.0).
840
841         Reviewed by James Robinson.
842
843         No functional change made that requires new tests.
844
845         * platform/graphics/chromium/LayerRendererChromium.cpp:
846         (WebCore::LayerRendererChromium::drawLayersInternal):
847         (WebCore::LayerRendererChromium::initializeSharedObjects):
848         (WebCore::LayerRendererChromium::tilerProgramOpaque):
849         (WebCore::LayerRendererChromium::tilerProgramOpaqueAA):
850         (WebCore::LayerRendererChromium::tilerProgramSwizzleOpaque):
851         (WebCore::LayerRendererChromium::tilerProgramSwizzleOpaqueAA):
852         (WebCore::LayerRendererChromium::cleanupSharedObjects):
853         * platform/graphics/chromium/LayerRendererChromium.h:
854         * platform/graphics/chromium/ShaderChromium.cpp:
855         (WebCore::FragmentTexOpaqueBinding::FragmentTexOpaqueBinding):
856         (WebCore::FragmentTexOpaqueBinding::init):
857         (WebCore::FragmentShaderRGBATexOpaque::getShaderString):
858         (WebCore::FragmentShaderRGBATexSwizzleOpaque::getShaderString):
859         (WebCore::FragmentTexClampOpaqueAABinding::FragmentTexClampOpaqueAABinding):
860         (WebCore::FragmentTexClampOpaqueAABinding::init):
861         (WebCore::FragmentShaderRGBATexClampOpaqueAA::getShaderString):
862         (WebCore::FragmentShaderRGBATexClampSwizzleOpaqueAA::getShaderString):
863         * platform/graphics/chromium/ShaderChromium.h:
864         (WebCore::FragmentTexOpaqueBinding::alphaLocation):
865         (WebCore::FragmentTexOpaqueBinding::samplerLocation):
866         (WebCore::FragmentTexClampOpaqueAABinding::alphaLocation):
867         (WebCore::FragmentTexClampOpaqueAABinding::samplerLocation):
868         (WebCore::FragmentTexClampOpaqueAABinding::fragmentTexTransformLocation):
869         (WebCore::FragmentTexClampOpaqueAABinding::edgeLocation):
870         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
871         (WebCore::CCTiledLayerImpl::draw):
872         * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
873
874 2011-11-16  Tim Horton  <timothy_horton@apple.com>
875
876         Implement CSS3 Images cross-fade() image function
877         https://bugs.webkit.org/show_bug.cgi?id=52162
878         <rdar://problem/10209254>
879
880         Reviewed by Simon Fraser.
881
882         Render -webkit-cross-fade. Only cross-fades entirely composed of images will render for now,
883         cross-fades involving generated images are not yet implemented.
884
885         Reorganize GeneratedImage to be the base class for GeneratorGeneratedImage and CrossfadeGeneratedImage.
886
887         Add a pending state to CSSImageGeneratorValue, which is used to enable the pending-images loading
888         mechanism for -webkit-cross-fade's sub-images. Rework the logic in CSSStyleSelector to support pending
889         generated images.
890         
891         Support parsing fractional values for the cross-fade amount (for example, 0.5 = 50%). Clamp cross-fade
892         amount to 0-1 range.
893
894         Tests: css3/images/cross-fade-invalidation.html
895                css3/images/cross-fade-simple.html
896                css3/images/cross-fade-sizing.html
897                css3/images/cross-fade-tiled.html
898
899         * CMakeLists.txt:
900         * GNUmakefile.list.am:
901         * Target.pri:
902         * WebCore.gypi:
903         * WebCore.xcodeproj/project.pbxproj:
904         * css/CSSCanvasValue.h:
905         (WebCore::CSSCanvasValue::isPending):
906         (WebCore::CSSCanvasValue::loadSubimages):
907         * css/CSSCrossfadeValue.cpp:
908         (WebCore::CSSCrossfadeValue::isPending):
909         (WebCore::CSSCrossfadeValue::loadSubimages):
910         (WebCore::subimageIsPending):
911         (WebCore::loadSubimage):
912         (WebCore::cachedImageForCSSValue):
913         (WebCore::CSSCrossfadeValue::image):
914         (WebCore::CSSCrossfadeValue::crossfadeChanged):
915         * css/CSSCrossfadeValue.h:
916         (WebCore::CSSCrossfadeValue::create):
917         (WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
918         (WebCore::CSSCrossfadeValue::fixedSize):
919         (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
920         (WebCore::CSSCrossfadeValue::CrossfadeObserverProxy::CrossfadeObserverProxy):
921         * css/CSSGradientValue.cpp:
922         (WebCore::CSSGradientValue::image):
923         * css/CSSGradientValue.h:
924         (WebCore::CSSGradientValue::isPending):
925         (WebCore::CSSGradientValue::loadSubimages):
926         * css/CSSImageGeneratorValue.cpp:
927         (WebCore::CSSImageGeneratorValue::generatedOrPendingImage):
928         (WebCore::CSSImageGeneratorValue::generatedImage):
929         (WebCore::CSSImageGeneratorValue::isPending):
930         (WebCore::CSSImageGeneratorValue::loadSubimages):
931         * css/CSSImageGeneratorValue.h:
932         * css/CSSParser.cpp:
933         (WebCore::CSSParser::parseCrossfade):
934         * css/CSSStyleSelector.cpp:
935         (WebCore::CSSStyleSelector::styleImage):
936         (WebCore::CSSStyleSelector::generatedOrPendingFromValue):
937         (WebCore::CSSStyleSelector::loadPendingImage):
938         (WebCore::CSSStyleSelector::loadPendingImages):
939         * css/CSSStyleSelector.h:
940         * platform/graphics/BitmapImage.h:
941         * platform/graphics/CrossfadeGeneratedImage.cpp: Added.
942         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
943         (WebCore::CrossfadeGeneratedImage::~CrossfadeGeneratedImage):
944         (WebCore::CrossfadeGeneratedImage::drawCrossfade):
945         (WebCore::CrossfadeGeneratedImage::draw):
946         (WebCore::CrossfadeGeneratedImage::drawPattern):
947         (WebCore::CrossfadeGeneratedImage::imageChanged):
948         * platform/graphics/CrossfadeGeneratedImage.h: Added.
949         (WebCore::CrossfadeGeneratedImage::create):
950         (WebCore::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
951         (WebCore::CrossfadeSubimageObserverProxy::setReady):
952         * platform/graphics/GeneratedImage.h:
953         (WebCore::GeneratedImage::GeneratedImage):
954         * platform/graphics/GeneratorGeneratedImage.cpp: Renamed from Source/WebCore/platform/graphics/GeneratedImage.cpp.
955         (WebCore::GeneratorGeneratedImage::draw):
956         (WebCore::GeneratorGeneratedImage::drawPattern):
957         (WebCore::GeneratedImage::computeIntrinsicDimensions):
958         * platform/graphics/GeneratorGeneratedImage.h: Copied from Source/WebCore/platform/graphics/GeneratedImage.h.
959         (WebCore::GeneratorGeneratedImage::create):
960         (WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
961         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
962         * platform/graphics/Image.h:
963         * platform/graphics/ImageBuffer.h:
964         * rendering/style/StylePendingImage.h:
965         (WebCore::StylePendingImage::create):
966         (WebCore::StylePendingImage::data):
967         (WebCore::StylePendingImage::cssImageValue):
968         (WebCore::StylePendingImage::cssImageGeneratorValue):
969         (WebCore::StylePendingImage::StylePendingImage):
970
971
972 2011-11-16  Dan Bernstein  <mitz@apple.com>
973
974         WebCore part of <rdar://problem/10262242> Add API for paginated display
975         https://bugs.webkit.org/show_bug.cgi?id=72537
976
977         Reviewed by Anders Carlsson.
978
979         * WebCore.exp.in: Exported Page::pageCount().
980         * page/Page.cpp:
981         (WebCore::Page::pageCount): Added this getter.
982         * page/Page.h:
983
984 2011-11-16  Shawn Singh  <shawnsingh@chromium.org>
985
986         [chromium] Track property changes for render surfaces.
987         https://bugs.webkit.org/show_bug.cgi?id=72521
988
989         Reviewed by James Robinson.
990
991         Created CCRenderSurfaceTest for testing.
992
993         * platform/graphics/chromium/LayerRendererChromium.cpp:
994         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
995         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
996         (WebCore::CCLayerImpl::resetPropertyChangedFlagForSubtree):
997         * platform/graphics/chromium/cc/CCLayerImpl.h:
998         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
999         (WebCore::CCRenderSurface::CCRenderSurface):
1000         (WebCore::CCRenderSurface::setClipRect):
1001         (WebCore::CCRenderSurface::setContentRect):
1002         (WebCore::CCRenderSurface::surfacePropertyChanged):
1003         * platform/graphics/chromium/cc/CCRenderSurface.h:
1004         (WebCore::CCRenderSurface::resetPropertyChangedFlag):
1005
1006 2011-11-16  Ben Wells  <benwells@chromium.org>
1007
1008         Seaming on border corners with mixed colour alpha borders
1009         https://bugs.webkit.org/show_bug.cgi?id=70471
1010
1011         Reviewed by Simon Fraser.
1012
1013         Seaming is fixed by antialiasing mitred corners for edges that have alpha and are joining
1014         a side that is of a different color.
1015
1016         Test: fast/borders/border-mixed-alpha.html
1017
1018         * rendering/RenderBoxModelObject.cpp:
1019         (WebCore::colorNeedsAntiAliasAtCorner):
1020         (WebCore::RenderBoxModelObject::paintOneBorderSide):
1021
1022 2011-11-16  Sam Weinig  <sam@webkit.org>
1023
1024         JS wrappers of DOM objects should have no-op constructors
1025         https://bugs.webkit.org/show_bug.cgi?id=72556
1026
1027         Reviewed by Geoffrey Garen.
1028
1029         Stop using a RefPtr to hold DOM objects contained by JavaScript
1030         wrappers and instead use a raw pointer. We were already releasing
1031         the underlying object before the destructor ran (via the finalizer)
1032         so the default behavior of destroying the RefPtr is always unnecessary
1033         busy work. 
1034
1035         * bindings/js/JSCSSValueCustom.cpp:
1036         (WebCore::JSCSSValueOwner::finalize):
1037         * bindings/js/JSNodeCustom.cpp:
1038         (WebCore::JSNodeOwner::finalize):
1039         (WebCore::JSNode::visitChildren):
1040         Call releaseImpl() instead of clearImpl().
1041
1042         * bindings/scripts/CodeGeneratorJS.pm:
1043         (GenerateHeader):
1044         Stop storing m_impl in a RefPtr and instead use a raw pointer. Switch
1045         clearImpl() to releaseImpl(), which explicitly derefs the pointer and
1046         clear it.
1047
1048         (GenerateImplementation):
1049         Use leakPtr() to explicitly adopt the PassRefPtr into the raw pointer.
1050         Change default finalize to call releaseImpl() instead of clearImpl().
1051
1052 2011-11-16  Michael Saboff  <msaboff@apple.com>
1053
1054         Enable 8 Bit Strings in JavaScriptCore
1055         https://bugs.webkit.org/show_bug.cgi?id=71337
1056
1057         This patch turns on 8 bit strings in StringImpl and enables
1058         their use in JavaScriptCore. Some of the changes are to
1059         turn on code that had been staged (Lexer.cpp, Identifier.cpp,
1060         SmallStrings.cpp and some of StringImpl.{h,cpp}).
1061         Other changes are minor fixes to make 8 bit strings work
1062         (UString.h, StringImpl::getData16SlowCase()).
1063         Changed StringBuffer to be a templated class based on character
1064         type.  This change riplled into WebCore code as well.
1065
1066         Reviewed by Geoffrey Garen.
1067
1068         No new tests - Changes in response to refactoring StringBuffer to
1069         be a template on character type.
1070
1071         * css/CSSParser.cpp:
1072         (WebCore::quoteCSSString):
1073         * css/CSSPrimitiveValue.cpp:
1074         (WebCore::formatNumber):
1075         * dom/Document.cpp:
1076         (WebCore::canonicalizedTitle):
1077         * platform/Length.cpp:
1078         (WebCore::newCoordsArray):
1079         * platform/sql/SQLiteStatement.cpp:
1080         (WebCore::SQLiteStatement::prepare):
1081         * platform/text/TextCodecUTF16.cpp:
1082         (WebCore::TextCodecUTF16::decode):
1083         * platform/text/TextCodecUTF8.cpp:
1084         (WebCore::TextCodecUTF8::decode):
1085         * rendering/RenderText.cpp:
1086         (WebCore::makeCapitalized):
1087         * xml/XSLTProcessorLibxslt.cpp:
1088         (WebCore::writeToStringBuilder):
1089
1090 2011-11-16  Alexandre Elias  <aelias@google.com>
1091
1092         [chromium] Improvements for page scale delta during commit
1093         https://bugs.webkit.org/show_bug.cgi?id=72471
1094
1095         Reviewed by James Robinson.
1096
1097         Page scale now follows the same commit flow as scroll position:
1098         the delta is folded into m_pageScale at BFAC time, and a "sent" value
1099         is preserved for temporary use until the commit finishes.
1100
1101         I also merged setPageScaleFactor and setPageScaleFactorLimits into one
1102         function on the impl side.  The reason is that setPageFactor must
1103         be applied after the limits are updated, but on the other hand setting
1104         the limits first may cause an unnecessary clamp of the scale delta.
1105         Merging the methods avoids this bind.
1106
1107         No new tests. (planning to add later: https://bugs.webkit.org/show_bug.cgi?id=71529)
1108
1109         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1110         (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
1111         (WebCore::CCLayerTreeHost::applyScrollAndScale):
1112         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
1113         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1114         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
1115         (WebCore::CCLayerTreeHostImpl::setPageScaleFactorAndLimits):
1116         (WebCore::CCLayerTreeHostImpl::adjustScrollsForPageScaleChange):
1117         (WebCore::CCLayerTreeHostImpl::setScaleDelta):
1118         (WebCore::CCLayerTreeHostImpl::applyScaleDeltaToScrollLayer):
1119         (WebCore::CCLayerTreeHostImpl::scrollRootLayer):
1120         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
1121         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1122
1123 2011-11-16  Joshua Bell  <jsbell@chromium.org>
1124
1125         IndexedDB: Reduce nested key depth threshold, re-enable flaky test
1126         https://bugs.webkit.org/show_bug.cgi?id=72529
1127
1128         Reviewed by Adam Barth.
1129
1130         Drop maximum array key depth from 20k to 2k.
1131
1132         * bindings/v8/IDBBindingUtilities.cpp:
1133
1134 2011-11-16  Nate Chapin  <japhet@chromium.org>
1135
1136         Fix incorrect multipart handling in r100311.
1137         SubresourceLoader::didReceiveData() is getting called
1138         twice, which has unintended side effects.
1139         https://bugs.webkit.org/show_bug.cgi?id=72436
1140
1141         Reviewed by Adam Barth.
1142
1143         http/tests/multipart/invalid-image-data.html should stop
1144         asserting after this.
1145
1146         * loader/SubresourceLoader.cpp:
1147         (WebCore::SubresourceLoader::didReceiveResponse):
1148         (WebCore::SubresourceLoader::didReceiveData):
1149         (WebCore::SubresourceLoader::sendDataToResource):
1150         * loader/SubresourceLoader.h:
1151
1152 2011-11-16  Justin Schuh  <jschuh@chromium.org>
1153
1154         Clear SVG filter client when its node is detached
1155         https://bugs.webkit.org/show_bug.cgi?id=71741
1156
1157         Reviewed by Eric Seidel.
1158
1159         Test: svg/filters/reparent-animated-filter-target.html
1160
1161         * rendering/svg/SVGResourcesCache.cpp:
1162         (WebCore::SVGResourcesCache::clientDestroyed):
1163
1164 2011-11-16  John Bates  <jbates@google.com>
1165
1166         Page/layer flashes after GPU-accelerated CSS transition
1167         https://bugs.webkit.org/show_bug.cgi?id=72343
1168
1169         LayerRendererChromium was resizing the window to 1x1 at initialization.
1170         In some cases, there is no drawLayers before switching back to
1171         software rendering. This left the window resized to 1x1 and the
1172         following software paints would therefore not be visible. This change
1173         moves the reshape call into drawLayers so that it will only be called
1174         if rendering will occur.
1175
1176         Reviewed by James Robinson.
1177
1178         New test: CCLayerTreeHostImplTest.reshapeNotCalledUntilDraw.
1179
1180         * platform/graphics/chromium/LayerRendererChromium.cpp:
1181         (WebCore::LayerRendererChromium::viewportChanged):
1182         (WebCore::LayerRendererChromium::doViewportChanged):
1183         (WebCore::LayerRendererChromium::drawLayersInternal):
1184         * platform/graphics/chromium/LayerRendererChromium.h:
1185
1186 2011-11-16  Alexandre Elias  <aelias@google.com>
1187
1188         [chromium] Add null pointer check in setDeviceScaleFactor
1189         https://bugs.webkit.org/show_bug.cgi?id=72464
1190
1191         Reviewed by James Robinson.
1192
1193         No new tests. (Tiny fix.)
1194
1195         * page/Page.cpp:
1196         (WebCore::Page::setDeviceScaleFactor):
1197
1198 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
1199
1200         Unreviewed, rolling out r100438.
1201         http://trac.webkit.org/changeset/100438
1202         https://bugs.webkit.org/show_bug.cgi?id=72536
1203
1204         Broke unit tests (Requested by jamesr_ on #webkit).
1205
1206         * platform/PlatformScreen.h:
1207         * platform/chromium/PlatformScreenChromium.cpp:
1208         * platform/chromium/PlatformSupport.h:
1209         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1210         (WebCore::CCSettings::CCSettings):
1211         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1212         (WebCore::CCThreadProxy::initializeImplOnImplThread):
1213
1214 2011-11-16  Andy Estes  <aestes@apple.com>
1215
1216         Assertion failure in LayerFlushScheduler::resume() when running some layout tests in WebKitTestRunner
1217         https://bugs.webkit.org/show_bug.cgi?id=72535
1218
1219         Reviewed by Anders Carlsson.
1220
1221         LayerFlushScheduler attempted to use a counter strategy for calls to
1222         suspend() and resume(), which allowed us to assert that these calls
1223         were balanced. Unfortunately it is hard to guarantee this in WebKit2,
1224         where we sometimes try to call suspend() before we've entered
1225         compositing mode (hence before we have a LayerTreeHost and a
1226         LayerFlushScheduler). When we later call resume(), this call ends up
1227         being unbalanced and asserts.
1228
1229         For now, remove the assertions and allow unbalanced calls to suspend()
1230         and resume().
1231
1232         * platform/graphics/ca/LayerFlushScheduler.cpp:
1233         (WebCore::LayerFlushScheduler::suspend):
1234         (WebCore::LayerFlushScheduler::resume):
1235         * platform/graphics/ca/LayerFlushScheduler.h:
1236         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
1237         (WebCore::LayerFlushScheduler::LayerFlushScheduler):
1238         (WebCore::LayerFlushScheduler::runLoopObserverCallback):
1239         (WebCore::LayerFlushScheduler::schedule):
1240
1241 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
1242
1243         Unreviewed, rolling out r100473.
1244         http://trac.webkit.org/changeset/100473
1245         https://bugs.webkit.org/show_bug.cgi?id=72534
1246
1247         "Broke the Mac Build" (Requested by mwenge2 on #webkit).
1248
1249         * CMakeLists.txt:
1250         * GNUmakefile.list.am:
1251         * Target.pri:
1252         * WebCore.gypi:
1253         * rendering/RenderBlock.cpp:
1254         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1255         * rendering/RenderObject.cpp:
1256         (WebCore::RenderObject::createObject):
1257         (WebCore::RenderObject::addChild):
1258         * rendering/RenderObject.h:
1259         * rendering/RenderTable.cpp:
1260         (WebCore::RenderTable::addChild):
1261         * rendering/RenderTable.h:
1262         * rendering/RenderTableCaption.cpp: Removed.
1263         * rendering/RenderTableCaption.h: Removed.
1264
1265 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
1266
1267         Unreviewed, rolling out r100479.
1268         http://trac.webkit.org/changeset/100479
1269         https://bugs.webkit.org/show_bug.cgi?id=72533
1270
1271         "Broke the Mac Build" (Requested by mwenge2 on #webkit).
1272
1273         * WebCore.vcproj/WebCore.vcproj:
1274         * WebCore.xcodeproj/project.pbxproj:
1275         * rendering/RenderingAllInOne.cpp:
1276
1277 2011-11-16  Chris Fleizach  <cfleizach@apple.com>
1278
1279         WebKitTestRunner needs to support accessibility-related DRT APIs
1280         https://bugs.webkit.org/show_bug.cgi?id=42131
1281
1282         Minor changes needed to support AX testing in WKTestRunner.
1283
1284         Reviewed by Beth Dakin.
1285
1286         * WebCore.exp.in:
1287              Expose focusedUIElementForPage so that the WK2 injected bundle can retrieve it.
1288         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1289         (accessibilitySearchKeyForString):
1290             Remove an unncessary assert that was causing issues with the WK2 test run.
1291
1292 2011-11-16  Sergio Villar Senin  <svillar@igalia.com>
1293
1294         [Soup] Somet tests fail with FAIL Unexpected response data received: Wrong method: GET
1295         https://bugs.webkit.org/show_bug.cgi?id=69219
1296
1297         Reviewed by Martin Robinson.
1298
1299         Do not stop appending data to the request body if any of the blob
1300         items to upload is not accesible.
1301
1302         * platform/network/soup/ResourceHandleSoup.cpp:
1303         (WebCore::addEncodedBlobToSoupMessageBody):
1304
1305 2011-11-16  Beth Dakin  <bdakin@apple.com>
1306
1307         https://bugs.webkit.org/show_bug.cgi?id=72400
1308         Scrollbar uiStateTransitionProgress requires tracking the mouse all the time
1309         -and corresponding-
1310         <rdar://problem/10409328>
1311
1312         Reviewed by Darin Adler.
1313
1314         This patch makes it so we track the mouse all the time when we have legacy 
1315         scrollbars (rather than only tracking the mouse when the window is key). When 
1316         we're in that mode, we want to do as little work as possible when handling the 
1317         mouseMoved event so that this extra tracking has little to no performance impact. 
1318         Also, we don't want to change basic behaviors by having normal web content hover 
1319         effects start happening when a window is in the background. So this patch also 
1320         introduces a way to handle a mouseMoved event that will only affect scrollbars.
1321
1322         EventHandler::mouseMoved() and EventHandler::handleMouseEvent() both now take a 
1323         boolean parameter that indicates if we are only updating scrollbars. If that is 
1324         the case, then we make our HitTestRequest ReadOnly, and we return early once 
1325         updateLastScrollbarUnderMouse() is called.
1326         * WebCore.exp.in:
1327         * page/EventHandler.cpp:
1328         (WebCore::EventHandler::mouseMoved):
1329         (WebCore::EventHandler::handleMouseMoveEvent):
1330
1331         In addition to calling Scrollbar::mouseExited() when appropriate, this function 
1332         now calls a new function, Scrollbar::mouseEntered() when appropriate. 
1333         (WebCore::EventHandler::updateLastScrollbarUnderMouse):
1334         * page/EventHandler.h:
1335
1336         Scrollbar::mouseMoved() used to be responsible for calling 
1337         ScrollAnimator::mouseEnteredScrollbar(), but now Scrollbar::mouseEntered() takes 
1338         care of that instead, much like how Scrollbar::mouseExited() takes care of calling 
1339         the animator's exit function.
1340         * platform/Scrollbar.cpp:
1341         (WebCore::Scrollbar::mouseMoved):
1342         (WebCore::Scrollbar::mouseEntered):
1343         * platform/Scrollbar.h:
1344
1345 2011-11-16  Andreas Kling  <kling@webkit.org>
1346
1347         CSSValue: isInheritedValue() doesn't need a dedicated bit.
1348         <http://webkit.org/b/72514>
1349
1350         Reviewed by Antti Koivisto.
1351
1352         Remove CSSValue::m_isInherited and have isInheritedValue() check the
1353         class type instead. There's no compelling reason for CSSInheritedValue
1354         to have a dedicated bit, since nobody subclasses it anyway.
1355
1356         * css/CSSValue.h:
1357         (WebCore::CSSValue::isInheritedValue):
1358         (WebCore::CSSValue::CSSValue):
1359
1360 2011-11-16  Robert Hogan  <robert@webkit.org>
1361
1362         Fix build on Windows and Mac after r100473
1363
1364         Unreviewed, fix build.
1365
1366         * WebCore.vcproj/WebCore.vcproj:
1367         * WebCore.xcodeproj/project.pbxproj:
1368         * rendering/RenderingAllInOne.cpp:
1369
1370 2011-11-16  Philip Rogers  <pdr@google.com>
1371
1372         Remove extra GraphicsContextStateSaver restore() call.
1373         https://bugs.webkit.org/show_bug.cgi?id=72497
1374
1375         Reviewed by Andreas Kling.
1376
1377         * html/canvas/CanvasRenderingContext2D.cpp:
1378         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1379
1380 2011-11-08  Robert Hogan  <robert@webkit.org>
1381
1382         CSS 2.1 failure: border-collapse-offset-002.htm fails
1383         https://bugs.webkit.org/show_bug.cgi?id=71705
1384
1385         Table captions are implemented as children of the table but have a special
1386         requirement to expand to the full width of the table rather than just the 'available'
1387         width, i.e. the full width minus padding and borders.
1388
1389         To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent()
1390         to return the full width of the containing block (i.e. the table) rather than the available width.
1391
1392         Reviewed by Antti Koivisto.
1393
1394         * CMakeLists.txt: Add RenderTableCaption.[cpp|h]
1395         * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h]
1396         * Target.pri: Add RenderTableCaption.[cpp|h]
1397         * WebCore.gypi: Add RenderTableCaption.[cpp|h]
1398         * rendering/RenderBlock.cpp:
1399         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption
1400         * rendering/RenderObject.cpp:
1401         (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h]
1402         (WebCore::RenderObject::addChild): ditto
1403         * rendering/RenderObject.h:
1404         (WebCore::RenderObject::isTableCaption):
1405         * rendering/RenderTable.cpp:
1406         (WebCore::RenderTable::addChild):
1407         * rendering/RenderTable.h:
1408         * rendering/RenderTableCaption.cpp: Added.
1409         (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption
1410         (WebCore::RenderTableCaption::~RenderTableCaption):
1411         (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width.
1412         * rendering/RenderTableCaption.h: Added.
1413         (WebCore::RenderTableCaption::isTableCaption):
1414         (WebCore::toRenderTableCaption):
1415
1416 2011-11-16  Antaryami Pandia  <antaryami.pandia@motorola.com>
1417
1418         [Gtk] display:none has no effect on <option> element.
1419         https://bugs.webkit.org/show_bug.cgi?id=72370
1420
1421         Reviewed by Martin Robinson.
1422
1423         * platform/gtk/GtkPopupMenu.cpp:
1424         (WebCore::GtkPopupMenu::appendItem):
1425         * platform/gtk/PopupMenuGtk.cpp:
1426         (WebCore::PopupMenuGtk::createGtkActionForMenuItem):
1427
1428 2011-11-16  Dan Winship  <danw@gnome.org>
1429
1430         [GTK] Fix platformDefersLoading to handle non-http requests, and
1431         to not use broken-ish libsoup APIs.
1432         https://bugs.webkit.org/show_bug.cgi?id=72227
1433
1434         Reviewed by Martin Robinson.
1435
1436         * platform/network/ResourceHandleInternal.h:
1437         * platform/network/soup/ResourceHandleSoup.cpp:
1438         (WebCore::sendRequestCallback):
1439         (WebCore::startHTTPRequest):
1440         (WebCore::hasBeenSent):
1441         (WebCore::ResourceHandle::platformSetDefersLoading):
1442         (WebCore::readCallback): rather than deferring by using
1443         soup_session_pause_message(), let the read complete, but just don't
1444         process the result until we're no longer deferred.
1445         (WebCore::startNonHTTPRequest): Don't start the request if
1446         it's deferred.
1447
1448 2011-11-16  Vsevolod Vlasov  <vsevik@chromium.org>
1449
1450         Web Inspector: Application cache status should be updated after swapCache().
1451         https://bugs.webkit.org/show_bug.cgi?id=72123
1452
1453         Reviewed by Pavel Feldman.
1454
1455         Application cache view resources and status are now updated after swapCache() call.
1456         Refresh button removed from application cache view.
1457         Application cache inspector tests are moved to their own folder.
1458
1459         Tests: http/tests/inspector/appcache/appcache-iframe-manifests.html
1460                http/tests/inspector/appcache/appcache-manifest-with-non-existing-file.html
1461                http/tests/inspector/appcache/appcache-swap.html
1462
1463         * inspector/front-end/ApplicationCacheItemsView.js:
1464         (WebInspector.ApplicationCacheItemsView):
1465         (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems):
1466         (WebInspector.ApplicationCacheItemsView.prototype.wasShown):
1467         (WebInspector.ApplicationCacheItemsView.prototype._maybeUpdate):
1468         (WebInspector.ApplicationCacheItemsView.prototype._markDirty):
1469         (WebInspector.ApplicationCacheItemsView.prototype.updateStatus):
1470         (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
1471         (WebInspector.ApplicationCacheItemsView.prototype._deleteCallback):
1472         * loader/appcache/ApplicationCacheGroup.cpp:
1473         (WebCore::ApplicationCacheGroup::setNewestCache):
1474         (WebCore::ApplicationCacheGroup::makeObsolete):
1475         (WebCore::ApplicationCacheGroup::setUpdateStatus):
1476         * loader/appcache/ApplicationCacheHost.cpp:
1477         (WebCore::ApplicationCacheHost::notifyDOMApplicationCache):
1478         (WebCore::ApplicationCacheHost::swapCache):
1479
1480 2011-11-16  Eric Carlson  <eric.carlson@apple.com>
1481
1482         addTrack() must throw an exception if 'kind' is unknown
1483         https://bugs.webkit.org/show_bug.cgi?id=71915
1484
1485         Reviewed by Philippe Normand.
1486
1487         Tests: media/track/track-addtrack-kind.html
1488                media/track/track-kind.html
1489
1490         * html/HTMLMediaElement.cpp:
1491         (WebCore::HTMLMediaElement::textTrackKindChanged): New. Will be implemented for 62885.
1492         (WebCore::HTMLMediaElement::addTrack): Throw if  'kind' is not a known value.
1493         (WebCore::HTMLMediaElement::addTextTrack): Call textTracks(), it will allocate the track
1494             list object if necessary.
1495         (WebCore::HTMLMediaElement::textTracks): Never return NULL, a TextTrackList with no tracks
1496             is allowed.
1497         * html/HTMLMediaElement.h:
1498         (WebCore::HTMLMediaElement::addTrack): Add variants to deal with optional parameters plus
1499             a mandatory ExceptionCode parameter.
1500         * html/HTMLMediaElement.idl: addTrack can generate an exception.
1501
1502         * html/HTMLTrackElement.cpp:
1503         (WebCore::HTMLTrackElement::attributeChanged): kind, label, and srclang attribute changes should
1504             percolate down the the TextTrack.
1505         (WebCore::HTMLTrackElement::kind): Return the TextTrack kind because it is not necessarily the
1506             same as the attribute value.
1507         (WebCore::HTMLTrackElement::ensureTrack): Only pass legal 'kind' keywords to create a TextTrack.
1508         (WebCore::HTMLTrackElement::textTrackKindChanged): Notify parent element, if any.
1509         * html/HTMLTrackElement.h:
1510
1511         * html/TextTrack.cpp:
1512         (WebCore::TextTrack::subtitlesKeyword): New, return legal kind attribute value.
1513         (WebCore::TextTrack::captionsKeyword): Ditto.
1514         (WebCore::TextTrack::descriptionsKeyword): Ditto.
1515         (WebCore::TextTrack::chaptersKeyword): Ditto.
1516         (WebCore::TextTrack::metadataKeyword): Ditto.
1517         (WebCore::TextTrack::TextTrack): Call setKind to make sure m_kind is always set to legal value.
1518         (WebCore::TextTrack::isValidKindKeyword): New, validate 'kind' value.
1519         (WebCore::TextTrack::setKind): Only allow legal values.
1520         * html/TextTrack.h:
1521         (WebCore::TextTrack::kind):
1522         (WebCore::TextTrack::label):
1523         (WebCore::TextTrack::setLabel):
1524         (WebCore::TextTrack::language):
1525         (WebCore::TextTrack::setLanguage):
1526         (WebCore::TextTrack::readyState):
1527         (WebCore::TextTrack::mode):
1528
1529 2011-11-16  Andreas Kling  <kling@webkit.org>
1530
1531         CSSValue: Clean up initial value construction.
1532         <http://webkit.org/b/72502>
1533
1534         Reviewed by Antti Koivisto.
1535
1536         Instead of determining whether a given CSSInitialValue is 'implicit' or not by
1537         querying the CSSValue::ClassType (InitialClass vs. ImplicitInitialClass),
1538         add a protected CSSValue member and set it from the CSSInitialValue constructor.
1539
1540         Also get rid of the CSSValue::m_isInitial bit since we can now replace the
1541         checks by classType() == InitialClass.
1542
1543         No new tests, this is a cleanup.
1544
1545         * css/CSSInitialValue.h:
1546         (WebCore::CSSInitialValue::CSSInitialValue):
1547
1548             Poke 'implicit' constructor argument into CSSValue::m_isImplicit.
1549
1550         * css/CSSValue.cpp:
1551         (WebCore::CSSValue::cssText):
1552         (WebCore::CSSValue::destroy):
1553
1554             Remove ImplicitInitialClass cases.
1555
1556         * css/CSSValue.h:
1557         (WebCore::CSSValue::isImplicitInitialValue):
1558         (WebCore::CSSValue::isInitialValue):
1559         (WebCore::CSSValue::CSSValue):
1560
1561 2011-11-16  Antaryami Pandia  <antaryami.pandia@motorola.com>
1562
1563         Remove unnecessary if check from RenderListBox::paintItemForeground.
1564         https://bugs.webkit.org/show_bug.cgi?id=72488
1565
1566         Reviewed by Andreas Kling.
1567
1568         * rendering/RenderListBox.cpp:
1569         (WebCore::RenderListBox::paintItemForeground):
1570
1571 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
1572
1573         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
1574
1575         Reviewed by Tor Arne Vestbø.
1576
1577         * Target.pri: Eliminate duplicated symbol stuff that lives now in default_post.prf.
1578
1579 2011-11-16  Iain Merrick  <husky@google.com>
1580
1581         [chromium] Pass screen refresh rate into compositor.
1582         https://bugs.webkit.org/show_bug.cgi?id=71040
1583
1584         Reviewed by Tony Gentilcore.
1585
1586         * platform/PlatformScreen.h:
1587         * platform/chromium/PlatformScreenChromium.cpp:
1588         (WebCore::screenRefreshRate):
1589         * platform/chromium/PlatformSupport.h:
1590         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1591         (WebCore::CCSettings::CCSettings):
1592         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1593         (WebCore::CCThreadProxy::initializeImplOnImplThread):
1594
1595 2011-11-15  Andrey Kosyakov  <caseq@chromium.org>
1596
1597         Web Inspector: [Extensions API] drop ExtensionSidebarPane.onUpdated, use callbacks instead
1598         https://bugs.webkit.org/show_bug.cgi?id=72388
1599
1600         Reviewed by Pavel Feldman.
1601
1602         Tests: inspector/extensions/extensions-panel.html
1603                inspector/extensions/extensions-sidebar.html
1604
1605         - fire ExtensionSidebarPane.on{Hidden,Shown} for non-iframe content (experssions/objects);
1606         - drop ExtensionsSidebarPane.onUpdated, provide callback for setObject()/setExpression() instead;
1607         - fix an exception when a page is replaced with object/expression.
1608
1609          inspector/front-end/ExtensionAPI.js:
1610         (injectedExtensionAPI.ExtensionSidebarPaneImpl):
1611         (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
1612         (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setObject):
1613         * inspector/front-end/ExtensionPanel.js:
1614         (WebInspector.ExtensionNotifierView):
1615         (WebInspector.ExtensionNotifierView.prototype.wasShown):
1616         (WebInspector.ExtensionNotifierView.prototype.willHide):
1617         (WebInspector.ExtensionSidebarPane.prototype.setObject):
1618         (WebInspector.ExtensionSidebarPane.prototype.setExpression):
1619         (WebInspector.ExtensionSidebarPane.prototype.setPage):
1620         (WebInspector.ExtensionSidebarPane.prototype._onEvaluate):
1621         (WebInspector.ExtensionSidebarPane.prototype._makeObjectPropertiesView):
1622         (WebInspector.ExtensionSidebarPane.prototype._setObject):
1623         * inspector/front-end/ExtensionServer.js:
1624         (WebInspector.ExtensionServer.prototype._onSetSidebarContent.callback):
1625         (WebInspector.ExtensionServer.prototype._onSetSidebarContent):
1626         (WebInspector.ExtensionServer.prototype._dispatchCallback):
1627         * inspector/front-end/View.js:
1628         (WebInspector.View.prototype.detach):
1629
1630 2011-11-16  Simon Hausmann  <simon.hausmann@nokia.com>
1631
1632         Unreviewed, rolling out r100266.
1633         http://trac.webkit.org/changeset/100266
1634
1635         Broke WTR.
1636
1637         * Target.pri:
1638
1639 2011-11-16  Per-Erik Brodin  <per-erik.brodin@ericsson.com>
1640
1641         [GTK] fast/events/event-creation.html fails creating MediaStreamEvent
1642         https://bugs.webkit.org/show_bug.cgi?id=70720
1643
1644         Reviewed by Philippe Normand.
1645
1646         Added missing overriding of Event::interfaceName()
1647
1648         * mediastream/MediaStreamEvent.cpp:
1649         (WebCore::MediaStreamEvent::stream): Changed return value to raw pointer.
1650         (WebCore::MediaStreamEvent::interfaceName): Added back from r98044.
1651         * mediastream/MediaStreamEvent.h:
1652         * mediastream/MediaStreamEvent.idl: Changed module name to "events".
1653
1654 2011-11-16  Mario Sanchez Prada  <msanchez@igalia.com>
1655
1656         [GTK] Use GQuark's in the ATK wrapper to get and set arbitrary data
1657         https://bugs.webkit.org/show_bug.cgi?id=72394
1658
1659         Reviewed by Martin Robinson.
1660
1661         No new functionality, no new tests needed.
1662
1663         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1664         (webkit_accessible_class_init): Initialize GQuarks.
1665         (getGailTextUtilForAtk): Use gailTextUtilQuark.
1666         (getPangoLayoutForAtk): Remove unused call to
1667         g_object_set_data_full, since that data is no used anywhere.
1668         (webkitAccessibleHyperlinkImplGetHyperlink): Use hyperlinkObjectQuark.
1669
1670 2011-11-15  Alexandru Chiculita  <achicu@adobe.com>
1671
1672         [CSSShaders] Implement the style cached resources and computed style for the shader urls
1673         https://bugs.webkit.org/show_bug.cgi?id=72378
1674
1675         Reviewed by Dean Jackson.
1676
1677         Test: css3/filters/custom-filter-property-computed-style.html
1678
1679         * GNUmakefile.list.am:
1680         * Target.pri:
1681         * WebCore.gypi:
1682         * WebCore.vcproj/WebCore.vcproj:
1683         * WebCore.xcodeproj/project.pbxproj:
1684         * css/CSSComputedStyleDeclaration.cpp:
1685         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
1686         * css/CSSStyleSelector.cpp:
1687         (WebCore::CSSStyleSelector::CSSStyleSelector):
1688         (WebCore::CSSStyleSelector::styleForKeyframe):
1689         (WebCore::CSSStyleSelector::pseudoStyleForElement):
1690         (WebCore::CSSStyleSelector::styleForPage):
1691         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
1692         (WebCore::CSSStyleSelector::styleShader):
1693         (WebCore::CSSStyleSelector::cachedOrPendingStyleShaderFromValue):
1694         (WebCore::CSSStyleSelector::loadPendingShaders):
1695         (WebCore::CSSStyleSelector::createCustomFilterOperation):
1696         (WebCore::CSSStyleSelector::createFilterOperations):
1697         * css/CSSStyleSelector.h:
1698         * css/WebKitCSSShaderValue.cpp:
1699         (WebCore::WebKitCSSShaderValue::WebKitCSSShaderValue):
1700         (WebCore::WebKitCSSShaderValue::~WebKitCSSShaderValue):
1701         (WebCore::WebKitCSSShaderValue::cachedShader):
1702         (WebCore::WebKitCSSShaderValue::cachedOrPendingShader):
1703         * css/WebKitCSSShaderValue.h:
1704         * loader/cache/CachedResource.cpp:
1705         (WebCore::defaultPriorityForResourceType):
1706         * loader/cache/CachedResource.h:
1707         * loader/cache/CachedResourceLoader.cpp:
1708         (WebCore::createResource):
1709         (WebCore::CachedResourceLoader::requestShader):
1710         (WebCore::CachedResourceLoader::checkInsecureContent):
1711         (WebCore::CachedResourceLoader::canRequest):
1712         * loader/cache/CachedResourceLoader.h:
1713         * loader/cache/CachedShader.cpp:
1714         (WebCore::CachedShader::CachedShader):
1715         (WebCore::CachedShader::~CachedShader):
1716         * loader/cache/CachedShader.h:
1717         * platform/graphics/filters/CustomFilterOperation.h:
1718         * rendering/style/RenderStyle.h:
1719         (WebCore::InheritedFlags::filter):
1720         * rendering/style/StyleCachedShader.cpp:
1721         (WebCore::StyleCachedShader::StyleCachedShader):
1722         (WebCore::StyleCachedShader::cssValue):
1723         * rendering/style/StyleCachedShader.h:
1724         (WebCore::StyleCachedShader::create):
1725         * rendering/style/StylePendingShader.h:
1726         (WebCore::StylePendingShader::create):
1727         (WebCore::StylePendingShader::cssValue):
1728         (WebCore::StylePendingShader::cssShaderValue):
1729         (WebCore::StylePendingShader::StylePendingShader):
1730         * rendering/style/StyleShader.h:
1731         (WebCore::StyleShader::~StyleShader):
1732         (WebCore::StyleShader::isCachedShader):
1733         (WebCore::StyleShader::isPendingShader):
1734         (WebCore::StyleShader::StyleShader):
1735
1736 2011-11-15  Sergio Villar Senin  <svillar@igalia.com>
1737
1738         [WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
1739         https://bugs.webkit.org/show_bug.cgi?id=69510
1740
1741         Reviewed by Simon Fraser.
1742
1743         End the current transparency layer before early returning from
1744         paintMask() when there is a maskBoxImage which is still being
1745         loaded. This will balance the previous call to
1746         beginTransparencyLayer().
1747
1748         * rendering/InlineFlowBox.cpp:
1749         (WebCore::InlineFlowBox::paintMask):
1750
1751 2011-11-15  Darin Adler  <darin@apple.com>
1752
1753         Incorrect type checks in RenderTheme media code
1754         https://bugs.webkit.org/show_bug.cgi?id=72184
1755
1756         Reviewed by Eric Carlson.
1757
1758         No tests added. Ideally this patch should be revised to add tests!
1759
1760         * accessibility/AccessibilityMediaControls.cpp:
1761         (WebCore::AccessibilityMediaControl::create): Use mediaControlElementType.
1762         (WebCore::AccessibilityMediaControl::controlType): Ditto.
1763         (WebCore::AccessibilityMediaTimeline::valueDescription): Use early return
1764         rather than an assertion to check type of input element.
1765
1766         * html/shadow/MediaControlElements.cpp:
1767         (WebCore::mediaControlElementType): Added. A type-safe way to get the
1768         media control element type after checking isMediaControlElement but with
1769         no other assumptions.
1770         * html/shadow/MediaControlElements.h: Added mediaControlElementType.
1771
1772         * platform/efl/RenderThemeEfl.cpp:
1773         (WebCore::RenderThemeEfl::paintMediaPlayButton): Use mediaControlElementType.
1774         (WebCore::RenderThemeEfl::paintMediaSeekBackButton): Use mediaControlElementType.
1775         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton): Use mediaControlElementType.
1776         * platform/gtk/RenderThemeGtk.cpp:
1777         (WebCore::RenderThemeGtk::paintMediaPlayButton): Check isMediaControlElement and
1778         use mediaControlElementType.
1779         * rendering/RenderThemeMac.mm:
1780         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto. Also remove uneeded
1781         redundant null check.
1782         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto.
1783         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton): Ditto.
1784
1785 2011-11-15  Jeff Timanus  <twiz@chromium.org>
1786
1787         [chromium] During tear down, prevent the WebGLLayerChromium instance from attempting to stop a timer for a NULL context.
1788         https://bugs.webkit.org/show_bug.cgi?id=72423
1789
1790         Reviewed by Kenneth Russell.
1791
1792         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1793         (WebCore::WebGLLayerChromium::setDrawingBuffer):
1794
1795 2011-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
1796
1797         Rebaseline generated WebCore bindings
1798
1799         Unreviewed build fix
1800
1801         No new tests.
1802
1803         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1804         (WebCore::isObservable):
1805         (WebCore::JSTestEventConstructorOwner::isReachableFromOpaqueRoots):
1806         (WebCore::JSTestEventConstructorOwner::finalize):
1807         * bindings/scripts/test/JS/JSTestEventConstructor.h:
1808         (WebCore::JSTestEventConstructor::clearImpl):
1809         (WebCore::wrapperOwner):
1810         (WebCore::wrapperContext):
1811         * bindings/scripts/test/JS/JSTestInterface.cpp:
1812         (WebCore::JSTestInterfaceOwner::finalize):
1813         * bindings/scripts/test/JS/JSTestInterface.h:
1814         (WebCore::JSTestInterface::clearImpl):
1815         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1816         (WebCore::isObservable):
1817         (WebCore::JSTestMediaQueryListListenerOwner::isReachableFromOpaqueRoots):
1818         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
1819         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1820         (WebCore::JSTestMediaQueryListListener::clearImpl):
1821         (WebCore::wrapperOwner):
1822         (WebCore::wrapperContext):
1823         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1824         (WebCore::JSTestNamedConstructorOwner::finalize):
1825         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
1826         (WebCore::JSTestNamedConstructor::clearImpl):
1827         * bindings/scripts/test/JS/JSTestObj.cpp:
1828         (WebCore::isObservable):
1829         (WebCore::JSTestObjOwner::isReachableFromOpaqueRoots):
1830         (WebCore::JSTestObjOwner::finalize):
1831         * bindings/scripts/test/JS/JSTestObj.h:
1832         (WebCore::JSTestObj::clearImpl):
1833         (WebCore::wrapperOwner):
1834         (WebCore::wrapperContext):
1835         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1836         (WebCore::isObservable):
1837         (WebCore::JSTestSerializedScriptValueInterfaceOwner::isReachableFromOpaqueRoots):
1838         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
1839         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1840         (WebCore::JSTestSerializedScriptValueInterface::clearImpl):
1841         (WebCore::wrapperOwner):
1842         (WebCore::wrapperContext):
1843
1844 2011-11-15  Jeff Timanus  <twiz@chromium.org>
1845
1846         Patch removing duplicated code in the setup of the DrawingBuffer used
1847         to host the back-buffer for WebGL contents.
1848         https://bugs.webkit.org/show_bug.cgi?id=72327
1849
1850         Reviewed by Kenneth Russell.
1851
1852         * html/canvas/WebGLRenderingContext.cpp:
1853         (WebCore::WebGLRenderingContext::copyTexImage2D):
1854         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
1855         (WebCore::WebGLRenderingContext::readPixels):
1856
1857 2011-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
1858
1859         JS DOM wrappers depend on destructor to deref impl RefPtrs
1860         https://bugs.webkit.org/show_bug.cgi?id=72341
1861
1862         Reviewed by Sam Weinig.
1863
1864         No new tests.
1865
1866         Added clearing of impl RefPtrs to JS DOM wrapper nodes and removed the default 
1867         wrapperOwner function in favor of generating all WeakHandleOwners and wrapperOwner functions.
1868
1869         * bindings/js/JSCSSValueCustom.cpp:
1870         (WebCore::JSCSSValueOwner::finalize):
1871         * bindings/js/JSDOMBinding.h:
1872         * bindings/js/JSNodeCustom.cpp:
1873         (WebCore::JSNodeOwner::finalize):
1874         * bindings/scripts/CodeGeneratorJS.pm:
1875         (GenerateHeader):
1876         (GenerateImplementation):
1877
1878 2011-11-15  Joseph Pecoraro  <pecoraro@apple.com>
1879
1880         Web Inspector: Share Highlight Code for Drawing Outlined Quad
1881         https://bugs.webkit.org/show_bug.cgi?id=72451
1882
1883         Reviewed by Timothy Hatcher.
1884
1885         * inspector/DOMNodeHighlighter.cpp:
1886
1887 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1888
1889         Unreviewed, rolling out r100308.
1890         http://trac.webkit.org/changeset/100308
1891         https://bugs.webkit.org/show_bug.cgi?id=72450
1892
1893         Introduces WebGL conformance test regressions. (Requested by
1894         twiz on #webkit).
1895
1896         * html/canvas/WebGLRenderingContext.cpp:
1897         (WebCore::WebGLRenderingContext::copyTexImage2D):
1898         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
1899         (WebCore::WebGLRenderingContext::readPixels):
1900
1901 2011-11-15  James Robinson  <jamesr@chromium.org>
1902
1903         Rollout http://trac.webkit.org/changeset/99813, caused some crashes in
1904         TiledLayerChromium::updateCompositorResources()
1905
1906         * WebCore.gypi:
1907         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp: Removed.
1908         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h: Removed.
1909         * platform/graphics/chromium/CanvasLayerTextureUpdater.cpp: Removed.
1910         * platform/graphics/chromium/CanvasLayerTextureUpdater.h: Removed.
1911         * platform/graphics/chromium/ContentLayerChromium.cpp:
1912         (WebCore::ContentLayerChromium::createTextureUpdater):
1913         * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h: Removed.
1914         * platform/graphics/chromium/ImageLayerChromium.cpp:
1915         (WebCore::ImageLayerTextureUpdater::prepareToUpdate):
1916         * platform/graphics/chromium/LayerRendererChromium.cpp:
1917         * platform/graphics/chromium/LayerTextureUpdater.h:
1918         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp.
1919         (WebCore::FrameBuffer::FrameBuffer::FrameBuffer):
1920         (WebCore::FrameBuffer::FrameBuffer::~FrameBuffer):
1921         (WebCore::FrameBuffer::FrameBuffer::initialize):
1922         (WebCore::LayerTextureUpdaterCanvas::LayerTextureUpdaterCanvas):
1923         (WebCore::LayerTextureUpdaterCanvas::paintContents):
1924         (WebCore::LayerTextureUpdaterBitmap::create):
1925         (WebCore::LayerTextureUpdaterBitmap::LayerTextureUpdaterBitmap):
1926         (WebCore::LayerTextureUpdaterBitmap::sampledTexelFormat):
1927         (WebCore::LayerTextureUpdaterBitmap::prepareToUpdate):
1928         (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
1929         (WebCore::LayerTextureUpdaterSkPicture::create):
1930         (WebCore::LayerTextureUpdaterSkPicture::LayerTextureUpdaterSkPicture):
1931         (WebCore::LayerTextureUpdaterSkPicture::~LayerTextureUpdaterSkPicture):
1932         (WebCore::LayerTextureUpdaterSkPicture::sampledTexelFormat):
1933         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
1934         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
1935         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h: Added.
1936         (WebCore::LayerTextureUpdaterCanvas::contentRect):
1937         (WebCore::LayerTextureUpdaterBitmap::orientation):
1938         (WebCore::LayerTextureUpdaterSkPicture::orientation):
1939         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp: Removed.
1940         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h: Removed.
1941         * platform/graphics/chromium/TiledLayerChromium.cpp:
1942         (WebCore::UpdatableTile::UpdatableTile):
1943         (WebCore::UpdatableTile::texture):
1944         (WebCore::TiledLayerChromium::updateCompositorResources):
1945         (WebCore::TiledLayerChromium::pushPropertiesTo):
1946         (WebCore::TiledLayerChromium::createTile):
1947         (WebCore::TiledLayerChromium::protectTileTextures):
1948         (WebCore::TiledLayerChromium::prepareToUpdate):
1949         * platform/graphics/chromium/cc/CCTextureUpdater.cpp:
1950         (WebCore::CCTextureUpdater::append):
1951         (WebCore::CCTextureUpdater::update):
1952         * platform/graphics/chromium/cc/CCTextureUpdater.h:
1953
1954 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
1955
1956         Add the needed plumbing to parse display: -webkit-inline-grid
1957         https://bugs.webkit.org/show_bug.cgi?id=72438
1958
1959         Reviewed by Tony Chang.
1960
1961         Test: fast/css-grid-layout/display-grid-set-get.html
1962
1963         Added the needed constants and plugged everything together.
1964         Again we treat display: -webkit-inline-grid like display: none
1965         for the moment.
1966
1967         * css/CSSParser.cpp:
1968         (WebCore::CSSParser::parseValue):
1969         * css/CSSPrimitiveValueMappings.h:
1970         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1971         * css/CSSValueKeywords.in:
1972         * rendering/RenderObject.cpp:
1973         (WebCore::RenderObject::createObject):
1974         * rendering/style/RenderStyleConstants.h:
1975
1976 2011-11-15  W. James MacLean  <wjmaclean@chromium.org>
1977
1978         [chromium] Move setVisibleRect() calls into calculateDrawTransformAndVisibility()
1979         https://bugs.webkit.org/show_bug.cgi?id=72162
1980
1981         Reviewed by Kenneth Russell.
1982
1983         Refactoring of existing functionality, so uses existing tests.
1984
1985         * platform/graphics/chromium/LayerRendererChromium.cpp:
1986         (WebCore::LayerRendererChromium::drawLayer):
1987         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1988         (WebCore::paintContentsIfDirty):
1989         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
1990         (WebCore::CCLayerTreeHost::paintLayerContents):
1991         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
1992         (WebCore::walkLayersAndCalculateVisibleLayerRects):
1993         (WebCore::CCLayerTreeHostCommon::calculateDrawTransformsAndVisibility):
1994
1995 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1996
1997         Unreviewed, rolling out r100340.
1998         http://trac.webkit.org/changeset/100340
1999         https://bugs.webkit.org/show_bug.cgi?id=72448
2000
2001         Caused assertion failure in Win dbg canary. (Requested by
2002         pkasting on #webkit).
2003
2004         * platform/graphics/chromium/LayerRendererChromium.cpp:
2005         (WebCore::LayerRendererChromium::LayerRendererChromium):
2006         (WebCore::LayerRendererChromium::viewportChanged):
2007         (WebCore::LayerRendererChromium::drawLayersInternal):
2008         * platform/graphics/chromium/LayerRendererChromium.h:
2009
2010 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
2011
2012         Switch table indexing to unsigned
2013         https://bugs.webkit.org/show_bug.cgi?id=72083
2014
2015         Reviewed by Darin Adler.
2016
2017         No expected change in behavior.
2018
2019         All of the code is now using unsigned for indexing!
2020
2021         * rendering/FixedTableLayout.cpp:
2022         (WebCore::FixedTableLayout::layout):
2023         * rendering/RenderTable.cpp:
2024         (WebCore::RenderTable::colElement):
2025         (WebCore::RenderTable::cellAbove):
2026         * rendering/RenderTableSection.cpp:
2027         (WebCore::RenderTableSection::splitColumn):
2028         Added some ASSERTs to make sure we don't underflow. Looking at how
2029         the different variables are populated, they should not be reached.
2030
2031         * rendering/RenderTableCell.cpp:
2032         (WebCore::RenderTableCell::colSpan):
2033         (WebCore::RenderTableCell::rowSpan):
2034         Those 2 functions promotes HTMLTableCellElement's int to unsigned
2035         which should be fine as we make sure their are positive. Also HTML5
2036         makes those 2 fields "unsigned long" which goes in the same direction.
2037
2038         * rendering/AutoTableLayout.cpp:
2039         (WebCore::AutoTableLayout::layout):
2040         * rendering/RenderTableSection.cpp:
2041         (WebCore::RenderTableSection::nodeAtPoint):
2042         Rewrote a couple of reverse iterating to be able to use unsigned
2043         without overflowing.
2044
2045         * rendering/AutoTableLayout.cpp:
2046         (WebCore::AutoTableLayout::recalcColumn):
2047         (WebCore::AutoTableLayout::fullRecalc):
2048         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
2049         (WebCore::AutoTableLayout::insertSpanCell):
2050         * rendering/AutoTableLayout.h:
2051         * rendering/FixedTableLayout.cpp:
2052         (WebCore::FixedTableLayout::calcWidthArray):
2053         * rendering/RenderTable.cpp:
2054         (WebCore::RenderTable::splitColumn):
2055         (WebCore::RenderTable::appendColumn):
2056         (WebCore::RenderTable::recalcSections):
2057         * rendering/RenderTable.h:
2058         (WebCore::RenderTable::getColumnPos):
2059         (WebCore::RenderTable::spanOfEffCol):
2060         (WebCore::RenderTable::effColToCol):
2061         * rendering/RenderTableCell.cpp:
2062         (WebCore::RenderTableCell::styleOrColLogicalWidth):
2063         (WebCore::CollapsedBorders::nextBorder):
2064         * rendering/RenderTableCell.h:
2065         * rendering/RenderTableCol.cpp:
2066         (WebCore::RenderTableCol::updateFromElement):
2067         * rendering/RenderTableCol.h:
2068         (WebCore::RenderTableCol::span):
2069         (WebCore::RenderTableCol::setSpan):
2070         * rendering/RenderTableSection.cpp:
2071         (WebCore::RenderTableSection::addCell):
2072         (WebCore::RenderTableSection::setCellLogicalWidths):
2073         (WebCore::RenderTableSection::layoutRows):
2074         (WebCore::RenderTableSection::calcOuterBorderBefore):
2075         (WebCore::RenderTableSection::calcOuterBorderAfter):
2076         (WebCore::RenderTableSection::calcOuterBorderStart):
2077         (WebCore::RenderTableSection::calcOuterBorderEnd):
2078         (WebCore::RenderTableSection::paintObject):
2079         (WebCore::RenderTableSection::appendColumn):
2080         * rendering/RenderTableSection.h:
2081         (WebCore::RenderTableSection::cellAt):
2082         (WebCore::RenderTableSection::primaryCellAt):
2083         (WebCore::RenderTableSection::getBaseline):
2084         Mechanical change int -> unsigned.
2085
2086 2011-11-15  Andy Estes  <aestes@apple.com>
2087
2088         Consolidate the logic that creates run loop observers for flushing layer tree changes to CoreAnimation
2089         https://bugs.webkit.org/show_bug.cgi?id=72106
2090
2091         Reviewed by Anders Carlsson.
2092
2093         Add a class that encapsulates the logic of scheduling, enabling and
2094         invalidating a run loop observer that fires before Core Animation's
2095         commit observer. Clients can subclass LayerFlushSchedulerClient and
2096         implement flushLayers(), which will be called by the observer.
2097
2098         * WebCore.exp.in:
2099         * WebCore.xcodeproj/project.pbxproj:
2100         * platform/graphics/ca/LayerFlushScheduler.cpp: Added.
2101         (WebCore::LayerFlushScheduler::suspend): Suspend scheduling by
2102         invalidating the run loop observer. Keep a count of calls to suspend()
2103         in m_suspendCount.
2104         (WebCore::LayerFlushScheduler::resume): Decrement m_suspendCount.
2105         Install the run loop observer when it reaches 0.
2106         * platform/graphics/ca/LayerFlushSchedulerClient.h: Added.
2107         (WebCore::LayerFlushSchedulerClient::~LayerFlushSchedulerClient):
2108         * platform/graphics/ca/LayerFlushScheduler.h: Added.
2109         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp: Added.
2110         (LayerFlushScheduler::LayerFlushScheduler):
2111         (LayerFlushScheduler::~LayerFlushScheduler):
2112         (LayerFlushScheduler::runLoopObserverCallback): Call flushLayers() on
2113         the LayerFlushSchedulerClient.
2114         (LayerFlushScheduler::schedule): Install the run loop observer.
2115         (LayerFlushScheduler::invalidate): Remove the run loop
2116         observer if it is installed.
2117
2118 2011-11-15  Adam Klein  <adamk@chromium.org>
2119
2120         [v8] Use throwError instead of compiling and running script in handleMaxRecursionDepthExceeded
2121         https://bugs.webkit.org/show_bug.cgi?id=72432
2122
2123         Reviewed by Adam Barth.
2124
2125         * bindings/v8/V8Proxy.cpp:
2126         (WebCore::handleMaxRecursionDepthExceeded):
2127
2128 2011-11-15  Vincent Scheib  <scheib@chromium.org>
2129
2130         Pointer Lock: Refactoring: PointerLock.idl: Dropping webkit prefix
2131         https://bugs.webkit.org/show_bug.cgi?id=72431
2132
2133         Reviewed by Adam Barth.
2134
2135         * page/PointerLock.cpp:
2136         (WebCore::PointerLock::lock):
2137         (WebCore::PointerLock::unlock):
2138         (WebCore::PointerLock::isLocked):
2139         * page/PointerLock.h:
2140         * page/PointerLock.idl:
2141
2142 2011-11-15  Nat Duca  <nduca@chromium.org>
2143
2144         [chromium] Fuse MainThread and CCThread
2145         https://bugs.webkit.org/show_bug.cgi?id=72426
2146
2147         Reviewed by James Robinson.
2148
2149         * WebCore.gypi:
2150         * platform/graphics/chromium/LayerRendererChromium.cpp:
2151         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2152         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2153         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2154         * platform/graphics/chromium/cc/CCMainThread.cpp: Removed.
2155         * platform/graphics/chromium/cc/CCMainThread.h: Removed.
2156         * platform/graphics/chromium/cc/CCMainThreadTask.h: Removed.
2157         * platform/graphics/chromium/cc/CCProxy.cpp:
2158         (WebCore::CCProxy::setMainThread):
2159         (WebCore::CCProxy::mainThread):
2160         (WebCore::CCProxy::setImplThread):
2161         (WebCore::CCProxy::implThread):
2162         (WebCore::CCProxy::isMainThread):
2163         (WebCore::CCProxy::isImplThread):
2164         (WebCore::CCProxy::~CCProxy):
2165         * platform/graphics/chromium/cc/CCProxy.h:
2166         * platform/graphics/chromium/cc/CCScopedThreadProxy.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCScopedMainThreadProxy.h.
2167         (WebCore::CCScopedThreadProxy::create):
2168         (WebCore::CCScopedThreadProxy::postTask):
2169         (WebCore::CCScopedThreadProxy::shutdown):
2170         (WebCore::CCScopedThreadProxy::CCScopedThreadProxy):
2171         (WebCore::CCScopedThreadProxy::runTaskIfNotShutdown):
2172         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2173         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2174         (WebCore::CCThreadProxy::CCThreadProxy):
2175         (WebCore::CCThreadProxy::compositeAndReadback):
2176         (WebCore::CCThreadProxy::finishAllRendering):
2177         (WebCore::CCThreadProxy::initializeLayerRenderer):
2178         (WebCore::CCThreadProxy::setNeedsAnimate):
2179         (WebCore::CCThreadProxy::setNeedsCommit):
2180         (WebCore::CCThreadProxy::onSwapBuffersCompleteOnImplThread):
2181         (WebCore::CCThreadProxy::setNeedsRedraw):
2182         (WebCore::CCThreadProxy::setVisible):
2183         (WebCore::CCThreadProxy::start):
2184         (WebCore::CCThreadProxy::stop):
2185         (WebCore::CCThreadProxy::obtainBeginFrameAndCommitTaskFromCCThread):
2186         (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnImplThread):
2187         (WebCore::CCThreadProxy::beginFrameAndCommit):
2188         (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
2189         (WebCore::CCThreadProxy::initializeImplOnImplThread):
2190         * platform/graphics/chromium/cc/CCThreadProxy.h:
2191
2192 2011-11-15  Vincent Scheib  <scheib@chromium.org>
2193
2194         Pointer Lock: Refactor: MouseEvent.idl movementX/Y
2195         https://bugs.webkit.org/show_bug.cgi?id=72427
2196
2197         - [Conditional...] vs #if defined
2198         - Runtime enabled
2199         - .movementX/Y prefixed with 'webkit'
2200
2201         Reviewed by Adam Barth.
2202
2203         No new tests.
2204
2205         * bindings/generic/RuntimeEnabledFeatures.h:
2206         (WebCore::RuntimeEnabledFeatures::webkitMovementXEnabled):
2207         (WebCore::RuntimeEnabledFeatures::webkitMovementYEnabled):
2208         * dom/MouseEvent.idl:
2209         * dom/MouseRelatedEvent.h:
2210         (WebCore::MouseRelatedEvent::webkitMovementX):
2211         (WebCore::MouseRelatedEvent::webkitMovementY):
2212
2213 2011-10-28  Ojan Vafai  <ojan@chromium.org>
2214
2215         implement flex-align for flex-flow: column
2216         https://bugs.webkit.org/show_bug.cgi?id=70754
2217
2218         Reviewed by David Hyatt.
2219
2220         Tests: css3/flexbox/flex-align-column.html
2221                css3/flexbox/line-wrapping.html
2222
2223         * rendering/RenderBox.cpp:
2224         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
2225         When flexitems are column, they should size to the intrinsic width unless flex-flow is stretch.
2226
2227         * rendering/RenderFlexibleBox.cpp:
2228         (WebCore::RenderFlexibleBox::alignChildrenBlockDirection):
2229         This was just using the wrong, non-flow-aware method.
2230
2231 2011-11-15  Jochen Eisinger  <jochen@chromium.org>
2232
2233         Rename ReferrerPolicy to clarify its meaning
2234         https://bugs.webkit.org/show_bug.cgi?id=72420
2235
2236         Reviewed by Nate Chapin.
2237
2238         On the one hand, even if the ReferrerPolicy was set to SendReferrer, the
2239         referrer wasn't necessarily send. On the other hand, I want to use the
2240         name ReferrerPolicy when implementing the meta referrer tag.
2241
2242         No change in behavior expected so no test.
2243
2244         * html/HTMLAnchorElement.cpp:
2245         (WebCore::HTMLAnchorElement::handleClick):
2246         (WebCore::handleLinkClick):
2247         * loader/FrameLoader.cpp:
2248         (WebCore::FrameLoader::changeLocation):
2249         (WebCore::FrameLoader::urlSelected):
2250         (WebCore::FrameLoader::loadFrameRequest):
2251         * loader/FrameLoader.h:
2252         * loader/FrameLoaderTypes.h:
2253         * loader/NavigationScheduler.cpp:
2254         (WebCore::ScheduledHistoryNavigation::fire):
2255         (WebCore::ScheduledFormSubmission::fire):
2256         * page/ContextMenuController.cpp:
2257         (WebCore::openNewWindow):
2258         (WebCore::ContextMenuController::contextMenuItemSelected):
2259         * WebCore.exp.in: updated.
2260
2261 2011-11-15  Adam Klein  <adamk@chromium.org>
2262
2263         Factor out V8Proxy's max recursion depth handling code
2264         https://bugs.webkit.org/show_bug.cgi?id=72422
2265
2266         Reviewed by Nate Chapin.
2267
2268         Previously, V8Proxy used slightly different code to handle stack limit
2269         violations depending on whether they occured in runScript or
2270         callFunction. As described in http://webkit.org/b/72063, I intend to
2271         expand the usage of m_recursion when calling into script. This patch
2272         is intended to unify the existing handling code, making it easier to
2273         move elsewhere without causing unintended side-effects.
2274
2275         No tests changed, as the only change in behavior is the string passed
2276         to RangeError in the runScript case, and it's not mentioned anywhere
2277         in the LayoutTests.
2278
2279         * bindings/v8/V8Proxy.cpp:
2280         (WebCore::handleMaxRecursionDepthExceeded):
2281         (WebCore::V8Proxy::runScript): Use callFunction's factored-out code.
2282         (WebCore::V8Proxy::callFunction): Simplify and factor out code into handleMaxRecursionDepthExceeded.
2283
2284 2011-11-15  Jessie Berlin  <jberlin@apple.com>
2285
2286         NSURLRequest leak beneath ResourceRequest::setStorageSession seen on Leaks bot.
2287         https://bugs.webkit.org/show_bug.cgi?id=72419
2288
2289         Reviewed by Adam Roben.
2290
2291         Adopt the copied NSURLRequest.
2292
2293         * platform/network/mac/ResourceRequestMac.mm:
2294         (WebCore::ResourceRequest::setStorageSession):
2295
2296 2011-11-15  John Bates  <jbates@google.com>
2297
2298         Page/layer flashes after GPU-accelerated CSS transition
2299         https://bugs.webkit.org/show_bug.cgi?id=72343
2300
2301         LayerRendererChromium was resizing the window to 1x1 at initialization.
2302         In some cases, there is no drawLayers before switching back to
2303         software rendering. This left the window resized to 1x1 and the
2304         following software paints would therefore not be visible. This change
2305         moves the reshape call into drawLayers so that it will only be called
2306         if rendering will occur.
2307
2308         Reviewed by James Robinson.
2309
2310         New test: CCLayerTreeHostImplTest.reshapeNotCalledUntilDraw.
2311
2312         * platform/graphics/chromium/LayerRendererChromium.cpp:
2313         (WebCore::LayerRendererChromium::viewportChanged):
2314         (WebCore::LayerRendererChromium::doViewportChanged):
2315         (WebCore::LayerRendererChromium::drawLayersInternal):
2316         * platform/graphics/chromium/LayerRendererChromium.h:
2317
2318 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
2319
2320         Add the needed plumbing to parse display: -webkit-grid
2321         https://bugs.webkit.org/show_bug.cgi?id=72331
2322
2323         Reviewed by Tony Chang.
2324
2325         Test: fast/css-grid-layout/display-grid-set-get.html
2326
2327         Added parsing support for display: -webkit-grid. From a rendering perspective,
2328         the value is equivalent to display: none until we properly implement it.
2329
2330         * css/CSSParser.cpp:
2331         (WebCore::CSSParser::parseValue):
2332         * css/CSSPrimitiveValueMappings.h:
2333         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2334         * css/CSSValueKeywords.in:
2335         * rendering/style/RenderStyleConstants.h:
2336         Added the new CSS value and plumbed the parsing and style application of
2337         the new value.
2338
2339         * css/CSSPrimitiveValueMappings.h:
2340         (WebCore::CSSPrimitiveValue::operator EDisplay):
2341         Added an ASSERT here as I bumped into some non-trivial issues due to bug 72296.
2342         -wap-marquee was offsetting the new value and was wrongly casted by the CSSPrimitiveValueMapping
2343         logic outside the EDisplay range which would lead to crashes.
2344
2345         * rendering/RenderObject.cpp:
2346         (WebCore::RenderObject::createObject):
2347         Fixed the indentation to follow our coding rules.
2348
2349 2011-11-15  Vincent Scheib  <scheib@chromium.org>
2350
2351         Mouse Lock: Renaming to 'Pointer Lock': MouseLockable to PointerLock
2352         https://bugs.webkit.org/show_bug.cgi?id=72315
2353
2354         Reviewed by Dimitri Glazkov.
2355
2356         * WebCore.gypi:
2357         * page/Navigator.cpp:
2358         (WebCore::Navigator::webkitPointer):
2359         * page/Navigator.h:
2360         * page/Navigator.idl:
2361         * page/PointerLock.cpp: Renamed from Source/WebCore/page/MouseLockable.cpp.
2362         (WebCore::PointerLock::PointerLock):
2363         (WebCore::PointerLock::~PointerLock):
2364         (WebCore::PointerLock::webkitLock):
2365         (WebCore::PointerLock::webkitUnlock):
2366         (WebCore::PointerLock::webkitIsLocked):
2367         * page/PointerLock.h: Renamed from Source/WebCore/page/MouseLockable.h.
2368         (WebCore::PointerLock::create):
2369         * page/PointerLock.idl: Renamed from Source/WebCore/page/MouseLockable.idl.
2370
2371 2011-10-28  Ojan Vafai  <ojan@chromium.org>
2372
2373         Overflow and relayout are broken in the new flexboxes
2374         https://bugs.webkit.org/show_bug.cgi?id=71161
2375
2376         Reviewed by David Hyatt.
2377
2378         Tests: css3/flexbox/auto-height-dynamic.html
2379                css3/flexbox/flex-item-child-overflow-expected.html
2380                css3/flexbox/flex-item-child-overflow.html
2381
2382         * rendering/RenderFlexibleBox.cpp:
2383         (WebCore::RenderFlexibleBox::layoutBlock):
2384         -Always set the logical height to 0 to start with to ensure we don't
2385         use the height from the previous layout when we are computing the
2386         intrinsic size of the flexbox.
2387         -Call computeOverflow after computeLogicalHeight so that flex-item's children's
2388         overflow is properly rendered.
2389
2390         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
2391         -Now that we setLogicalHeight in layoutBlock, we no longer need to do it here.
2392         -Refactor flipping code. The behavior is the same, but the variable names are just
2393         more correct.
2394
2395 2011-10-28  Ojan Vafai  <ojan@chromium.org>
2396
2397         Overflow and relayout are broken in the new flexboxes
2398         https://bugs.webkit.org/show_bug.cgi?id=71161
2399
2400         Reviewed by David Hyatt.
2401
2402         Tests: css3/flexbox/auto-height-dynamic.html
2403                css3/flexbox/flex-item-child-overflow-expected.html
2404                css3/flexbox/flex-item-child-overflow.html
2405
2406         * rendering/RenderFlexibleBox.cpp:
2407         (WebCore::RenderFlexibleBox::layoutBlock):
2408         -Always set the logical height to 0 to start with to ensure we don't
2409         use the height from the previous layout when we are computing the
2410         intrinsic size of the flexbox.
2411         -Call computeOverflow after computeLogicalHeight so that flex-item's children's
2412         overflow is properly rendered.
2413
2414         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
2415         -Now that we setLogicalHeight in layoutBlock, we no longer need to do it here.
2416         -Refactor flipping code. The behavior is the same, but the variable names are just
2417         more correct.
2418
2419 2011-11-15  Nate Chapin  <japhet@chromium.org>
2420
2421         CachedResourceRequest is now the only SubresourceLoaderClient
2422         Merge CachedResourceRequest into SubresourceLoader and delete
2423         the SubresourceLoaderClient interface. A few items were moved
2424         to CachedResource instead of SubresourceLoader.
2425         https://bugs.webkit.org/show_bug.cgi?id=71149
2426
2427         Reviewed by Adam Barth.
2428
2429         * CMakeLists.txt:
2430         * GNUmakefile.list.am:
2431         * WebCore.gypi:
2432         * WebCore.pro:
2433         * WebCore.vcproj/WebCore.vcproj:
2434         * WebCore.xcodeproj/project.pbxproj:
2435         * loader/ResourceLoadScheduler.cpp:
2436         * loader/ResourceLoadScheduler.h:
2437         * loader/ResourceLoader.cpp:
2438         * loader/SubresourceLoader.cpp:
2439         (WebCore::SubresourceLoader::SubresourceLoader):
2440         (WebCore::SubresourceLoader::create):
2441         (WebCore::SubresourceLoader::init): Do work that had previously been
2442             done in SubresourceLoader::create() after the constructor.
2443         (WebCore::SubresourceLoader::willSendRequest):
2444         (WebCore::SubresourceLoader::didSendData):
2445         (WebCore::SubresourceLoader::didReceiveResponse):
2446         (WebCore::SubresourceLoader::didReceiveData):
2447         (WebCore::SubresourceLoader::didReceiveCachedMetadata):
2448         (WebCore::SubresourceLoader::didFinishLoading):
2449         (WebCore::SubresourceLoader::didFail):
2450         (WebCore::SubresourceLoader::willCancel):
2451         (WebCore::SubresourceLoader::releaseResources): Do the cleanup work that was
2452             duplicated throughout the various terminal CachedResourceRequest callbacks.
2453         * loader/SubresourceLoader.h: Fix indentation style issues.
2454         * loader/SubresourceLoaderClient.h: Removed.
2455         * loader/cache/CachedImage.cpp:
2456         * loader/cache/CachedRawResource.cpp:
2457         * loader/cache/CachedResource.cpp:
2458         (WebCore::cachedResourceTypeToTargetType):
2459         (WebCore::CachedResource::load): Do the work that had been done in
2460             CachedResourceRequest::load().
2461         (WebCore::CachedResource::finish):
2462         (WebCore::CachedResource::setResponse):
2463         (WebCore::CachedResource::stopLoading):
2464         * loader/cache/CachedResource.h:
2465         (WebCore::CachedResource::canDelete):
2466         * loader/cache/CachedResourceLoader.cpp:
2467         * loader/cache/CachedResourceRequest.cpp: Removed.
2468         * loader/cache/CachedResourceRequest.h: Removed.
2469         * loader/cf/SubresourceLoaderCF.cpp:
2470         * loader/chromium/CachedResourceRequestChromium.cpp: Removed.
2471         * loader/chromium/SubresourceLoaderChromium.cpp:
2472
2473 2011-11-15  Anders Carlsson  <andersca@apple.com>
2474
2475         HostWindow screenToWindow/windowToScreen should be screenToRootView/rootViewToScreen
2476         https://bugs.webkit.org/show_bug.cgi?id=72397
2477
2478         Reviewed by Dan Bernstein.
2479
2480         screenToWindow and windowToScreen already use root view coordinates everywhere, with the
2481         exception of Mac WebKit1 which doesn't even implement the functions.
2482
2483         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2484         (-[WebAccessibilityObjectWrapper position]):
2485         * loader/EmptyClients.h:
2486         * page/Chrome.cpp:
2487         (WebCore::Chrome::screenToRootView):
2488         (WebCore::Chrome::rootViewToScreen):
2489         * page/Chrome.h:
2490         * page/ChromeClient.h:
2491         * platform/HostWindow.h:
2492         * platform/ScrollView.cpp:
2493         (WebCore::ScrollView::contentsToScreen):
2494         (WebCore::ScrollView::screenToContents):
2495         * platform/chromium/PopupContainer.cpp:
2496         (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
2497         (WebCore::PopupContainer::refresh):
2498
2499 2011-11-15  Jeff Timanus  <twiz@chromium.org>
2500
2501         Patch removing duplicated code in the setup of the DrawingBuffer used
2502         to host the back-buffer for WebGL contents.
2503         https://bugs.webkit.org/show_bug.cgi?id=72327
2504
2505         Reviewed by Julien Chaffraix.
2506
2507         * html/canvas/WebGLRenderingContext.cpp:
2508         (WebCore::WebGLRenderingContext::copyTexImage2D):
2509         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
2510         (WebCore::WebGLRenderingContext::readPixels):
2511
2512 2011-11-15  Eugene Nalimov  <enal@google.com>
2513
2514         Event listener for active DOM object that is also DOM node can be garbage collected prematurely.
2515         https://bugs.webkit.org/show_bug.cgi?id=70421 
2516
2517         Reviewed by Adam Barth.
2518
2519         Problem demonstrated itself when HTMLAudioElement was changed to become active DOM object.
2520         Before that there were no DOM objects that simultaneously were nodes and active objects.
2521         DOM object could be held in one of 3 maps -- node map, active objects map, and all other
2522         objects map, and HTMLAudioElement should be in 2 maps simultaneously. When it was in the
2523         active DOM objects map only, its event listener could be garbage collected, because special
2524         code that groups listeners with wrappers could handle only wrappers for objects in the node
2525         map. If we put HTMLAudioElement into nodes map, it would not be active DOM node, and can be
2526         garbage collected prematurely itself (see https://bugs.webkit.org/show_bug.cgi?id=66878).
2527         Fix is to introduce 4th map -- active nodes map, and change the code accordingly.
2528
2529         Test: media/audio-garbage-collect.html
2530
2531         * bindings/scripts/CodeGeneratorV8.pm:
2532         (GenerateNamedConstructorCallback):
2533         (GetDomMapFunction):
2534         * bindings/v8/DOMDataStore.cpp:
2535         (WebCore::DOMDataStore::DOMDataStore):
2536         (WebCore::DOMDataStore::getDOMWrapperMap):
2537         (WebCore::DOMDataStore::weakNodeCallback):
2538         * bindings/v8/DOMDataStore.h:
2539         (WebCore::DOMDataStore::activeDomNodeMap):
2540         * bindings/v8/ScopedDOMDataStore.cpp:
2541         (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
2542         (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
2543         * bindings/v8/StaticDOMDataStore.cpp:
2544         (WebCore::StaticDOMDataStore::StaticDOMDataStore):
2545         * bindings/v8/StaticDOMDataStore.h:
2546         * bindings/v8/V8DOMMap.cpp:
2547         (WebCore::getActiveDOMNodeMap):
2548         (WebCore::removeAllDOMObjects):
2549         (WebCore::visitActiveDOMNodes):
2550         * bindings/v8/V8DOMMap.h:
2551         * bindings/v8/V8DOMWrapper.cpp:
2552         (WebCore::V8DOMWrapper::setJSWrapperForDOMNode):
2553         (WebCore::V8DOMWrapper::getWrapperSlow):
2554         * bindings/v8/V8GCController.cpp:
2555         (WebCore::GCPrologueSpecialCase):
2556         (WebCore::void):
2557         (WebCore::Node):
2558         (WebCore::GCPrologueVisitor::visitDOMWrapper):
2559         (WebCore::V8GCController::gcPrologue):
2560         (WebCore::GCEpilogueHelper::GCEpilogueSpecialCase):
2561         (WebCore::GCEpilogueVisitor::visitDOMWrapper):
2562         (WebCore::V8GCController::gcEpilogue):
2563         * dom/Node.h:
2564         (WebCore::Node::isActiveNode):
2565         * html/HTMLAudioElement.h:
2566         (WebCore::HTMLAudioElement::isActiveNode):
2567
2568 2011-11-15  David Kilzer  <ddkilzer@apple.com>
2569
2570         Remove useless const modifier from KURL::init
2571         <http://webkit.org/b/72387>
2572
2573         Reviewed by Darin Adler.
2574
2575         * platform/KURL.cpp:
2576         (WebCore::KURL::init): Remove useless const.
2577
2578 2011-11-14  Anders Carlsson  <andersca@apple.com>
2579
2580         HostWindow invalidation functions should use root view coordinates
2581         https://bugs.webkit.org/show_bug.cgi?id=72338
2582
2583         Reviewed by Dan Bernstein.
2584
2585         Rename invalidateWindow to invalidateRootView, and invalidateContentsAndWindow
2586         to invalidateContentsAndRootView. Make sure that the rects passed to the renamed functions
2587         are in root view coordinates by changing contentsToWindow calls to contentsToRootView.
2588         
2589         In practice this doesn't matter because for all platforms except Mac WebKit1, root view coordinates
2590         and window coordinates are equivalent, and Mac WebKit1 doesn't use these invalidation functions.
2591
2592         * loader/EmptyClients.h:
2593         * page/Chrome.cpp:
2594         (WebCore::Chrome::invalidateRootView):
2595         (WebCore::Chrome::invalidateContentsAndRootView):
2596         * page/Chrome.h:
2597         * page/ChromeClient.h:
2598         * page/Frame.cpp:
2599         (WebCore::Frame::tiledBackingStorePaintEnd):
2600         * page/FrameView.cpp:
2601         (WebCore::FrameView::invalidateRect):
2602         (WebCore::FrameView::scrollContentsFastPath):
2603         * platform/HostWindow.h:
2604         * platform/ScrollView.cpp:
2605         (WebCore::ScrollView::rectToCopyOnScroll):
2606         (WebCore::ScrollView::scrollContents):
2607         (WebCore::ScrollView::wheelEvent):
2608         * platform/chromium/FramelessScrollView.cpp:
2609         (WebCore::FramelessScrollView::invalidateRect):
2610         * svg/graphics/SVGImage.cpp:
2611         (WebCore::SVGImageChromeClient::invalidateContentsAndRootView):
2612
2613 2011-11-15  Philip Rogers  <pdr@google.com>
2614
2615         Implement maxWidth for fillText and strokeText, fixing the canvas/philip/tests/2d.text.draw.fill.maxWidth.fontface.html test.
2616         https://bugs.webkit.org/show_bug.cgi?id=61528
2617
2618         Reviewed by Stephen White.
2619
2620         Tests: fast/canvas/2d.text.draw.fill.maxWidth.gradient.html
2621                fast/canvas/2d.text.draw.fill.maxWidth.negative.html
2622                fast/canvas/2d.text.draw.fill.maxWidth.veryLarge.html
2623                fast/canvas/2d.text.draw.fill.maxWidth.verySmall.html
2624
2625         * html/canvas/CanvasRenderingContext2D.cpp:
2626         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2627
2628 2011-11-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2629
2630         [GTK] Implement download support in WebKit2
2631         https://bugs.webkit.org/show_bug.cgi?id=72258
2632
2633         Reviewed by Martin Robinson.
2634
2635         Add common download errors to ErrorsGtk.
2636
2637         * platform/gtk/ErrorsGtk.cpp:
2638         (WebCore::downloadNetworkError):
2639         (WebCore::downloadCancelledByUserError):
2640         (WebCore::downloadDestinationError):
2641         * platform/gtk/ErrorsGtk.h:
2642
2643 2011-11-15  Cary Clark  <caryclark@google.com>
2644
2645         [chromium-mac] Enable vertical text using Skia
2646         https://bugs.webkit.org/show_bug.cgi?id=72137
2647
2648         Use Skia to draw vertical text. This is much
2649         faster and has higher fidelity than the old method
2650         of drawing text on a path.
2651
2652         The graphics context passed to Skia has been
2653         rotated 90 degrees but the character advances
2654         have not, so it is necessary to unrotate the canvas,
2655         and re-rotate the positions.
2656
2657         This generates correct output (or, at least,
2658         consistent with Chromium CG on Mac) for all vertical
2659         text tests, one of which is mentioned below.
2660         
2661         Reviewed by Stephen White.
2662
2663         Test: fast/writing-mode/text-orientation-basic.html
2664
2665         * platform/graphics/skia/FontSkia.cpp:
2666         (WebCore::setupPaint):
2667         (WebCore::Font::drawGlyphs):
2668
2669 2011-11-15  Philip Rogers  <pdr@google.com>
2670
2671         Fix SVG hit testing when padding is present
2672         https://bugs.webkit.org/show_bug.cgi?id=37325
2673
2674         Reviewed by Nikolas Zimmermann.
2675
2676         Test: svg/hittest/svg-padding.xhtml
2677
2678         * rendering/svg/RenderSVGRoot.cpp:
2679         (WebCore::RenderSVGRoot::nodeAtPoint):
2680
2681 2011-11-15  Pavel Feldman  <pfeldman@google.com>
2682
2683         Web Inspector: move generic code from DevTools.js into the WebCore.
2684         https://bugs.webkit.org/show_bug.cgi?id=72377
2685
2686         re-landing r100269.
2687
2688         Reviewed by Yury Semikhatsky.
2689
2690         * English.lproj/localizedStrings.js:
2691         * inspector/front-end/InspectorFrontendHostStub.js:
2692         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
2693         * inspector/front-end/ProfilesPanel.js:
2694         * inspector/front-end/Resource.js:
2695         * inspector/front-end/Settings.js:
2696         * inspector/front-end/UIUtils.js:
2697         (WebInspector.setToolbarColors):
2698         (WebInspector.resetToolbarColors):
2699         * inspector/front-end/inspector.js:
2700
2701 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
2702
2703         Unreviewed, rolling out r100269.
2704         http://trac.webkit.org/changeset/100269
2705         https://bugs.webkit.org/show_bug.cgi?id=72383
2706
2707         "Broke dozens of tests due to exception in loadingFinished"
2708         (Requested by tonyg-cr on #webkit).
2709
2710         * English.lproj/localizedStrings.js:
2711         * inspector/front-end/InspectorFrontendHostStub.js:
2712         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
2713         * inspector/front-end/ProfilesPanel.js:
2714         * inspector/front-end/Resource.js:
2715         * inspector/front-end/Settings.js:
2716         * inspector/front-end/UIUtils.js:
2717         * inspector/front-end/inspector.js:
2718
2719 2011-11-15  Alexander Pavlov  <apavlov@chromium.org>
2720
2721         font property does not show up as "shorthand" in inspector
2722         https://bugs.webkit.org/show_bug.cgi?id=15598
2723
2724         Reviewed by Nikolas Zimmermann.
2725
2726         The "font" CSS property is turned into a real shorthand, as its longhands used to float around
2727         in the resulting style declaration without any reference to their underlying "font" property.
2728
2729         Test: fast/css/font-shorthand.html
2730
2731         * css/CSSMutableStyleDeclaration.cpp:
2732         (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Extracted the "font" value building into fontValue().
2733         (WebCore::CSSMutableStyleDeclaration::appendFontLonghandValueIfExplicit): Added
2734         (WebCore::CSSMutableStyleDeclaration::fontValue): Build the "font" value from longhands.
2735         * css/CSSMutableStyleDeclaration.h:
2736         * css/CSSParser.cpp:
2737         (WebCore::CSSParser::addProperty): Added optional "implicit" parameter.
2738         (WebCore::CSSParser::parseFont): Build respective longhands instead of the shorthand "font" property.
2739         * css/CSSParser.h: Added optional "implicit" parameter to addProperty().
2740         * css/CSSPropertyLonghand.cpp:
2741         (WebCore::initShorthandMap): Added "font" shorthand map entry.
2742         * css/CSSStyleSelector.cpp:
2743         (WebCore::CSSStyleSelector::applyPropertyToStyle): Separated the property application from the instance setup.
2744         (WebCore::CSSStyleSelector::applyPropertyToCurrentStyle): Added.
2745         * css/CSSStyleSelector.h: Made updateFont() public.
2746         * css/FontValue.cpp:
2747         (WebCore::FontValue::customCssText): Made use of StringBuilder.
2748         * html/canvas/CanvasRenderingContext2D.cpp:
2749         (WebCore::CanvasRenderingContext2D::setFont): Apply "font" longhands rather than the (non-existent) "font" property.
2750         * inspector/front-end/StylesSidebarPane.js:
2751         (WebInspector.StylesSidebarPane.prototype._markUsedProperties): Removed a workaround for "font" not being a shorthand.
2752         * page/animation/AnimationBase.cpp:
2753         (WebCore::addShorthandProperties): Removed a workaround for "font" not being a shorthand.
2754
2755 2011-11-15  Pierre Rossi  <pierre.rossi@gmail.com>
2756
2757         [Qt] Clean up the remaining duplicate code after the RenderThemeQt refactoring.
2758         https://bugs.webkit.org/show_bug.cgi?id=72262
2759
2760         Reviewed by Antonio Gomes.
2761
2762         No new tests needed, this is purely cosmetic.
2763
2764         * platform/qt/RenderThemeQStyle.cpp:
2765         (WebCore::RenderThemeQStyle::adjustMenuListButtonStyle):
2766         * platform/qt/RenderThemeQStyle.h:
2767         * platform/qt/RenderThemeQt.cpp:
2768         (WebCore::RenderThemeQt::adjustMenuListButtonStyle): remove the call to resetBorderRadius()
2769         since the mobile theme actually didn't do this.
2770         * platform/qt/RenderThemeQtMobile.cpp:
2771         (WebCore::RenderThemeQtMobile::adjustMenuListStyle):
2772
2773 2011-11-15  Pavel Feldman  <pfeldman@google.com>
2774
2775         Web Inspector: move generic code from DevTools.js into the WebCore.
2776         https://bugs.webkit.org/show_bug.cgi?id=72377
2777
2778         This includes support for themed toolbar, remote debugging routines,
2779         removes a couple of obsolete overrides from the DevTools.js
2780
2781         Reviewed by Yury Semikhatsky.
2782
2783         * English.lproj/localizedStrings.js:
2784         * inspector/front-end/InspectorFrontendHostStub.js:
2785         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
2786         * inspector/front-end/ProfilesPanel.js:
2787         * inspector/front-end/Resource.js:
2788         * inspector/front-end/Settings.js:
2789         * inspector/front-end/UIUtils.js:
2790         (WebInspector.setToolbarColors):
2791         (WebInspector.resetToolbarColors):
2792         * inspector/front-end/inspector.js:
2793
2794 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
2795
2796         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
2797
2798         Reviewed by Tor Arne Vestbø.
2799
2800         * Target.pri: Eliminate duplicated symbol stuff that lives now in default_post.prf.
2801
2802 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
2803
2804         Unreviewed, rolling out r100213.
2805         http://trac.webkit.org/changeset/100213
2806         https://bugs.webkit.org/show_bug.cgi?id=72371
2807
2808         "Breaks test_shell_tests" (Requested by tonyg-cr on #webkit).
2809
2810         * page/SecurityOrigin.cpp:
2811         (WebCore::SecurityOrigin::SecurityOrigin):
2812         * platform/SchemeRegistry.cpp:
2813         (WebCore::schemesWithUniqueOrigins):
2814
2815 2011-11-15  Alpha Lam  <hclam@chromium.org>
2816
2817         [chromium] scroll deltas are cleared during commit to the main thread
2818         https://bugs.webkit.org/show_bug.cgi?id=71916
2819
2820         Reviewed by James Robinson.
2821
2822         Patch is covered by unit test.
2823
2824         Add a member m_sentScrollDelta to CCLayerImpl to keep track of the scroll delta being
2825         sent to the main thread during commit. This gives a simpler approach to keep tracking of a
2826         layer's scroll delta in impl thread.
2827
2828         * platform/graphics/chromium/LayerChromium.h:
2829         (WebCore::LayerChromium::sentScrollDelta):
2830         * platform/graphics/chromium/cc/CCLayerImpl.h:
2831         (WebCore::CCLayerImpl::sentScrollDelta):
2832         (WebCore::CCLayerImpl::setSentScrollDelta):
2833         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2834         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
2835         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2836
2837 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
2838
2839         [Qt] REGRESSION(100123): It made inspector tests crash
2840         https://bugs.webkit.org/show_bug.cgi?id=72274
2841
2842         Reviewed by Tor Arne Vestbø.
2843
2844         * platform/qt/RenderThemeQStyle.h: Remove uninitialized and duplicated
2845         m_page member that should really come from RenderThemeQt.
2846
2847 2011-11-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2848
2849         Unreviewed. Fix build breaks when EFL port is built.
2850
2851         * CMakeLists.txt:
2852         * UseJSC.cmake:
2853
2854 2011-11-15  Noel Gordon  <noel.gordon@gmail.com>
2855
2856         Make ImageFrame member getAddr() public
2857         https://bugs.webkit.org/show_bug.cgi?id=72321
2858
2859         Reviewed by Adam Barth.
2860
2861         Make ImageFrame member getAddr() public to allow ImageFrame users access to the
2862         underlying frame pixels if needed. Image decoders, for example, could with care
2863         use this service to write decoded pixels direct to the ImageFrame pixel buffer,
2864         avoiding intermeadiate data copies from temporary decoded pixel row buffers and
2865         the decoding performance loss that that entails.
2866
2867         No new tests, refactoring only.
2868
2869         * platform/image-decoders/ImageDecoder.h:
2870         (WebCore::ImageFrame::getAddr):
2871
2872 2011-11-14  Alexander Pavlov  <apavlov@chromium.org>
2873
2874         Web Inspector: [Crash] Crash when inspecting namespaced SVG styled via element names
2875         https://bugs.webkit.org/show_bug.cgi?id=72261
2876
2877         Reviewed by Pavel Feldman.
2878
2879         Test: inspector/styles/svg-style.xhtml
2880
2881         * inspector/InspectorStyleSheet.cpp:
2882         (WebCore::InspectorStyleSheet::inlineStyleSheetText):
2883
2884 2011-11-15  Kent Tamura  <tkent@chromium.org>
2885
2886         [V8] Fix incorrect handling of JavaScript properties in DOMStringMap
2887         https://bugs.webkit.org/show_bug.cgi?id=53578
2888
2889         Reviewed by Adam Barth.
2890
2891         Follows a JSC behavior change by r96893.
2892
2893         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
2894         (WebCore::V8DOMStringMap::namedPropertyGetter):
2895         Propagate to the JavaScript object if the DOMStringMap object
2896         doesn't have the requested item.
2897         (WebCore::V8DOMStringMap::namedPropertyDeleter): ditto.
2898         (WebCore::V8DOMStringMap::namedPropertySetter):
2899         Try to set a property to only a DOMStringMap object.
2900
2901 2011-11-14  Pavel Feldman  <pfeldman@google.com>
2902
2903         Web Inspector: Command line $x fails for 3 of 4 types of XPath query
2904         https://bugs.webkit.org/show_bug.cgi?id=72276
2905
2906         Reviewed by Timothy Hatcher.
2907
2908         Test: inspector/console/console-xpath.html
2909
2910         * inspector/InjectedScriptSource.js:
2911         (.):
2912
2913 2011-11-14  Ryosuke Niwa  <rniwa@webkit.org>
2914
2915         Fix the change log entry for r59190.
2916
2917         * ChangeLog-2010-05-24:
2918
2919 2011-11-14  Dmitry Lomov  <dslomov@google.com>
2920         
2921         [V8][Chromium]Serialize dense arrays densly
2922         https://bugs.webkit.org/show_bug.cgi?id=72198
2923         This patch ensures that:
2924         - Dense arrays are serialized densly, and not as name-value pairs
2925         - Sparse arrays are allocated as sparse on deserialization.
2926         The criteria to choose whether to serialize densly or sparsely is the size
2927         of a resulting serialized stream.
2928
2929         Reviewed by David Levin.
2930
2931         Test: fast/dom/Window/window-postmessage-arrays.html
2932
2933         * bindings/v8/SerializedScriptValue.cpp:
2934         (WebCore::V8ObjectMap::Writer::writeDenseArray):
2935         (WebCore::V8ObjectMap::Writer::writeGenerateFreshSparseArray):
2936         (WebCore::V8ObjectMap::Writer::writeGenerateFreshDenseArray):
2937         (WebCore::V8ObjectMap::Serializer::writeDenseArray):
2938         (WebCore::V8ObjectMap::Serializer::AbstractObjectState::execDepth):
2939         (WebCore::V8ObjectMap::Serializer::AbstractObjectState::serializeProperties):
2940         (WebCore::V8ObjectMap::Serializer::ObjectState::advance):
2941         (WebCore::V8ObjectMap::Serializer::DenseArrayState::DenseArrayState):
2942         (WebCore::V8ObjectMap::Serializer::DenseArrayState::advance):
2943         (WebCore::V8ObjectMap::Serializer::DenseArrayState::objectDone):
2944         (WebCore::V8ObjectMap::Serializer::SparseArrayState::SparseArrayState):
2945         (WebCore::V8ObjectMap::Serializer::SparseArrayState::advance):
2946         (WebCore::V8ObjectMap::Serializer::serializeDensely):
2947         (WebCore::V8ObjectMap::Serializer::startArrayState):
2948         (WebCore::V8ObjectMap::Serializer::startObjectState):
2949         (WebCore::V8ObjectMap::Serializer::doSerialize):
2950         (WebCore::V8ObjectMap::Reader::read):
2951         (WebCore::V8ObjectMap::Deserializer::newSparseArray):
2952         (WebCore::V8ObjectMap::Deserializer::completeSparseArray):
2953         (WebCore::V8ObjectMap::Deserializer::completeDenseArray):
2954
2955 2011-11-14  Alexandre Elias  <aelias@google.com>
2956
2957         [chromium] Fix scaleDelta zoom-out visibility rect bug
2958         https://bugs.webkit.org/show_bug.cgi?id=72208
2959
2960         Since the scroll is no longer applied at the top layer of the layer
2961         tree, the scaleDelta transformation needs to be moved down to the
2962         same level.
2963
2964         Also fix zoomAnimator to be applied the same way.  I removed zoom
2965         animator layout tests, as they aren't testing the actual impl-side
2966         codepath, and are hard to continue supporting -- we should cover zoom
2967         features with unit tests in the future.
2968
2969         Reviewed by James Robinson.
2970
2971         No new tests (planning to add later: https://bugs.webkit.org/show_bug.cgi?id=71529)
2972
2973         * platform/graphics/chromium/LayerChromium.h:
2974         (WebCore::LayerChromium::scaleDelta):
2975         * platform/graphics/chromium/LayerRendererChromium.cpp:
2976         (WebCore::LayerRendererChromium::drawLayersInternal):
2977         * platform/graphics/chromium/LayerRendererChromium.h:
2978         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2979         (WebCore::CCLayerImpl::CCLayerImpl):
2980         (WebCore::CCLayerImpl::setScaleDelta):
2981         * platform/graphics/chromium/cc/CCLayerImpl.h:
2982         (WebCore::CCLayerImpl::scaleDelta):
2983         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
2984         (WebCore::calculateDrawTransformsAndVisibilityInternal):
2985         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2986         (WebCore::CCLayerTreeHostImpl::setScaleDelta):
2987         (WebCore::CCLayerTreeHostImpl::setZoomAnimatorTransform):
2988
2989 2011-11-14  Chris Fleizach  <cfleizach@apple.com>
2990
2991         WebProcess crashes when trying to display your "uploaded videos" page on Facebook
2992         https://bugs.webkit.org/show_bug.cgi?id=72334
2993
2994         Reviewed by Beth Dakin.
2995
2996         Protect against documents without frames.
2997
2998         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2999         (-[WebAccessibilityObjectWrapper remoteAccessibilityParentObject]):
3000
3001 2011-11-14  Oliver Hunt  <oliver@apple.com>
3002
3003         More V8 build fixes.
3004
3005         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
3006         (WebCore::setWebGLArrayHelper):
3007
3008 2011-11-14  Oliver Hunt  <oliver@apple.com>
3009
3010         Fix V8 build again.
3011
3012         * bindings/scripts/CodeGeneratorV8.pm:
3013         * bindings/scripts/test/V8/V8Float64Array.cpp:
3014         (WTF::Float64Array::neuterBinding):
3015
3016 2011-11-14  Oliver Hunt  <oliver@apple.com>
3017
3018         Fix V8 build.
3019
3020         * bindings/scripts/CodeGeneratorV8.pm:
3021         * bindings/scripts/test/V8/V8Float64Array.cpp:
3022         (WTF::Float64Array::neuterBinding):
3023
3024 2011-11-14  Oliver Hunt  <oliver@apple.com>
3025
3026         Start migrating typed array impl types to WTF
3027         https://bugs.webkit.org/show_bug.cgi?id=72336
3028
3029         Reviewed by Geoffrey Garen.
3030
3031         Move typed arrays from WebCore namespace to WTF, and
3032         start reducing dependencies on WebCore types.
3033
3034         * bindings/js/JSArrayBufferViewHelper.h:
3035         (WebCore::setWebGLArrayHelper):
3036         * bindings/scripts/CodeGeneratorJS.pm:
3037         (IsTypedArrayType):
3038         (AddClassForwardIfNeeded):
3039         (GenerateImplementation):
3040         * bindings/scripts/CodeGeneratorV8.pm:
3041         (IsTypedArrayType):
3042         * bindings/scripts/test/CPP/WebDOMFloat64Array.cpp: Added.
3043         (WebDOMFloat64Array::WebDOMFloat64Array):
3044         (WebDOMFloat64Array::impl):
3045         (toWebCore):
3046         (toWebKit):
3047         * bindings/scripts/test/CPP/WebDOMFloat64Array.h: Added.
3048         (WebDOMFloat64Array::~WebDOMFloat64Array):
3049         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp: Added.
3050         (WebKit::kit):
3051         (WebKit::core):
3052         (webkit_dom_float64array_finalize):
3053         (webkit_dom_float64array_set_property):
3054         (webkit_dom_float64array_get_property):
3055         (webkit_dom_float64array_constructed):
3056         (webkit_dom_float64array_class_init):
3057         (webkit_dom_float64array_init):
3058         (WebKit::wrapFloat64Array):
3059         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h: Added.
3060         * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h: Added.
3061         * bindings/scripts/test/JS/JSFloat64Array.cpp: Added.
3062         (WebCore::JSFloat64ArrayConstructor::JSFloat64ArrayConstructor):
3063         (WebCore::JSFloat64ArrayConstructor::finishCreation):
3064         (WebCore::JSFloat64ArrayConstructor::getOwnPropertySlot):
3065         (WebCore::JSFloat64ArrayConstructor::getOwnPropertyDescriptor):
3066         (WebCore::JSFloat64ArrayConstructor::getConstructData):
3067         (WebCore::getJSFloat64ArrayPrototypeTable):
3068         (WebCore::JSFloat64ArrayPrototype::self):
3069         (WebCore::getJSFloat64ArrayTable):
3070         (WebCore::JSFloat64Array::JSFloat64Array):
3071         (WebCore::JSFloat64Array::finishCreation):
3072         (WebCore::JSFloat64Array::createPrototype):
3073         (WebCore::JSFloat64Array::getOwnPropertySlot):
3074         (WebCore::JSFloat64Array::getOwnPropertyDescriptor):
3075         (WebCore::JSFloat64Array::getOwnPropertySlotByIndex):
3076         (WebCore::jsFloat64ArrayConstructor):
3077         (WebCore::JSFloat64Array::put):
3078         (WebCore::JSFloat64Array::putByIndex):
3079         (WebCore::JSFloat64Array::getOwnPropertyNames):
3080         (WebCore::JSFloat64Array::getConstructor):
3081         (WebCore::JSFloat64Array::getByIndex):
3082         (WebCore::toFloat64Array):
3083         (WTF::Float64Array::neuterBinding):
3084         * bindings/scripts/test/JS/JSFloat64Array.h: Added.
3085         (WebCore::JSFloat64Array::create):
3086         (WebCore::JSFloat64Array::createStructure):
3087         (WebCore::JSFloat64Array::impl):
3088         (WebCore::JSFloat64ArrayPrototype::create):
3089         (WebCore::JSFloat64ArrayPrototype::createStructure):
3090         (WebCore::JSFloat64ArrayPrototype::JSFloat64ArrayPrototype):
3091         (WebCore::JSFloat64ArrayConstructor::create):
3092         (WebCore::JSFloat64ArrayConstructor::createStructure):
3093         * bindings/scripts/test/ObjC/DOMFloat64Array.h: Copied from Source/WebCore/html/canvas/Int16Array.cpp.
3094         * bindings/scripts/test/ObjC/DOMFloat64Array.mm: Copied from Source/WebCore/html/canvas/Float32Array.cpp.
3095         (core):
3096         (kit):
3097         * bindings/scripts/test/ObjC/DOMFloat64ArrayInternal.h: Copied from Source/WebCore/html/canvas/Int16Array.cpp.
3098         * bindings/scripts/test/TestTypedArray.idl: Copied from Source/WebCore/html/canvas/Float64Array.cpp.
3099         * bindings/scripts/test/V8/V8Float64Array.cpp: Added.
3100         (WebCore::Float64ArrayInternal::V8_USE):
3101         (WebCore::ConfigureV8Float64ArrayTemplate):
3102         (WebCore::V8Float64Array::GetRawTemplate):
3103         (WebCore::V8Float64Array::GetTemplate):
3104         (WebCore::V8Float64Array::HasInstance):
3105         (WebCore::V8Float64Array::wrapSlow):
3106         (WTF::Float64Array::neuterBinding):
3107         (WebCore::V8Float64Array::derefObject):
3108         * bindings/scripts/test/V8/V8Float64Array.h: Added.
3109         (WebCore::V8Float64Array::toNative):
3110         (WebCore::V8Float64Array::existingWrapper):
3111         (WebCore::V8Float64Array::wrap):
3112         (WebCore::toV8):
3113         * fileapi/FileReader.h:
3114         * fileapi/FileReaderLoader.h:
3115         * fileapi/FileReaderSync.h:
3116         * fileapi/WebKitBlobBuilder.h:
3117         * html/HTMLMediaElement.h:
3118         * html/canvas/ArrayBuffer.cpp:
3119         * html/canvas/ArrayBuffer.h:
3120         * html/canvas/ArrayBufferView.cpp:
3121         (WTF::ArrayBufferView::setImpl):
3122         (WTF::ArrayBufferView::setRangeImpl):
3123         (WTF::ArrayBufferView::zeroRangeImpl):
3124         (WTF::ArrayBufferView::neuter):
3125         * html/canvas/ArrayBufferView.h:
3126         * html/canvas/Float32Array.cpp:
3127         * html/canvas/Float32Array.h:
3128         (WTF::Float32Array::set):
3129         * html/canvas/Float64Array.cpp:
3130         * html/canvas/Float64Array.h:
3131         (WTF::Float64Array::set):
3132         * html/canvas/Int16Array.cpp:
3133         * html/canvas/Int16Array.h:
3134         (WTF::Int16Array::set):
3135         * html/canvas/Int32Array.cpp:
3136         * html/canvas/Int32Array.h:
3137         (WTF::Int32Array::set):
3138         * html/canvas/Int8Array.cpp:
3139         * html/canvas/Int8Array.h:
3140         (WTF::Int8Array::set):
3141         * html/canvas/IntegralTypedArrayBase.h:
3142         * html/canvas/TypedArrayBase.h:
3143         (WTF::TypedArrayBase::set):
3144         (WTF::TypedArrayBase::setRange):
3145         (WTF::TypedArrayBase::zeroRange):
3146         * html/canvas/Uint16Array.cpp:
3147         * html/canvas/Uint16Array.h:
3148         (WTF::Uint16Array::set):
3149         * html/canvas/Uint32Array.cpp:
3150         * html/canvas/Uint32Array.h:
3151         (WTF::Uint32Array::set):
3152         * html/canvas/Uint8Array.cpp:
3153         * html/canvas/Uint8Array.h:
3154         (WTF::Uint8Array::set):
3155         * html/canvas/WebGLBuffer.h:
3156         * page/Crypto.h:
3157         * webaudio/AsyncAudioDecoder.h:
3158         * webaudio/AudioBuffer.cpp:
3159         (WebCore::AudioBuffer::AudioBuffer):
3160         (WebCore::AudioBuffer::zero):
3161         * webaudio/AudioContext.h:
3162         * webaudio/JavaScriptAudioNode.h:
3163         * webaudio/RealtimeAnalyser.h:
3164         * webaudio/RealtimeAnalyserNode.h:
3165         * webaudio/WaveShaperNode.h:
3166         * websockets/ThreadableWebSocketChannel.h:
3167         * websockets/WebSocket.h:
3168         * websockets/WebSocketChannel.h:
3169         * xml/XMLHttpRequest.h:
3170
3171 2011-11-14  Julien Chaffraix  <jchaffraix@webkit.org>
3172
3173         Add --css-grid-layout to build-webkit and the build systems
3174         https://bugs.webkit.org/show_bug.cgi?id=72320
3175
3176         Reviewed by Ojan Vafai.
3177
3178         * Configurations/FeatureDefines.xcconfig:
3179
3180 2011-11-14  Daniel Bates  <dbates@rim.com>
3181
3182         Remove unnecessary #include SVGResourcesCache.h in SVGDocumentExtensions.h; use forward declaration
3183         https://bugs.webkit.org/show_bug.cgi?id=72335
3184
3185         Reviewed by Eric Seidel.
3186
3187         It's sufficient to forward declare SVGResourcesCache in SVGDocumentExtensions.h and #include SVGResourcesCache.h
3188         in SVGDocumentExtensions.cpp. This will reduce the number of files we need to re-compile after the file
3189         SVGResourcesCache.h has been modified. Currently we #include SVGResourcesCache.h in SVGDocumentExtensions.h.
3190
3191         * rendering/svg/RenderSVGBlock.cpp: Include SVGResourcesCache.h.
3192         * rendering/svg/RenderSVGContainer.cpp: Ditto.
3193         * rendering/svg/RenderSVGForeignObject.cpp: Ditto.
3194         * rendering/svg/RenderSVGImage.cpp: Ditto.
3195         * rendering/svg/RenderSVGInline.cpp: Ditto.
3196         * rendering/svg/RenderSVGModelObject.cpp: Ditto.
3197         * rendering/svg/RenderSVGPath.cpp: Ditto.
3198         * rendering/svg/RenderSVGResource.cpp: Ditto.
3199         * rendering/svg/RenderSVGResourceClipper.cpp: Ditto.
3200         * rendering/svg/RenderSVGResourceContainer.cpp: Ditto.
3201         * rendering/svg/RenderSVGRoot.cpp: Ditto.
3202         * rendering/svg/RenderSVGText.cpp: Ditto.
3203         * rendering/svg/SVGInlineTextBox.cpp: Ditto.
3204         * rendering/svg/SVGRenderSupport.cpp: Ditto.
3205         * svg/SVGDocumentExtensions.cpp: Ditto.
3206         * svg/SVGDocumentExtensions.h: Forward declare SVGResourcesCache.
3207
3208 2011-11-14  Rafael Weinstein  <rafaelw@chromium.org>
3209
3210         [MutationObservers] Add histogram collection for usage of DOM Mutation Events
3211         https://bugs.webkit.org/show_bug.cgi?id=72316
3212
3213         Reviewed by Ryosuke Niwa.
3214
3215         This patch adds six calls in ~Document() which simply pipe-out to the embedder
3216         the (already-collected) bits of whether varous DOM Mutation Events were registered
3217         on the document.
3218
3219         No tests needed. No functional changes.
3220
3221         * dom/Document.cpp:
3222         (WebCore::histogramMutationEventUsage):
3223         (WebCore::Document::~Document):
3224
3225 2011-11-14  Simon Fraser  <simon.fraser@apple.com>
3226
3227         div with webkit-transform + webkit-box-reflect disappears when switching tabs
3228         https://bugs.webkit.org/show_bug.cgi?id=53355
3229
3230         Reviewed by Dean Jackson.
3231
3232         Tickle Core Animation into updating the layer's content property when
3233         switching back to a tab which has composited reflections. This hack is
3234         needed becuase reflections involve sharing layer contents between layers.
3235
3236         * platform/graphics/mac/WebLayer.mm:
3237         (-[WebLayer actionForKey:]):
3238
3239 2011-11-14  Adam Barth  <abarth@webkit.org>
3240
3241         Unique origins shouldn't remember their scheme, host, or port
3242         https://bugs.webkit.org/show_bug.cgi?id=72308
3243
3244         Reviewed by Eric Seidel.
3245
3246         This patch contains the bulk (all?) of the behavior differences in this
3247         patch series.  Unique origins shouldn't remember their schemes.  Doing
3248         so causes some privileges (e.g., local access) to leak into unique
3249         origins.
3250
3251         * page/SecurityOrigin.cpp:
3252         (WebCore::SecurityOrigin::SecurityOrigin):
3253             - Explicitly clear out the protocol, host, and port for unique
3254               origins.  A future patch will refactor all this code to be more
3255               elegant.
3256         * platform/SchemeRegistry.cpp:
3257         (WebCore::schemesWithUniqueOrigins):
3258             - Merge "about" and "javascript" in with the general case now that
3259               we don't have a separate notion of an empty origin.
3260
3261 2011-11-14  Adam Barth  <abarth@webkit.org>
3262
3263         Don't special-case "data" URLs in drag-and-drop logic
3264         https://bugs.webkit.org/show_bug.cgi?id=72322
3265
3266         Reviewed by Eric Seidel.
3267
3268         See the bug for more details.
3269
3270         Test: editing/pasteboard/drag-drop-to-data-url.html
3271
3272         * page/SecurityOrigin.cpp:
3273         (WebCore::SecurityOrigin::canReceiveDragData):
3274
3275 2011-11-14  Adrienne Walker  <enne@google.com>
3276
3277         [chromium] Pipe compositor commit/swap up to WebWidgetClient
3278         https://bugs.webkit.org/show_bug.cgi?id=72041
3279
3280         Reviewed by Darin Fisher.
3281
3282         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3283         (WebCore::CCLayerTreeHost::didCommitAndDrawFrame):
3284         (WebCore::CCLayerTreeHost::didCompleteSwapBuffers):
3285         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
3286         (WebCore::CCSingleThreadProxy::doComposite):
3287         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3288         (WebCore::CCThreadProxy::onSwapBuffersCompleteOnImplThread):
3289         (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
3290         (WebCore::CCThreadProxy::didCommitAndDrawFrame):
3291         (WebCore::CCThreadProxy::didCompleteSwapBuffers):
3292         * platform/graphics/chromium/cc/CCThreadProxy.h:
3293
3294 2011-11-14  Tony Chang  <tony@chromium.org>
3295
3296         Remove the CSS3_FLEXBOX compile time flag and enable on all ports
3297         https://bugs.webkit.org/show_bug.cgi?id=72196
3298
3299         Reviewed by Ojan Vafai.
3300
3301         * Configurations/FeatureDefines.xcconfig:
3302         * css/CSSComputedStyleDeclaration.cpp:
3303         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3304         * css/CSSFlexValue.cpp:
3305         * css/CSSFlexValue.h:
3306         * css/CSSParser.cpp:
3307         (WebCore::CSSParser::parseValue):
3308         (WebCore::CSSParser::parseFlex):
3309         * css/CSSPrimitiveValueMappings.h:
3310         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3311         * css/CSSProperty.cpp:
3312         (WebCore::CSSProperty::isInheritedProperty):
3313         * css/CSSPropertyNames.in:
3314         * css/CSSStyleApplyProperty.cpp:
3315         (WebCore::ApplyPropertyLength::applyValue):
3316         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3317         * css/CSSStyleSelector.cpp:
3318         (WebCore::CSSStyleSelector::applyProperty):
3319         * css/CSSValue.cpp:
3320         (WebCore::CSSValue::cssText):
3321         (WebCore::CSSValue::destroy):
3322         * css/CSSValue.h:
3323         * css/CSSValueKeywords.in:
3324         * rendering/RenderFlexibleBox.cpp:
3325         * rendering/RenderFlexibleBox.h:
3326         * rendering/RenderObject.cpp:
3327         (WebCore::RenderObject::createObject):
3328         * rendering/RenderObject.h:
3329         (WebCore::RenderObject::isFlexibleBoxIncludingDeprecated):
3330         * rendering/style/RenderStyle.cpp:
3331         (WebCore::RenderStyle::RenderStyle):
3332         (WebCore::RenderStyle::diff):
3333         * rendering/style/RenderStyle.h:
3334         * rendering/style/RenderStyleConstants.h:
3335         * rendering/style/StyleFlexibleBoxData.cpp:
3336         * rendering/style/StyleFlexibleBoxData.h:
3337         * rendering/style/StyleRareNonInheritedData.cpp:
3338         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3339         (WebCore::StyleRareNonInheritedData::operator==):
3340         * rendering/style/StyleRareNonInheritedData.h:
3341
3342 2011-11-14  Vincent Scheib  <scheib@chromium.org>
3343
3344         Mouse Lock: Renaming to 'Pointer Lock': Runtime Enable Flags
3345         https://bugs.webkit.org/show_bug.cgi?id=72303
3346
3347         Reviewed by Darin Fisher.
3348
3349         * bindings/generic/RuntimeEnabledFeatures.cpp:
3350         * bindings/generic/RuntimeEnabledFeatures.h:
3351         (WebCore::RuntimeEnabledFeatures::webkitPointerLockEnabled):
3352         (WebCore::RuntimeEnabledFeatures::setWebkitPointerLockEnabled):
3353         (WebCore::RuntimeEnabledFeatures::webkitPointerEnabled):
3354         * page/Settings.cpp:
3355         (WebCore::Settings::Settings):
3356         * page/Settings.h:
3357         (WebCore::Settings::setPointerLockEnabled):
3358         (WebCore::Settings::PointerLockEnabled):
3359
3360 2011-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>
3361
3362         Unreviewed, rolling out r100176.
3363         http://trac.webkit.org/changeset/100176
3364         https://bugs.webkit.org/show_bug.cgi?id=72309
3365
3366         it broke the Mac builds (missing symbols) in a non-obvious way
3367         (Requested by jchaffraix on #webkit).
3368
3369         * CMakeLists.txt:
3370         * GNUmakefile.list.am:
3371         * Target.pri:
3372         * WebCore.gypi:
3373         * bindings/js/JSWebGLRenderingContextCustom.cpp:
3374         (WebCore::toJS):
3375         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3376         (WebCore::toV8Object):
3377         * html/canvas/WebGLExperimentalCompressedTextures.cpp: Removed.
3378         * html/canvas/WebGLExperimentalCompressedTextures.h: Removed.
3379         * html/canvas/WebGLExperimentalCompressedTextures.idl: Removed.
3380         * html/canvas/WebGLExtension.h:
3381         * html/canvas/WebGLRenderingContext.cpp:
3382         (WebCore::WebGLRenderingContext::getExtension):
3383         (WebCore::WebGLRenderingContext::getParameter):
3384         (WebCore::WebGLRenderingContext::getSupportedExtensions):
3385         * html/canvas/WebGLRenderingContext.h:
3386         * platform/graphics/Extensions3D.h:
3387         * platform/graphics/GraphicsContext3D.h:
3388         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
3389         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3390         * platform/graphics/qt/GraphicsContext3DQt.cpp:
3391
3392 2011-11-14  Tony Chang  <tony@chromium.org>
3393
3394         remove -wap-marquee css propery value
3395         https://bugs.webkit.org/show_bug.cgi?id=72296
3396
3397         Reviewed by Adam Barth.
3398
3399         This css value is no longer used.
3400
3401         * css/CSSValueKeywords.in:
3402
3403 2011-11-14  Julien Chaffraix  <jchaffraix@webkit.org>
3404
3405         Crash in RenderTableSection::splitColumn
3406         https://bugs.webkit.org/show_bug.cgi?id=70171
3407
3408         Reviewed by David Hyatt.
3409
3410         Tests: fast/table/crash-splitColumn-2.html
3411                fast/table/crash-splitColumn-3.html
3412                fast/table/crash-splitColumn.html
3413
3414         The old code would not take into account the fact that each RenderTableSection
3415         can set its m_needsCellRecalc flag independently of the rest.
3416
3417         This means that you cannot assume that you can always split or append columns to
3418         all the sections. Our approach is to skip sections needing cell recalc in several
3419         parts of the code as they will be properly reset to the table's representations
3420         during a cell recalc.
3421
3422         * rendering/RenderTable.cpp:
3423         (WebCore::RenderTable::splitColumn):
3424         (WebCore::RenderTable::appendColumn):
3425         Skip sections needing cell recalc as they will be properly updated later.
3426
3427         * rendering/RenderTableSection.cpp:
3428         (WebCore::RenderTableSection::addCell):
3429         Ignore a section needing cell recalc as addCell will be called after sync'ing
3430         the internal column representation in recalcCells.
3431
3432         (WebCore::RenderTableSection::recalcCells):
3433         Clear the flag at the beginning of the function to activate the previous functions.
3434         Added a comment as to why this is fine.
3435
3436         (WebCore::RenderTableSection::appendColumn):
3437         Added an ASSERT. If we need cell recalc, we should NEVER update m_grid outside
3438         of recalcCells().
3439
3440 2011-11-14  Adam Barth  <abarth@webkit.org>
3441
3442         Remove the concept of an empty SecurityOrigin
3443         https://bugs.webkit.org/show_bug.cgi?id=72287
3444
3445         Reviewed by Eric Seidel.
3446
3447         This concept is fragile and doesn't exist in the specs.  Previous
3448         patches have removed most of the code relying upon this function.  This
3449         patch removes a couple stragglers.
3450
3451         * page/DOMWindow.cpp:
3452         (WebCore::DOMWindow::postMessage):
3453             - This check should really be about unique origins because it
3454               doesn't make sense to target postMessages at unique origins, as
3455               explained in the comment.
3456         * page/SecurityOrigin.cpp:
3457         * page/SecurityOrigin.h:
3458
3459 2011-11-14  Adam Barth  <abarth@webkit.org>
3460
3461         SecurityContext::isSecureTransitionTo should not refer to empty security origins
3462         https://bugs.webkit.org/show_bug.cgi?id=72277
3463
3464         Reviewed by Eric Seidel.
3465
3466         Now that we're tracking the "failed to initialized SecurityOrigin"
3467         state explicitly, we should use that to determine whether we can make a
3468         secure transition.
3469
3470         * dom/SecurityContext.cpp:
3471         (WebCore::SecurityContext::isSecureTransitionTo):
3472
3473 2011-11-14  Vincent Scheib  <scheib@chromium.org>
3474
3475         Mouse Lock: Renaming to 'Pointer Lock': ENABLE Flags
3476         https://bugs.webkit.org/show_bug.cgi?id=72286
3477
3478         Reviewed by Adam Barth.
3479
3480         * bindings/generic/RuntimeEnabledFeatures.cpp:
3481         * bindings/generic/RuntimeEnabledFeatures.h:
3482         * dom/MouseEvent.idl:
3483         * dom/MouseRelatedEvent.h:
3484         * page/MouseLockable.cpp:
3485         * page/MouseLockable.h:
3486         * page/MouseLockable.idl:
3487         * page/Navigator.cpp:
3488         * page/Navigator.h:
3489         * page/Navigator.idl:
3490         * page/Settings.cpp:
3491         (WebCore::Settings::Settings):
3492         * page/Settings.h:
3493