[Qt][Mac] Build fails after adding ICU support (r105997).
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-01-27  Zeno Albisser  <zeno@webkit.org>
2
3         [Qt][Mac] Build fails after adding ICU support (r105997).
4         https://bugs.webkit.org/show_bug.cgi?id=77118
5
6         Use SmareReplaceCF.cpp code path if platform Mac.
7
8         Reviewed by Tor Arne Vestbø.
9
10         * Target.pri:
11
12 2012-01-27  Ilya Tikhonovsky  <loislo@chromium.org>
13
14         Web Inspector: detailed heap snapshot: Replace (Native objects) root element
15         with '(Detached DOM trees)' and '(Document DOM trees)'
16         https://bugs.webkit.org/show_bug.cgi?id=77201
17
18         I think it'd be nice to replace one group containing all native objects with
19         separate groups for different types of native objects.
20
21         Reviewed by Yury Semikhatsky.
22
23         * bindings/v8/RetainedDOMInfo.cpp:
24         (WebCore::RetainedDOMInfo::GetGroupLabel):
25         (WebCore):
26         * bindings/v8/RetainedDOMInfo.h:
27         (RetainedDOMInfo):
28
29 2012-01-27  Nikolas Zimmermann  <nzimmermann@rim.com>
30
31         <feImage> doesn't work with local references when using primitiveUnits="objectBoundingBox"
32         https://bugs.webkit.org/show_bug.cgi?id=77205
33
34         Reviewed by Antti Koivisto.
35
36         Consider following testcase:
37         <svg width="1000" height="500">
38         <defs>
39             <circle id="c" cx="50%" cy="50%" r="10%"/>
40             <filter id="f" filterUnits="userSpaceOnUse" x="0" y="0" width="100" height="100" primitiveUnits="objectBoundingBox">
41                 <feImage xlink:href="#c"/>
42             </filter>
43         </defs>
44         <rect width="100" height="100" filter="url(#f)"/>
45         </svg>
46
47         The <svg> has a viewport of 1000x50. The <circle> in the <defs> element is resolved as <circle cx="500" cy="250" r="79"/>,
48         as the context for this element (looking at it isolated!) is the viewport of the <svg>. We then setup a 0x0 - 100x100 rect
49         in user space, which gets filtered, by a filter, also defined in user space (for simplicity), but with primitiveUnits="objectBoundingBox".
50
51         That means that the default subregion of the filter effect <feImage/> which has no inputs, is defined in the SVG 1.1 spec to be equal to
52         the filter region, which is 0x0-100x100 in user space. This <feImage/> is supposed to produce a 100x100 image, containing a circle in the
53         middle (aka. <circle cx="50" cy="50".../>), but it doesn't, as the <circle> it's trying to paint, is laid out at 500x250, and thus outside
54         the 100x100 sized image buffer.
55
56         So how to resolve this?
57         The RenderSVGShape thats owned by the <circle> generates its Path value by calling cx().value(lengthContext) and the SVGLengthContext here
58         resolves to the <svg>. That happens on _layout_. If we would want to change the SVGLengthContext in this case (what I originally planned!)
59         to carry a custom 100x100 viewport, we'd need to relayout. Unfortunately this is not an option, as this would mean that
60         SVGImageBufferTools::renderSubtreeToImageBuffer, would need to relayout its children first, but we produce the filter images when painting.
61         This is very dangerous and has just recently been fixed so that SVGImageBufferTools can ASSERT(!item->needsLayout()) when painting the
62         subtree to an image buffer.
63
64         The only sane solution I see, that does not require relayouts, is to make a map between the <circle> bounding box in user space (500x250
65         center point) to the filter primitive subregion space (here: 100x100 center point), and concat that transformation before painting the
66         subtree to the image buffer. Of course this approach only works if all values of the <circle> are relative. If someone uses
67         <circle id="c" cx="50%" cy="666"> the transformation that I'm looking for is undefined. We'd really need to create a new Path here, to
68         resolve only cx against the new viewport, and not cy.
69
70         Though in practice it turns out this is not a problem. All use cases of feImage + primitiveUnits="objectBoundingBox" link to elements
71         that are completely defined in percentual values, as this is really the only thing which makes sense - otherwise you can always switch
72         back to primtiveUnits="userSpaceOnUse". Anyhow, I'm going to fix all known wild-life test cases by my approach, and say we don't support
73         using mixed length units when referencing those elements from feImages with primitiveUnits="objectBoundingBox".
74
75         Adding lots of new testcases, trying all the different feImage modes.
76
77         Tests: svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-objectBoundingBox.svg
78                svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-userSpaceOnUse.svg
79                svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-objectBoundingBox.svg
80                svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-userSpaceOnUse.svg
81                svg/filters/feImage-position.svg
82                svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox.svg
83                svg/filters/feImage-subregions-preseveAspectRatio-none.svg
84                svg/filters/feImage-subregions.svg
85
86         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
87         (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion): Reverse logic, simplifying the code a bit. Remove FEImage special cases (absoluteSubregion).
88         * svg/SVGLengthContext.h: Make determineViewport() public, for use in FEImage.
89         * svg/graphics/filters/SVGFEImage.cpp:
90         (WebCore::FEImage::determineAbsolutePaintRect): Don't apply preserveAspectRatio transformation for local elements, it's not defined and breaks content.
91         (WebCore::FEImage::platformApplySoftware): Figure out the absolute subregion by utilizing filterPrimitiveSubregion() as FETurbulence does.
92                                                    Map between filter primitive subregion and target object space for primitiveUnits="objectBoundingBox" support on SVG element references.
93         * svg/graphics/filters/SVGFEImage.h: Remove absoluteSubregion member & setter, it's no longer needed.
94
95 2012-01-26  Vsevolod Vlasov  <vsevik@chromium.org>
96
97         Web Inspector: Scripts panel: fix event dispatching between FileSelector and EditorContainer.
98         https://bugs.webkit.org/show_bug.cgi?id=77126
99
100         Reviewed by Pavel Feldman.
101
102         * inspector/front-end/ScriptsPanel.js:
103         (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
104         (WebInspector.ScriptsPanel.prototype._reset):
105         (WebInspector.ScriptsPanel.prototype._showSourceLine):
106         (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
107         (WebInspector.ScriptsPanel.prototype._editorClosed):
108         (WebInspector.ScriptsPanel.prototype._editorSelected):
109         (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
110         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
111         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
112         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
113         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
114         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
115         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
116         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
117         * inspector/front-end/TabbedEditorContainer.js:
118         (WebInspector.TabbedEditorContainer):
119         (WebInspector.TabbedEditorContainer.prototype._tabClosed):
120         (WebInspector.TabbedEditorContainer.prototype._tabSelected):
121         (WebInspector.TabbedEditorContainer.prototype.reset):
122
123 2012-01-27  Nikolas Zimmermann  <nzimmermann@rim.com>
124
125         <feImage> DOM mutation problems
126         https://bugs.webkit.org/show_bug.cgi?id=77198
127
128         Reviewed by Antti Koivisto.
129
130         Consider <feImage xlink:href="#rect"/>, where <rect> gets dynamically added to the tree.
131         Currently <feImage> doesn't notice this, as it doesn't register itself pending on "#rect".
132
133         Integrate <feImage> properly within the pending resources concept, fixing the bug.
134
135         Tests: svg/filters/feImage-target-add-to-document.svg
136                svg/filters/feImage-target-changes-id.svg
137                svg/filters/feImage-target-id-change.svg
138                svg/filters/feImage-target-reappend-to-document.svg
139                svg/filters/feImage-target-remove-from-document.svg
140
141         * svg/SVGFEImageElement.cpp: Rename invalidateImageResource to clearResourceReferences.
142         (WebCore::SVGFEImageElement::~SVGFEImageElement): Call clearResourceReferences.
143         (WebCore::SVGFEImageElement::clearResourceReferences): Remove any occurence of m_targetImage, it's no longer used.
144         (WebCore::SVGFEImageElement::requestImageResource): requestImageResource is now called by buildPendingResource.
145         (WebCore::SVGFEImageElement::buildPendingResource): Called whenever any element that we depend on gets resolved - now invalidates the <filter>.
146         (WebCore::SVGFEImageElement::parseMappedAttribute): Don't start loading from parseMappedAttribute.
147         (WebCore::SVGFEImageElement::svgAttributeChanged): Start loading from here, for consistency with SVGImageElement.
148         (WebCore::SVGFEImageElement::insertedIntoDocument): Invoke buildPendingResource(), if we enter the tree.
149         (WebCore::SVGFEImageElement::removedFromDocument): Clear m_cachedImage as soon as we get removed from the tree.
150         (WebCore::SVGFEImageElement::build): Clean up this function, m_targetImage is no longer exist.
151         * svg/SVGFEImageElement.h: Remove OwnPtr<ImageBuffer> m_targetImage, which is no longer used.
152
153 2012-01-26  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
154
155         [Qt] WKTR: Use a software rendering pipiline when running tests.
156         https://bugs.webkit.org/show_bug.cgi?id=76708
157
158         Reviewed by Kenneth Rohde Christiansen.
159
160         * platform/graphics/qt/TextureMapperQt.cpp: Allow setting the context to null.
161         (WebCore::TextureMapperQt::setGraphicsContext):
162         * platform/graphics/qt/TextureMapperQt.h:
163         (WebCore::TextureMapperQt::initialize):
164
165 2012-01-27  Branimir Lambov  <blambov@google.com>
166
167         SVG filters incorrectly move elements
168         https://bugs.webkit.org/show_bug.cgi?id=73643
169
170         Reviewed by Nikolas Zimmermann.
171
172         Fixes SVG image buffer creation to use the enclosing integer rect
173         instead of unstable rounded coordinates with scaling which was causing
174         animated images to jump around under filters. The image buffer was not 
175         aligned on a pixel boundary, and thus the positions and sizes of anything
176         drawn under that filter changed by 1-2 pixels compared to the same
177         elements drawn without an intermediate buffer, or drawn with a buffer
178         with a different target rectangle. 
179         
180         The change improves the positioning of clip paths, masks and filters.
181
182         Tests: svg/clip-path/clip-in-clip.svg
183                svg/clip-path/clipper-placement-issue.svg
184                svg/filters/filter-placement-issue.svg
185
186         * platform/graphics/filters/FETile.cpp:
187         (WebCore::FETile::platformApplySoftware):
188         * rendering/svg/RenderSVGResourceClipper.cpp:
189         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
190         * rendering/svg/RenderSVGResourceFilter.cpp:
191         (WebCore::RenderSVGResourceFilter::applyResource):
192         * rendering/svg/RenderSVGResourceGradient.cpp:
193         (WebCore::createMaskAndSwapContextForTextGradient):
194         (WebCore::clipToTextMask):
195         * rendering/svg/RenderSVGResourceMasker.cpp:
196         (WebCore::RenderSVGResourceMasker::applyResource):
197         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
198         * rendering/svg/RenderSVGResourcePattern.cpp:
199         (WebCore::RenderSVGResourcePattern::createTileImage):
200         * rendering/svg/SVGImageBufferTools.cpp:
201         (WebCore::SVGImageBufferTools::createImageBuffer):
202         (WebCore::SVGImageBufferTools::createImageBufferForPattern):
203         (WebCore::SVGImageBufferTools::clipToImageBuffer):
204         (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRect):
205         (WebCore::SVGImageBufferTools::clampedAbsoluteSize):
206         * rendering/svg/SVGImageBufferTools.h:
207         (WebCore::SVGImageBufferTools::calcImageBufferRect):
208
209 2012-01-25  Yury Semikhatsky  <yurys@chromium.org>
210
211         Web Inspector: should be possible to open function declaration from script popover
212         https://bugs.webkit.org/show_bug.cgi?id=76913
213
214         Added inferred/display function name and source location to the popover in scripts panel.
215         Now when a function is hovered user can navigate to its definition.
216
217         Reviewed by Pavel Feldman.
218
219         Test: inspector/debugger/function-details.html
220
221         * bindings/js/JSInjectedScriptHostCustom.cpp:
222         (WebCore::JSInjectedScriptHost::functionDetails):
223         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
224         (WebCore::V8InjectedScriptHost::functionDetailsCallback):
225         * inspector/InjectedScript.cpp:
226         (WebCore::InjectedScript::getFunctionDetails):
227         * inspector/InjectedScript.h:
228         (InjectedScript):
229         * inspector/InjectedScriptHost.idl:
230         * inspector/InjectedScriptSource.js:
231         (.):
232         * inspector/Inspector.json:
233         * inspector/InspectorDebuggerAgent.cpp:
234         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
235         * inspector/InspectorDebuggerAgent.h:
236         (InspectorDebuggerAgent):
237         * inspector/front-end/DebuggerPresentationModel.js:
238         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyFunctionLocation):
239         * inspector/front-end/ObjectPopoverHelper.js:
240         (WebInspector.ObjectPopoverHelper):
241         (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
242         (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
243         (WebInspector.ObjectPopoverHelper.prototype._onHideObjectPopover):
244         * inspector/front-end/ObjectPropertiesSection.js:
245         (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired):
246         (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired.revealFunction):
247         * inspector/front-end/RemoteObject.js:
248         (WebInspector.RemoteObject):
249         (WebInspector.RemoteObject.fromPayload):
250         (WebInspector.RemoteObject.prototype.get functionName):
251         * inspector/front-end/scriptsPanel.css:
252         (.function-location-link):
253         (.function-popover-title):
254         (.function-popover-title .function-name):
255
256 2012-01-26  Noel Gordon  <noel.gordon@gmail.com>
257
258         Remove FIXME: ColorProfile encapsulation as a Vector<char> works well 
259         https://bugs.webkit.org/show_bug.cgi?id=77176
260
261         Reviewed by Adam Barth.
262
263         No new tests. No change in behavior.
264
265         * platform/image-decoders/ImageDecoder.h:
266
267 2012-01-26  Matthew Delaney  <mdelaney@apple.com>
268
269         ImageBuffer::draw should deep copy if drawing to an accelerated context
270         https://bugs.webkit.org/show_bug.cgi?id=77185
271
272         Reviewed by Simon Fraser.
273
274         No new tests since any test for this issue would be flaky at best.
275
276         * platform/graphics/cg/ImageBufferCG.cpp: Deep copy when drawing ourself into
277             an accelerated context for both draw and drawPattern.
278         (WebCore::ImageBuffer::draw):
279         (WebCore::ImageBuffer::drawPattern):
280
281 2012-01-26  Kevin Ollivier  <kevino@theolliviers.com>
282
283         [wx] Unreviewed. Build fixes.
284         - Remove some constructors not generated by CPP bindings
285           from being added to CPP binding headers
286         - Keyboard event fixes after modifier changes
287         - Add stubs for Language and RunLoop platform methods
288
289         * bindings/scripts/CodeGeneratorCPP.pm:
290         (GetNamespaceForClass):
291         (GenerateImplementation):
292         * platform/mac/WebCoreSystemInterface.h:
293         * platform/wx/KeyboardEventWx.cpp:
294         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
295         * platform/wx/LanguageWx.cpp: Added.
296         (WebCore):
297         (WebCore::platformLanguage):
298         (WebCore::platformUserPreferredLanguages):
299         * platform/wx/RunLoopWx.cpp: Added.
300         (WebCore):
301         (WebCore::RunLoop::run):
302         (WebCore::RunLoop::stop):
303         (WebCore::RunLoop::RunLoop):
304         (WebCore::RunLoop::~RunLoop):
305         (WebCore::RunLoop::wakeUp):
306         * storage/DOMWindowSQLDatabase.idl:
307         * webaudio/DOMWindowWebAudio.idl:
308         * websockets/DOMWindowWebSocket.idl:
309
310 2012-01-26  Sheriff Bot  <webkit.review.bot@gmail.com>
311
312         Unreviewed, rolling out r105486.
313         http://trac.webkit.org/changeset/105486
314         https://bugs.webkit.org/show_bug.cgi?id=77182
315
316         This patch doesn't take web workers into account. (Requested
317         by dave_levin on #webkit).
318
319         * html/DOMURL.cpp:
320         (WebCore::DOMURL::DOMURL):
321         (WebCore::DOMURL::~DOMURL):
322         (WebCore::DOMURL::contextDestroyed):
323         (WebCore):
324         (WebCore::DOMURL::createObjectURL):
325         (WebCore::DOMURL::revokeObjectURL):
326         * html/DOMURL.h:
327         (WebCore::DOMURL::create):
328         (DOMURL):
329         * html/DOMURL.idl:
330         * page/DOMWindow.cpp:
331         (WebCore):
332         (WebCore::DOMWindow::webkitURL):
333         * page/DOMWindow.h:
334         (DOMWindow):
335         ():
336         * page/DOMWindow.idl:
337         * workers/WorkerContext.cpp:
338         (WebCore):
339         (WebCore::WorkerContext::webkitURL):
340         (WebCore::WorkerContext::webkitRequestFileSystem):
341         * workers/WorkerContext.h:
342         (WorkerContext):
343         ():
344         * workers/WorkerContext.idl:
345
346 2012-01-26  Noel Gordon  <noel.gordon@gmail.com>
347
348         Cleanup JPEGImageDecoder includes
349         https://bugs.webkit.org/show_bug.cgi?id=77171
350
351         Reviewed by Adam Barth.
352
353         No new tests. Refactoring cleanup only.
354
355         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
356
357 2012-01-26  Tim Horton  <hortont424@gmail.com>
358
359         3D transformed elements hide when showing the print dialog
360         https://bugs.webkit.org/show_bug.cgi?id=45894
361         <rdar://problem/7441593>
362
363         Reviewed by Andy Estes.
364
365         Suspend updates of the compositing layer tree while printing is taking place,
366         preventing on-screen layers from moving to their print-mode positions.
367
368         No new tests, as WebKitTestRunner doesn't support putting the document
369         into printing mode.
370
371         * page/FrameView.cpp:
372         (WebCore::FrameView::syncCompositingStateForThisFrame):
373         (WebCore::FrameView::paintContents):
374         * platform/graphics/ca/LayerFlushScheduler.h:
375         (WebCore::LayerFlushScheduler::isSuspended): Added.
376
377 2012-01-26  Pablo Flouret  <pablof@motorola.com>
378
379         Fix bad code generated by the JSC idl code generator for [CachedAttribute] attributes
380         https://bugs.webkit.org/show_bug.cgi?id=77165
381
382         Reviewed by Oliver Hunt.
383
384         Missing parameter in a call to deserialize() and using 'this' in the
385         attribute accessor functions (which are static).
386
387         * bindings/scripts/CodeGeneratorJS.pm:
388         (GenerateImplementation):
389         (NativeToJSValue):
390         * bindings/scripts/test/JS/JSTestObj.cpp:
391         (WebCore::jsTestObjCachedAttribute1):
392         (WebCore::jsTestObjCachedAttribute2):
393         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
394         (WebCore::jsTestSerializedScriptValueInterfaceValue):
395
396 2012-01-26  W. James MacLean  <wjmaclean@chromium.org>
397
398         [chromium] Allow modification of size of partially occluded quads during culling to reduce pixel overdraw.
399         https://bugs.webkit.org/show_bug.cgi?id=76349
400
401         Reviewed by James Robinson.
402
403         Prior to this patch, draw culling either rejects a DrawQuad because it is completely
404         occluded, or draws the entire quad (even if it is largely occluded). This patch
405         attempts to reduce the number of pixels drawn by determining if a partially
406         occluded DrawQuad can be resized to a smaller quad, based on what portion of the
407         DrawQuad is actually visible, and performing that resizing where possible.
408
409         Added cases to existing unit tests.
410
411         * platform/graphics/chromium/LayerRendererChromium.cpp:
412         (WebCore::LayerRendererChromium::drawTileQuad):
413         * platform/graphics/chromium/cc/CCDrawQuad.cpp:
414         (WebCore::CCDrawQuad::CCDrawQuad):
415         * platform/graphics/chromium/cc/CCDrawQuad.h:
416         (WebCore::CCDrawQuad::setQuadVisibleRect):
417         (WebCore::CCDrawQuad::quadVisibleRect):
418         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
419         (WebCore::rectSubtractRegion):
420         (WebCore::CCQuadCuller::cullOccludedQuads):
421
422 2012-01-26  Anders Carlsson  <andersca@apple.com>
423
424         Scrollbars disappear when switching from legacy to overlay scrollbars
425         https://bugs.webkit.org/show_bug.cgi?id=77166
426
427         Reviewed by Dan Bernstein.
428
429         * platform/ScrollView.cpp:
430         (WebCore::ScrollView::scrollbarStyleChanged):
431         Call positionScrollbarLayers to make sure that the new scrollbar layers are positioned correctly.
432
433         * platform/mac/ScrollAnimatorMac.mm:
434         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
435         Call ScrollbarThemeMac::setNewPainterForScrollbar after making the call to the scrollbar painter controller
436         to set the horizontal or vertical imp, since setting the imp will reset the knob style.
437
438 2012-01-26  Adam Barth  <abarth@webkit.org>
439
440         NULL ptr in WebCore::ContainerNode::parserAddChild
441         https://bugs.webkit.org/show_bug.cgi?id=76258
442
443         Reviewed by Eric Seidel.
444
445         Test: fast/parser/nested-fragment-parser-crash.html
446
447         We always need a parent element to attach to.  In crazy cases, we can
448         have elements in the stack of open elements that are already detached
449         from the DOM.  In those cases, they don't have a parent, so we aren't
450         able to enforce the maximum DOM depth.  (Fortunately, they're not
451         attached to the DOM anymore so we don't need to enforce the maximum DOM
452         depth!)
453
454         * html/parser/HTMLConstructionSite.cpp:
455         (WebCore::HTMLConstructionSite::attachLater):
456         (WebCore::HTMLConstructionSite::fosterParent):
457
458 2012-01-26  Cris Neckar  <cdn@chromium.org>
459
460         The registration of schemes is currently racey as they are not registered from the main thread. 
461         Getting rid of the assert that ensures that we are registering from the main thread until we can fix this.
462
463         Thank you ap@webkit for helping us identify this.
464
465         https://bugs.webkit.org/show_bug.cgi?id=77160
466
467         Reviewed by Adam Barth.
468
469         * platform/SchemeRegistry.cpp:
470         (WebCore::CORSEnabledSchemes):
471
472 2012-01-26  Anders Carlsson  <andersca@apple.com>
473
474         We don't need to always repaint overlay scrollbars if they're in layers
475         https://bugs.webkit.org/show_bug.cgi?id=77159
476
477         Reviewed by Beth Dakin.
478
479         If a scrollable area has overlay scrollbars we'll always invalidate both scrollbars, regardless of
480         whether both scroll offsets actually change since they're translucent and we want to draw the new page
481         contents underneath.
482         
483         However, if the scrollbars are painted into GraphicsLayers they'll be composited by the GPU, and so we don't
484         need to repaint them unless the corresponding scroll offset actually changes (which is handled in Scrollbar::updateThumb).
485
486         * platform/ScrollableArea.cpp:
487         (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
488
489 2012-01-26  Joshua Bell  <jsbell@chromium.org>
490
491         IndexedDB: WebCore::IDBKey objects are leaked
492         https://bugs.webkit.org/show_bug.cgi?id=77114
493
494         Reviewed by Tony Chang.
495
496         Fixing memory leaks, no new tests.
497
498         * storage/IDBKey.h:
499         (WebCore::IDBKey::createInvalid):
500         (WebCore::IDBKey::createNumber):
501         (WebCore::IDBKey::createString):
502         (WebCore::IDBKey::createDate):
503         (WebCore::IDBKey::createArray):
504
505 2012-01-25  Cris Neckar  <cdn@chromium.org>
506
507         Add a scheme registry for CORS requests. Allow simple CORS requests to be made to registered schemes.
508         https://bugs.webkit.org/show_bug.cgi?id=77041
509
510         Reviewed by Alexey Proskuryakov.
511
512         * loader/DocumentThreadableLoader.cpp:
513         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
514         * platform/SchemeRegistry.cpp:
515         (WebCore::CORSEnabledSchemes):
516         (WebCore):
517         (WebCore::SchemeRegistry::registerCORSEnabledScheme):
518         (WebCore::SchemeRegistry::isCORSEnabledScheme):
519         * platform/SchemeRegistry.h:
520         (SchemeRegistry):
521
522 2012-01-26  Noel Gordon  <noel.gordon@gmail.com>
523
524         File extension for webp files is .webp
525         https://bugs.webkit.org/show_bug.cgi?id=76982
526
527         Reviewed by Adam Barth.
528
529         No new tests. No change in behavior.
530
531         * platform/image-decoders/webp/WEBPImageDecoder.h:
532         (WebCore::WEBPImageDecoder::filenameExtension):
533
534 2012-01-26  Alok Priyadarshi  <alokp@chromium.org>
535
536         [chromium] Remove dead and unnecessary code related to LayerChromium::cleanupResources
537         https://bugs.webkit.org/show_bug.cgi?id=77137
538
539         Reviewed by James Robinson.
540
541         No new test needed. Only removing dead code.
542
543         * platform/graphics/chromium/LayerChromium.cpp:
544         * platform/graphics/chromium/LayerChromium.h:
545         (WebCore::LayerChromium::layerTreeHost):
546         * platform/graphics/chromium/TiledLayerChromium.cpp:
547         (WebCore::TiledLayerChromium::setLayerTreeHost):
548
549 2012-01-26  Anders Carlsson  <andersca@apple.com>
550
551         Move horizontal rubber-band checks to ScrollElasticityController::handleWheelEvent
552         https://bugs.webkit.org/show_bug.cgi?id=77147
553
554         Reviewed by Adam Roben.
555
556         * platform/mac/ScrollAnimatorMac.h:
557         (ScrollAnimatorMac):
558         * platform/mac/ScrollAnimatorMac.mm:
559         (WebCore::ScrollAnimatorMac::handleWheelEvent):
560         Always call ScrollElasticityController::handleWheelEvent, and only call didBeginScrollGesture and
561         didEndScrollGesture if the event was actually handled.
562
563         (WebCore::ScrollAnimatorMac::shouldRubberBandInDirection):
564         Implement this.
565
566         * platform/mac/ScrollElasticityController.h:
567         * platform/mac/ScrollElasticityController.mm:
568         (WebCore::ScrollElasticityController::handleWheelEvent):
569         Check if we should rubber-band and return false if we shouldn't.
570
571         (WebCore::ScrollElasticityController::shouldRubberBandInHorizontalDirection):
572         Ask the client if we should rubber-band.
573
574 2012-01-19  James Robinson  <jamesr@chromium.org>
575
576         [chromium] Remove setLayerTreeHost nonsense on lost context
577         https://bugs.webkit.org/show_bug.cgi?id=76675
578
579         Reviewed by Kenneth Russell.
580
581         This code isn't needed any more. On a lost context event, we drop all TextureManager-managed textures through
582         the proxy and no layer types need special lost context handling.
583
584         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
585         (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
586
587 2012-01-26  Anders Carlsson  <andersca@apple.com>
588
589         Simplify checking of whether we should rubberband horizontally
590         https://bugs.webkit.org/show_bug.cgi?id=77141
591
592         Reviewed by Adam Roben.
593
594         Have a single check for horizontal rubber-banding in both directions. This is in preparation
595         for moving this code into ScrollElasticityController.
596
597         * platform/mac/ScrollAnimatorMac.mm:
598         (WebCore::shouldRubberBandInHorizontalDirection):
599         (WebCore::ScrollAnimatorMac::handleWheelEvent):
600
601 2012-01-26  Scott Graham  <scottmg@chomium.org>
602
603         Fix include path in gyp file for V8InternalSettings.h
604         https://bugs.webkit.org/show_bug.cgi?id=77128
605
606         Reviewed by Kent Tamura.
607
608         * WebCore.gyp/WebCore.gyp:
609
610 2012-01-26  James Robinson  <jamesr@chromium.org>
611
612         We shouldn't synchronously update styles on all documents after running script
613         https://bugs.webkit.org/show_bug.cgi?id=46761
614
615         Reviewed by Simon Fraser.
616
617         Currently we call Document::updateStyleForAllDocuments() after invoking any event or timeout handler. This is
618         slow since it iterates over the entire document tree and defeats our recalcStyle timer batching. It is
619         unnecessary as any code that depends on styles or the render tree being up to date must call
620         updateStyleIfNeeded() on the document it is accessing.
621
622         The first reference I can find to this code is in r798 in the file WebCore/khtml/xml/domnode_impl.cpp. It's been
623         cargo culted forward ever since.
624
625         * bindings/ScriptControllerBase.cpp:
626         (WebCore::ScriptController::executeScript):
627         * bindings/js/ScheduledAction.cpp:
628         (WebCore::ScheduledAction::execute):
629         * bindings/js/ScriptController.cpp:
630         (WebCore::ScriptController::ScriptController):
631         (WebCore::ScriptController::executeScriptInWorld):
632         * bindings/js/ScriptController.h:
633         * bindings/v8/ScheduledAction.cpp:
634         (WebCore::ScheduledAction::execute):
635         * bindings/v8/ScriptController.cpp:
636         (WebCore::ScriptController::ScriptController):
637         * bindings/v8/ScriptController.h:
638         * dom/ScriptElement.cpp:
639         (WebCore::ScriptElement::executeScript):
640         * inspector/InspectorClient.cpp:
641         (WebCore::InspectorClient::doDispatchMessageOnFrontendPage):
642
643 2012-01-26  Anders Carlsson  <andersca@apple.com>
644
645         Get rid of ScrollElasticityController::beginScrollGesture()
646         https://bugs.webkit.org/show_bug.cgi?id=77138
647
648         Reviewed by Adam Roben.
649
650         ScrollElasticityController::handleWheelEvent now checks if the wheel event phase is
651         PlatformWheelEventPhaseBegan and sets up the gesture state if it is.
652
653         * platform/mac/ScrollAnimatorMac.mm:
654         (WebCore::ScrollAnimatorMac::handleWheelEvent):
655         * platform/mac/ScrollElasticityController.h:
656         (ScrollElasticityController):
657         * platform/mac/ScrollElasticityController.mm:
658         (WebCore::ScrollElasticityController::handleWheelEvent):
659
660 2012-01-26  Anders Carlsson  <andersca@apple.com>
661
662         Get rid of ScrollElasticityController::endScrollGesture()
663         https://bugs.webkit.org/show_bug.cgi?id=77134
664
665         Reviewed by Adam Roben.
666
667         Just make ScrollElasticityController::handleWheelEvent call snapRubberBand if the wheel
668         event phase is PlatformWheelEventPhaseEnded.
669
670         * platform/mac/ScrollAnimatorMac.mm:
671         (WebCore::ScrollAnimatorMac::handleWheelEvent):
672         * platform/mac/ScrollElasticityController.h:
673         (ScrollElasticityController):
674         * platform/mac/ScrollElasticityController.mm:
675         (WebCore::ScrollElasticityController::handleWheelEvent):
676
677 2012-01-26  Abhishek Arya  <inferno@chromium.org>
678
679         Crash in SVGSVGElement::currentViewBoxRect.
680         https://bugs.webkit.org/show_bug.cgi?id=77121
681
682         Reviewed by Nikolas Zimmermann.
683
684         Symbols shouldn't be rendered. Revert the ASSERT
685         from r105513 into a hard check.
686
687         Test: svg/custom/symbol-viewport-element-crash.svg
688
689         * svg/SVGLengthContext.cpp:
690         (WebCore::SVGLengthContext::determineViewport):
691
692 2012-01-26  Anders Carlsson  <andersca@apple.com>
693
694         Inline beginScrollGesture/endScrollGesture in handleWheelEvent
695         https://bugs.webkit.org/show_bug.cgi?id=77133
696
697         Reviewed by Andreas Kling.
698
699         * platform/mac/ScrollAnimatorMac.h:
700         (ScrollAnimatorMac):
701         * platform/mac/ScrollAnimatorMac.mm:
702         (WebCore::ScrollAnimatorMac::handleWheelEvent):
703
704 2012-01-26  Anders Carlsson  <andersca@apple.com>
705
706         No need to set m_haveScrolledSincePageLoad in beginScrollGesture
707         https://bugs.webkit.org/show_bug.cgi?id=77132
708
709         Reviewed by Andreas Kling.
710
711         m_haveScrolledSincePageLoad is already set to true in handleWheelEvent so we don't need
712         to set it to true again.
713
714         * platform/mac/ScrollAnimatorMac.mm:
715         (WebCore::ScrollAnimatorMac::beginScrollGesture):
716
717 2012-01-26  Anders Carlsson  <andersca@apple.com>
718
719         Simplify checking for whether we should rubberband or not when at the edge
720         https://bugs.webkit.org/show_bug.cgi?id=77131
721
722         Reviewed by Beth Dakin.
723
724         We only need to check once if we're pinned at either edge whether we should rubber-band
725         or not. Do this when the wheel event phase is PlatformWheelEventPhaseBegan. This lets us
726         remove a bunch of code that would keep track of the current horizontal scroll direction.
727
728         * platform/mac/ScrollAnimatorMac.h:
729         (ScrollAnimatorMac):
730         * platform/mac/ScrollAnimatorMac.mm:
731         (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
732         (WebCore::ScrollAnimatorMac::handleWheelEvent):
733         (WebCore::ScrollAnimatorMac::beginScrollGesture):
734
735 2012-01-26  Eli Fidler  <efidler@rim.com>
736
737         [JSC] Inspector instrumentation for JavaScript calls.
738         https://bugs.webkit.org/show_bug.cgi?id=40119
739
740         Reviewed by Geoffrey Garen.
741
742         Covered by existing Chromium inspector tests
743
744         * bindings/js/JSCallbackData.cpp:
745         (WebCore::JSCallbackData::invokeCallback):
746         * bindings/js/JSEventListener.cpp:
747         (WebCore::JSEventListener::handleEvent):
748         * bindings/js/JSMainThreadExecState.h:
749         (WebCore::JSMainThreadExecState::instrumentedCall):
750         * inspector/InspectorInstrumentation.cpp:
751         (WebCore::InspectorInstrumentation::willCallFunctionImpl):
752
753 2012-01-26  Mike Reed  <reed@google.com>
754
755         Signal to skia to force A8 text from LCD output, but only when we have to disable LCD because we're in a layer
756         https://bugs.webkit.org/show_bug.cgi?id=76547
757
758         Reviewed by Stephen White.
759
760         Existing tests should confirm nothing is broken. Antialiased text
761         is disabled in layouttests, so they should be unaffected by the
762         difference in antialiasing quality.
763
764         * platform/graphics/skia/SkiaFontWin.cpp:
765         (WebCore::setupPaintForFont):
766
767
768 2012-01-26  Anders Carlsson  <andersca@apple.com>
769
770         Use PlatformWheelEvent::phase() to determine if a scroll gesture begins or ends
771         https://bugs.webkit.org/show_bug.cgi?id=77127
772
773         Reviewed by Beth Dakin.
774
775         * platform/mac/ScrollAnimatorMac.h:
776         (ScrollAnimatorMac):
777         Remove handleGestureEvent.
778
779         * platform/mac/ScrollAnimatorMac.mm:
780         (WebCore::ScrollAnimatorMac::handleWheelEvent):
781         Look at the event phase to determine when to call didBeginGesture and didEndGesture.
782
783 2012-01-26  Benjamin Poulain  <benjamin@webkit.org>
784
785         Using strncmp() for comparing scheme and port numbers is inefficient
786         https://bugs.webkit.org/show_bug.cgi?id=75821
787
788         Reviewed by Darin Adler.
789
790         Replace the equal() function comparing 2 arbitrary strings by a template
791         comparing the string to an array, character by character.
792
793         This is only used for small strings: the schemes and the ports.
794
795         * platform/KURL.cpp:
796         (WebCore::equal):
797         (WebCore::isDefaultPortForScheme):
798         (WebCore::isNonFileHierarchicalScheme):
799         (WebCore::isCanonicalHostnameLowercaseForScheme):
800
801 2012-01-26  Anders Carlsson  <andersca@apple.com>
802
803         WebWheelEvent::Phase and PlatformWheelEvent::Phase declarations should match AppKit
804         https://bugs.webkit.org/show_bug.cgi?id=77123
805
806         Reviewed by Beth Dakin.
807
808         * platform/PlatformWheelEvent.h:
809         ():
810         * platform/mac/PlatformEventFactoryMac.mm:
811         (WebCore::phaseForEvent):
812
813 2012-01-26  Daniel Cheng  <dcheng@chromium.org>
814
815         Revert code changes from r105800
816         https://bugs.webkit.org/show_bug.cgi?id=77071
817
818         The strings are already lowercased in EventHandler.cpp:findDropZone() so there's
819         no need to call lower() again.
820
821         Reviewed by Tony Chang.
822
823         Covered by existing tests.
824
825         * dom/Clipboard.cpp:
826         (WebCore::Clipboard::hasDropZoneType):
827
828 2012-01-26  Stephen Chenney  <schenney@chromium.org>
829
830         REGRESSION (r91125): Polyline tool in google docs is broken
831         https://bugs.webkit.org/show_bug.cgi?id=65796
832
833         Reviewed by Nikolas Zimmermann.
834
835         It turns out that the CG problem is a design decision. The bounding code
836         returns CGRectNull for cases where a bound is ill-defined, rather than the
837         empty bound as expected.
838
839         I'm also removing the workaround for isEmpty to get correct zero length paths.
840         It is no longer necessary.
841
842         Tested by existing layout tests.
843
844         * platform/graphics/cg/PathCG.cpp: Removed path empty and path bound testing classes.
845         (WebCore::Path::boundingRect): Added check for CGRectNull
846         (WebCore::Path::fastBoundingRect): Added check for CGRectNull
847         (WebCore::Path::strokeBoundingRect): Added check for CGRectNull
848         (WebCore::Path::isEmpty): Reverted to former behavior, just using CGPathIsEmpty.
849         (WebCore::Path::hasCurrentPoint): Reverted to former behavior, using isEmpty.
850         (WebCore::Path::transform): Reverted to former behavior, using isEmpty.
851
852 2012-01-26  Andreas Kling  <awesomekling@apple.com>
853
854         Refactor application of additional style attributes for table elements.
855         <http://webkit.org/b/77095>
856
857         Reviewed by Darin Adler.
858
859         The primary purpose of this change is to reduce usage of CSSMappedAttributeDeclaration.
860         Instead of using the mapped attribute decl table for additional table style, just use
861         regular CSSMutableStyleDeclarations. We cache them all globally, except for the style
862         that's shared between a table's cells. That one is cached per-table since it depends
863         on the table's border and padding.
864
865         * dom/CSSMappedAttributeDeclaration.cpp:
866         (WebCore::CSSMappedAttributeDeclaration::~CSSMappedAttributeDeclaration):
867         * dom/MappedAttributeEntry.h:
868
869             Remove the concept of persistent CSSMappedAttributeDeclarations. The hunk in
870             ~CSSMappedAttributeDeclaration was wildly wrong since it would leave stale pointers
871             in the decl table, but unreachable since we always leaked one ref to those decls.
872
873         * dom/StyledElement.h:
874         (WebCore::StyledElement::additionalAttributeStyle):
875         * html/HTMLTableCellElement.cpp:
876         (WebCore::HTMLTableCellElement::additionalAttributeStyle):
877         * html/HTMLTableCellElement.h:
878         (HTMLTableCellElement):
879         * html/HTMLTableColElement.cpp:
880         (WebCore::HTMLTableColElement::additionalAttributeStyle):
881         * html/HTMLTableColElement.h:
882         (HTMLTableColElement):
883         * html/HTMLTableElement.cpp:
884         (WebCore::HTMLTableElement::parseMappedAttribute):
885         (WebCore::leakBorderStyle):
886         (WebCore::HTMLTableElement::additionalAttributeStyle):
887         (WebCore::HTMLTableElement::createSharedCellStyle):
888         (WebCore::HTMLTableElement::additionalCellStyle):
889         (WebCore::leakGroupBorderStyle):
890         (WebCore::HTMLTableElement::additionalGroupStyle):
891         * html/HTMLTableElement.h:
892         (HTMLTableElement):
893         * html/HTMLTableSectionElement.cpp:
894         (WebCore::HTMLTableSectionElement::additionalAttributeStyle):
895         * html/HTMLTableSectionElement.h:
896         (HTMLTableSectionElement):
897
898             Instead of collecting additional style decls into a vector, switch over to a
899             "PassRefPtr<CSSMutableStyleDeclaration> additionalAttributeStyle()".
900             All style declarations that can be reused for all elements are cached at the return
901             sites, leaving only the shared table cell style which we cache on HTMLTableElement.
902             Also removed the canHaveAdditionalAttributeStyleDecls() virtual since the default
903             additionalAttributeStyle() will just return 0.
904
905         * css/CSSStyleSelector.cpp:
906         (WebCore::CSSStyleSelector::matchAllRules):
907
908             Updated for the new additional style conventions.
909
910 2012-01-26  Vsevolod Vlasov  <vsevik@chromium.org>
911
912         Web Inspector: Scripts panel editor container should be based on UISourceCode objects, not SourceFrames.
913         https://bugs.webkit.org/show_bug.cgi?id=77098
914
915         Reviewed by Pavel Feldman.
916
917         * inspector/front-end/ScriptsNavigator.js:
918         * inspector/front-end/ScriptsPanel.js:
919         (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
920         (WebInspector.ScriptsPanel.prototype.get visibleView):
921         (WebInspector.ScriptsPanel.prototype.viewForFile):
922         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
923         (WebInspector.EditorContainer):
924         (WebInspector.EditorContainer.prototype.get visibleView):
925         (WebInspector.EditorContainer.prototype.showFile):
926         (WebInspector.EditorContainer.prototype.setFileIsDirty):
927         (WebInspector.EditorContainer.prototype.replaceFiles):
928         (WebInspector.EditorContainer.prototype.reset):
929         (WebInspector.EditorContainerDelegate):
930         (WebInspector.EditorContainerDelegate.prototype.viewForFile):
931         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
932         (WebInspector.ScriptsPanel.SingleFileEditorContainer):
933         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get visibleView):
934         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showFile):
935         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setFileIsDirty):
936         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceFiles):
937         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
938         * inspector/front-end/TabbedEditorContainer.js:
939         (WebInspector.TabbedEditorContainer):
940         (WebInspector.TabbedEditorContainer.prototype.get visibleView):
941         (WebInspector.TabbedEditorContainer.prototype._titleForFile):
942         (WebInspector.TabbedEditorContainer.prototype._tooltipForFile):
943         (WebInspector.TabbedEditorContainer.prototype._appendFileTab):
944         (WebInspector.TabbedEditorContainer.prototype._tabClosed):
945         (WebInspector.TabbedEditorContainer.prototype._tabSelected):
946         (WebInspector.TabbedEditorContainer.prototype.replaceFiles.get if):
947         (WebInspector.TabbedEditorContainer.prototype.replaceFiles):
948         (WebInspector.TabbedEditorContainer.prototype.setFileIsDirty.get if):
949         (WebInspector.TabbedEditorContainer.prototype.setFileIsDirty):
950         (WebInspector.TabbedEditorContainer.prototype.reset):
951
952 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
953
954         SVG + <object> tests are flakey
955         https://bugs.webkit.org/show_bug.cgi?id=77099
956
957         Reviewed by Andreas Kling.
958
959         Bug 76447 changed the way RenderSVGRoot figures out its size. Previously RenderSVGRoot directly called out to the
960         ownerRenderer (RenderEmbeddedObject) to compute its replaced size when embedded through eg. <object> element,
961         which was quite hacky. It now relies on the ownerRenderers availableLogicalWidth/Height to be correctly set,
962         which requires that the ownerRenderer is always laid out before the RenderSVGRoot and not the other way round.
963
964         This is the source of current flakiness bugs.
965
966         In trunk FrameView contains several special hacks, to layout the ownerRenderers view, after the RenderSVGRoots view
967         finished layout. This worked without flakiness as RenderSVGRoot used to directly call computeReplacedLogicalWidth/Height
968         on the ownerRenderer, which is now gone. Fortunately we can keep the new design, and can remove all hacks out of
969         RenderSVGRoot/FrameView, if we can guarantee that the ownerRenderer FrameView is laid out before the RenderSVGRoot FrameView.
970
971         This is a much less error-prone approach as the previous one. This lets us run nrwt --tolerance 0 -p svg -g again,
972         without 100% reproducable failing svg/wicd tests. (There's still one unrelated error, before guard malloc mode passes fully).
973
974         Test: svg/wicd/sizing-flakiness.html (Adjusted version of the rightsizing test, made to fail with trunk w/o this patch.)
975
976         * page/FrameView.cpp: Remove m_inLayoutParentView.
977         (WebCore::FrameView::FrameView): Remove no longer needed m_inLayoutParentView.
978         (WebCore::FrameView::forceLayoutParentViewIfNeeded): Simplify, no need to call updateWidgetPositions anymore, nor to clear/query flags in RenderSVGRoot.
979         (WebCore::FrameView::layout): Call forceLayoutParentViewIfNeeded() before laying out the embedded document, to guarantee the correct order.
980         * page/FrameView.h:
981         (FrameView): Remove m_inLayoutParentView.
982         * rendering/svg/RenderSVGRoot.cpp:
983         (WebCore::RenderSVGRoot::RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument.
984         (WebCore::resolveLengthAttributeForSVG): Remove outcommented code, that went in by accident.
985         (WebCore::RenderSVGRoot::layout): Remove m_needsSizeNegotiationWithHostDocument handling which is now incorrect and no longer needed.
986         * rendering/svg/RenderSVGRoot.h:
987         (RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument + accessors.
988
989 2012-01-23  Andreas Kling  <awesomekling@apple.com>
990
991         Make elements that don't have attributes smaller.
992         <http://webkit.org/b/76876>
993
994         Reviewed by Antti Koivisto.
995
996         Move the inline style declaration from StyledElement to NamedNodeMap, since having
997         an inline style declaration also implies having a style attribute on the element.
998         This saves one CPU word per element that has no attributes.
999
1000         This reduces memory consumption by 412 kB (on 64-bit) when viewing the full
1001         HTML5 spec at <http://whatwg.org/c>.
1002
1003         * dom/NamedNodeMap.cpp:
1004         (WebCore::NamedNodeMap::ensureInlineStyleDecl):
1005         (WebCore::NamedNodeMap::destroyInlineStyleDecl):
1006         (WebCore::NamedNodeMap::createInlineStyleDecl):
1007         * dom/NamedNodeMap.h:
1008         (WebCore::NamedNodeMap::inlineStyleDecl):
1009         * dom/StyledElement.cpp:
1010         (WebCore::StyledElement::updateStyleAttribute):
1011         (WebCore::StyledElement::addSubresourceAttributeURLs):
1012         * dom/StyledElement.h:
1013         (WebCore::StyledElement::inlineStyleDecl):
1014         (WebCore::StyledElement::ensureInlineStyleDecl):
1015         (WebCore::StyledElement::destroyInlineStyleDecl):
1016
1017 2012-01-26  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
1018
1019         [Qt] Use ICU if available
1020         https://bugs.webkit.org/show_bug.cgi?id=76821
1021
1022         Reviewed by Simon Hausmann.
1023
1024         Adding correct sources to a Qt 5 based build.
1025
1026         No new tests, it's just a build dependency change.
1027
1028         * Target.pri:
1029
1030 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1031
1032         Not reviewed. Fix mac build after r105988.
1033
1034         * WebCore.exp.in:
1035
1036 2012-01-26  Nándor Huszka  <huszka.nandor@stud.u-szeged.hu>
1037
1038         [WK2] WebKitTestRunner needs layoutTestController.setGeolocationPermission
1039         https://bugs.webkit.org/show_bug.cgi?id=42545
1040
1041         Reviewed by Zoltan Herczeg.
1042
1043         No need for new tests, there is no behavior change.
1044
1045         Added a line to file which copies the forwarding headers.
1046
1047         * WebCore.vcproj/copyForwardingHeaders.cmd:
1048
1049 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1050
1051         Not reviewed. Fix Qt build after r105978.
1052
1053         * rendering/svg/RenderSVGResourceClipper.cpp: Add missing Frame/FrameView includes.
1054         * rendering/svg/RenderSVGResourceSolidColor.cpp: Ditto.
1055         * rendering/svg/SVGInlineTextBox.cpp: Ditto.
1056         * rendering/svg/SVGRenderSupport.cpp: Ditto.
1057
1058 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1059
1060         Not reviewed. Fix non-AllInOne builds after r105978.
1061
1062         * rendering/svg/RenderSVGResource.cpp:
1063
1064 2012-01-26  Vsevolod Vlasov  <vsevik@chromium.org>
1065
1066         Unreviewed inspector closure compilation fix.
1067
1068         * inspector/front-end/externs.js:
1069         (WebInspector.closeDrawerView):
1070
1071 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1072
1073         Not reviewed. Fix release builds after r105978.
1074
1075         * rendering/svg/SVGInlineTextBox.cpp:
1076         (WebCore::SVGInlineTextBox::paintSelectionBackground): Remove unused variable.
1077
1078 2012-01-26  Kent Tamura  <tkent@chromium.org>
1079
1080         Unreviewed, rolling out r105968.
1081         http://trac.webkit.org/changeset/105968
1082         https://bugs.webkit.org/show_bug.cgi?id=76995
1083
1084         Incorrect behavior change
1085
1086         * html/HTMLInputElement.cpp:
1087         (WebCore::HTMLInputElement::setIndeterminate):
1088
1089 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1090
1091         crash in WebCore::RenderSVGContainer::paint
1092         https://bugs.webkit.org/show_bug.cgi?id=69714
1093
1094         Reviewed by Dirk Schulze.
1095
1096         When RenderSVGResourceClipper draws its children to a mask, it requires some special constraints:
1097         - fill-opacity/stroke-opacity/opacity forced to 1
1098         - masker/filter resources shouldn't be applied to the children
1099         - fill must be set to the initial fill paint server for all children (solid black)
1100         - stroke must be set to the initial stroke paint server for all children (none)
1101
1102         This was achieved before by mutating the style of the children, which made them need a relayout.
1103         SVGImageBufferTools:renderSubtreeToImageBuffer thus needed to layout the children, if needed, before painting.
1104
1105         This can be completly avoided, when changing RenderSVGResourceClipper to avoid style mutations.
1106         Introduce a new "PaintBehaviorRenderingSVGMask", and set the current FrameViews paintBehaviour to this
1107         state, before painting the subtree. This way we can detect that we're rendering a clip mask, without
1108         having to mutate the style of the children and without having to relayout.
1109
1110         We can now ASSERT(!item->needsLayout()) in renderSubtreeToImageBuffer.
1111
1112         Tests: svg/clip-path/clip-path-tspan-and-stroke.svg
1113                svg/custom/layout-loop.svg
1114
1115         * rendering/PaintPhase.h:
1116         * rendering/svg/RenderSVGResource.cpp:
1117         (WebCore::requestPaintingResource):
1118         * rendering/svg/RenderSVGResourceClipper.cpp:
1119         (WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
1120         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
1121         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
1122         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
1123         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
1124         * rendering/svg/RenderSVGResourceClipper.h:
1125         * rendering/svg/RenderSVGResourceMasker.cpp:
1126         (WebCore::RenderSVGResourceMasker::applyResource):
1127         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
1128         * rendering/svg/RenderSVGResourceMasker.h:
1129         * rendering/svg/RenderSVGResourcePattern.cpp:
1130         (WebCore::RenderSVGResourcePattern::createTileImage):
1131         * rendering/svg/RenderSVGResourceSolidColor.cpp:
1132         (WebCore::RenderSVGResourceSolidColor::applyResource):
1133         * rendering/svg/SVGImageBufferTools.cpp:
1134         (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
1135         * rendering/svg/SVGInlineTextBox.cpp:
1136         (WebCore::SVGInlineTextBox::paintSelectionBackground):
1137         (WebCore::SVGInlineTextBox::paint):
1138         * rendering/svg/SVGRenderSupport.cpp:
1139         (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
1140
1141 2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1142
1143         Not reviewed. Try to fix Gtk build - JSShadowRoot.cpp can't be found, fix by looking for it in the derived sources.
1144
1145         * GNUmakefile.list.am:
1146
1147 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
1148
1149         Web Inspector: Improve user experience of advanced search panel closing.
1150         https://bugs.webkit.org/show_bug.cgi?id=76983
1151
1152         Reviewed by Pavel Feldman.
1153
1154         Added close button to search panel.
1155         Esc now closes the panel even when search filed has focus.
1156
1157         * English.lproj/localizedStrings.js:
1158         * inspector/front-end/AdvancedSearchController.js:
1159         (WebInspector.AdvancedSearchController.prototype.close):
1160         (WebInspector.SearchView):
1161         (WebInspector.SearchView.prototype._onKeyDown):
1162         (WebInspector.SearchView.prototype._closeButtonPressed):
1163         * inspector/front-end/inspector.css:
1164         (.search-view .search-panel):
1165         (.search-view .search-panel button.search-close-button):
1166         * inspector/front-end/inspector.js:
1167         (WebInspector._escPressed):
1168         (WebInspector.closeDrawerView):
1169
1170 2012-01-26  Joe Thomas  <joethomas@motorola.com>
1171
1172         https://bugs.webkit.org/show_bug.cgi?id=76995.
1173         WebKit fails IETC :indeterminate and input type=radio test.
1174
1175         As per the HTML spec http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#dom-input-indeterminate,
1176         only checkbox input type should respect the indeterminate state.
1177         Removed the support for indeterminate state for radio input types.
1178
1179         Reviewed by Eric Seidel.
1180
1181         Modified the existing test cases.
1182
1183         * html/HTMLInputElement.cpp:
1184         (WebCore::HTMLInputElement::setIndeterminate): Indeterminate state is supported only for checkbox input type.
1185
1186 2012-01-25  Daniel Cheng  <dcheng@chromium.org>
1187
1188         [chromium] Fix ClipboardChromium::validateFilename to actually operate on extensions
1189         https://bugs.webkit.org/show_bug.cgi?id=76996
1190
1191         As it turns out, we were always calling validateFilename on a data object with an empty
1192         extension. Now we call it on an actual extension so that it's sanitized.
1193
1194         Reviewed by Tony Chang.
1195
1196         Unit test: webkit_unit_tests --gtest_filter=ClipboardChromium.*
1197
1198         * WebCore.gypi:
1199         * platform/chromium/ClipboardChromium.cpp:
1200         (WebCore::writeImageToDataObject):
1201         * platform/chromium/ClipboardChromium.h:
1202         (ClipboardChromium):
1203         * platform/chromium/ClipboardChromiumLinux.cpp: Removed.
1204         * platform/chromium/ClipboardChromiumPosix.cpp: Renamed from Source/WebCore/platform/chromium/ClipboardChromiumMac.cpp.
1205         (WebCore):
1206         (WebCore::isInvalidFileCharacter):
1207         (WebCore::ClipboardChromium::validateFilename):
1208         * platform/chromium/ClipboardChromiumWin.cpp:
1209         (WebCore):
1210         (WebCore::ClipboardChromium::validateFilename):
1211
1212 2012-01-25  James Robinson  <jamesr@chromium.org>
1213
1214         [chromium] Rollout r100751, this mechanism does not work and is very slow
1215         https://bugs.webkit.org/show_bug.cgi?id=77055
1216
1217         Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
1218         but it still triggers a very slow codepath and triggers races on some platforms.
1219
1220         * platform/PlatformScreen.h:
1221         (WebCore):
1222         * platform/chromium/PlatformScreenChromium.cpp:
1223         * platform/chromium/PlatformSupport.h:
1224         (PlatformSupport):
1225         ():
1226         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1227         (WebCore::CCSettings::CCSettings):
1228         (CCSettings):
1229         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1230         (WebCore::CCThreadProxy::initializeImplOnImplThread):
1231
1232 2012-01-25  Mark Rowe  <mrowe@apple.com>
1233
1234         Reapply Daniel Bates's build fix from r105847 after the exact same issue was reintroduced in r105930.
1235         
1236         Attempt to fix Mac build after changeset <http://trac.webkit.org/changeset/105930>.
1237         (https://bugs.webkit.org/show_bug.cgi?id=75049)
1238
1239         Don't include NotImplemented.h in KURL.h since NotImplemented.h includes Logging.h, which defines
1240         LOG_CHANNEL_PREFIX to be "Log". And this conflicts with the inclusion of WebKitLogging.h in
1241         WebHTMLView.mm (which would have defined LOG_CHANNEL_PREFIX to be "WebKitLog").
1242
1243         * platform/KURL.h:
1244         (WebCore::KURL::innerURL):
1245
1246 2012-01-25  Eric Seidel  <eric@webkit.org>
1247
1248         Unreviewed, rolling out r105940.
1249         http://trac.webkit.org/changeset/105940
1250         https://bugs.webkit.org/show_bug.cgi?id=76095
1251
1252         Only half this change landed
1253
1254         * DerivedSources.cpp:
1255         * DerivedSources.make:
1256         * DerivedSources.pri:
1257
1258 2012-01-25  Mark Rowe  <mrowe@apple.com>
1259
1260         Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
1261
1262         <rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
1263
1264         Reviewed by David Kilzer.
1265
1266         * Configurations/WebCore.xcconfig: Define NORMAL_WEBCORE_FRAMEWORKS_DIR, which contains
1267         the path where WebCore is normally installed. Update WEBCORE_FRAMEWORKS_DIR to point to
1268         the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
1269         NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
1270         are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
1271         directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
1272         based on the normal framework location. This prevents an incorrect install name from being
1273         used when installing in to the staged frameworks directory. Look for our other frameworks
1274         in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
1275
1276 2012-01-25  Eric Seidel  <eric@webkit.org>
1277
1278         "text" and "URL" legacy clipboard types should not be case sensitive
1279         https://bugs.webkit.org/show_bug.cgi?id=76947
1280
1281         Reviewed by Adam Barth.
1282
1283         This matches the HTML5 spec which says the first thing to do is to lowercase
1284         the type before comparing.
1285         I also removed the stripping of whitespace since that is not part of the modern spec (and no tests failed as a result of removal).
1286         Turns out we already had a test for case sensitivity, but it was disabled on Mac
1287         so I just re-enabled it and have added failing expectations for the parts
1288         of the test we still fail.
1289
1290         * platform/mac/ClipboardMac.mm:
1291         (WebCore::cocoaTypeFromHTMLClipboardType):
1292         (WebCore::ClipboardMac::getData):
1293
1294 2012-01-25  Eric Seidel  <eric@webkit.org>
1295
1296         HTMLIsIndexElement should not expose HTMLInputElement properties
1297         https://bugs.webkit.org/show_bug.cgi?id=76095
1298
1299         Reviewed by Adam Barth.
1300
1301         document.createElement("isindex") should produce an HTMLUnknownElement
1302         per the HTML5 spec.  The parser automagically translates <isindex> into
1303         a whole dom tree roughly representing what <isindex> used to do 15 years ago. :)
1304
1305         This patch just removes our support for HTMLIsIndexElement.  The parser
1306         support was already in.  Having support for HTMLIsIndexElement was causing
1307         one of the IE TestCenter tests to fail.
1308
1309         Test: fast/dom/HTMLIsIndexElement/prototype-chain.html
1310
1311         * DerivedSources.cpp:
1312         * DerivedSources.make:
1313         * DerivedSources.pri:
1314         * GNUmakefile.list.am:
1315         * Target.pri:
1316         * WebCore.exp.in:
1317         * WebCore.gypi:
1318         * WebCore.order:
1319         * WebCore.vcproj/WebCore.vcproj:
1320         * WebCore.xcodeproj/project.pbxproj:
1321         * bindings/gobject/GNUmakefile.am:
1322         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
1323         (WebKit::createHTMLElementWrapper):
1324         * bindings/objc/DOM.mm:
1325         (WebCore::createElementClassMap):
1326         * bindings/objc/DOMHTML.h:
1327         * bindings/objc/PublicDOMInterfaces.h:
1328         * html/HTMLElementsAllInOne.cpp:
1329         * html/HTMLIsIndexElement.cpp: Removed.
1330         * html/HTMLIsIndexElement.h: Removed.
1331         * html/HTMLIsIndexElement.idl: Removed.
1332         * html/HTMLTagNames.in:
1333         * page/DOMWindow.idl:
1334
1335 2012-01-25  Eric Seidel  <eric@webkit.org>
1336
1337         HTMLEmbedObject should match HTMLObjectElement by stopping any load when it is removed from beforeload
1338         https://bugs.webkit.org/show_bug.cgi?id=74360
1339
1340         Reviewed by Adam Barth.
1341
1342         Neither of these !renderer() checks is strictly necessary since requestObject()
1343         makes the same check.  However requestObject() asserts before it makes that
1344         check, so it makes sense to add the check to HTMLEmebedObject instead of
1345         removing the check from HTMLObjectElement.
1346         I also moved the protect RefPtr to before the beforeload dispatch since
1347         beforeload can remove the whole DOM element (as this test does) and
1348         thus I beleive the renderer() check could be checking free'd memory.
1349
1350         Updated fast/dom/beforeload/remove-flash-in-beforeload-listener.html to test
1351         <embed> as well as <object>.
1352
1353         * html/HTMLEmbedElement.cpp:
1354         (WebCore::HTMLEmbedElement::updateWidget):
1355         * html/HTMLObjectElement.cpp:
1356         (WebCore::HTMLObjectElement::updateWidget):
1357
1358 2012-01-25  Kent Tamura  <tkent@chromium.org>
1359
1360         Move focus/blur handling code of HTMLInputElement to InputType
1361         https://bugs.webkit.org/show_bug.cgi?id=76984
1362
1363         Reviewed by Dimitri Glazkov.
1364
1365         No new tests. Just a refactoring.
1366
1367         * html/HTMLInputElement.cpp:
1368         (WebCore::HTMLInputElement::handleFocusEvent):
1369         Move the code to PasswordInputType::handleFocusEvent().
1370         (WebCore::HTMLInputElement::handleBlurEvent):
1371         Move the code to TextFieldInputType::handleBlurEvent() and
1372         PasswordInputType::handleBlurEvent().
1373         * html/InputType.cpp:
1374         (WebCore::InputType::handleFocusEvent):
1375         * html/InputType.h:
1376         (InputType): Add handleFocusEvent().
1377         * html/PasswordInputType.cpp:
1378         (WebCore::PasswordInputType::handleFocusEvent):
1379         Move the code for type=password from HTMLInputElement::handleFocusEvent().
1380         (WebCore::PasswordInputType::handleBlurEvent):
1381         Move the code for tyep=password from HTMLInputElement::handleBlurEvent().
1382         * html/PasswordInputType.h:
1383         (PasswordInputType): Add handleFocusEvent() and handleBlurEvent().
1384         * html/TextFieldInputType.cpp:
1385         (WebCore::TextFieldInputType::handleBlurEvent):
1386         Move the code for text field types from HTMLInputElement::handleBlurEvent().
1387         * html/TextFieldInputType.h:
1388         (TextFieldInputType): Add handleBlurEvent().
1389
1390 2012-01-25  Adam Barth  <abarth@webkit.org>
1391
1392         Node.cpp shouldn't duplicate QualifiedName parsing logic
1393         https://bugs.webkit.org/show_bug.cgi?id=76672
1394
1395         Reviewed by Eric Seidel.
1396
1397         I added this code out of ignorance that this logic already existed in
1398         Document.cpp.  In a future patch, we should consider moving it to
1399         QualifiedName.cpp.
1400
1401         * dom/Node.cpp:
1402         (WebCore):
1403         (WebCore::Node::checkSetPrefix):
1404
1405 2012-01-25  Eric Seidel  <eric@webkit.org>
1406
1407         Share more code between updateWidget implementations in HTMLEmbedElement and HTMLObjectElement
1408         https://bugs.webkit.org/show_bug.cgi?id=74340
1409
1410         Reviewed by Adam Barth.
1411
1412         I'm preparing to unify these two methods, and starting by sharing more code between them.
1413
1414         * html/HTMLEmbedElement.cpp:
1415         (WebCore::HTMLEmbedElement::updateWidget):
1416         * html/HTMLObjectElement.cpp:
1417         (WebCore::HTMLObjectElement::updateWidget):
1418         * html/HTMLPlugInElement.cpp:
1419         (WebCore::HTMLPlugInElement::guardedDispatchBeforeLoadEvent):
1420         * html/HTMLPlugInElement.h:
1421
1422 2012-01-25  Eric Uhrhane  <ericu@chromium.org>
1423
1424         Add full support for filesystem URLs.
1425         https://bugs.webkit.org/show_bug.cgi?id=75049
1426
1427         Reviewed by Adam Barth.
1428
1429         No new tests; existing layout tests cover the basic functionality, and
1430         the new functionality won't be there until Chromium adds it.  This patch
1431         merely enables that, without changing behavior.
1432
1433         * fileapi/EntryBase.cpp:
1434         (WebCore::EntryBase::toURL): Add missing escaping of URL path.
1435
1436         * page/SecurityOrigin.cpp:
1437         (WebCore::extractInnerURL): Use innerURL member, if it's populated.
1438
1439         * platform/KURL.h:
1440         (WebCore::KURL::innerURL): Add innerURL member.
1441
1442         * platform/KURLGoogle.cpp:
1443         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
1444         (WebCore::KURLGooglePrivate::operator=):
1445         Add copy constructor and operator=, which are now needed since
1446         m_innerURL needs special handling.
1447         (WebCore::KURLGooglePrivate::setUtf8):
1448         (WebCore::KURLGooglePrivate::setAscii):
1449         Add calls to initInnerURL.
1450         (WebCore::KURLGooglePrivate::initInnerURL):
1451         Add method to init/copy m_innerURL.
1452         (WebCore::KURLGooglePrivate::copyTo):
1453         Handle m_innerURL during copies.
1454         (WebCore::encodeWithURLEscapeSequences):
1455         Unescape %2F ['/'] in paths; it's much more readable, and it's safe.
1456
1457         * platform/KURLGooglePrivate.h:
1458         (WebCore::KURLGooglePrivate::innerURL): Add accessor for new m_innerURL.
1459
1460 2012-01-25  Daniel Cheng  <dcheng@chromium.org>
1461
1462         [chromium] Refactor Clipboard invalidate for DataTransferItem/DataTransferItemList into a wrapper
1463         https://bugs.webkit.org/show_bug.cgi?id=76993
1464
1465         We want to unify the backing data store for ClipboardChromium and DataTransferItems. For
1466         that, we want use a similar representation to DataTransferItem list inside
1467         ChromiumDataObject.  However, since ChromiumDataObject should be valid in scopes where
1468         Clipboard is not (e.g. default drag processing), we need to separate the clipboard
1469         invalidation logic into a wrapper class.
1470
1471         Reviewed by Tony Chang.
1472
1473         Covered by existing tests.
1474
1475         * platform/chromium/ClipboardChromium.cpp:
1476         ():
1477         (WebCore::ClipboardChromium::items):
1478         * platform/chromium/DataTransferItemChromium.cpp:
1479         (WebCore::DataTransferItemChromium::getAsString):
1480         * platform/chromium/DataTransferItemListChromium.cpp:
1481         (WebCore::DataTransferItemListChromium::length):
1482         (WebCore::DataTransferItemListChromium::item):
1483         (WebCore::DataTransferItemListChromium::deleteItem):
1484         (WebCore::DataTransferItemListChromium::clear):
1485         (WebCore::DataTransferItemListChromium::add):
1486
1487 2012-01-25  No'am Rosenthal  <noam.rosenthal@nokia.com>
1488
1489         [Texmap] Divide TextureMapperNode.cpp to 3 files.
1490         https://bugs.webkit.org/show_bug.cgi?id=76660
1491
1492          Reviewed by Kenneth Rohde Christiansen.
1493
1494          Split the animation part of TextureMapperNode out to a separate file, called
1495          TextureMapperAnimation.
1496          Provide a clean interface for that class, that allows separating the internals of the scene
1497          painting from the internals of the animation interpolation.
1498
1499          No new tests. Existing animation tests cover this.
1500
1501          * GNUmakefile.list.am:
1502         * Target.pri:
1503         * WebCore.gypi:
1504         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1505         (WebCore::GraphicsLayerTextureMapper::addAnimation):
1506         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
1507         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
1508         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1509         (GraphicsLayerTextureMapper):
1510         * platform/graphics/texmap/TextureMapperNode.cpp:
1511         (WebCore::TextureMapperNode::syncCompositingStateSelf):
1512         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
1513         (WebCore::TextureMapperNode::syncAnimations):
1514         (WebCore::TextureMapperNode::syncAnimationsRecursively):
1515         (WebCore::TextureMapperNode::syncCompositingState):
1516         * platform/graphics/texmap/TextureMapperNode.h:
1517         (TextureMapperNode):
1518
1519 2012-01-25  Hajime Morita  <morrita@google.com>
1520
1521         ENABLE_SHADOW_DOM should be available via build-webkit --shadow-dom
1522         https://bugs.webkit.org/show_bug.cgi?id=76863
1523
1524         Reviewed by Dimitri Glazkov.
1525
1526         Added a feature flag.
1527
1528         No tests, it's a behid flag configuration change.
1529
1530         * CMakeLists.txt:
1531         * Configurations/FeatureDefines.xcconfig:
1532         * DerivedSources.cpp:
1533         * DerivedSources.make:
1534         * DerivedSources.pri:
1535         * GNUmakefile.am:
1536         * GNUmakefile.list.am:
1537         * WebCore.vcproj/WebCore.vcproj:
1538         * WebCore.xcodeproj/project.pbxproj:
1539
1540 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1541
1542         Unreviewed, rolling out r105906.
1543         http://trac.webkit.org/changeset/105906
1544         https://bugs.webkit.org/show_bug.cgi?id=77038
1545
1546         Breaks compositing/visibility/layer-visible-content.html and
1547         compositing/visibility/visibility-image-layers-dynamic.html
1548         (Requested by leviw|gardening on #webkit).
1549
1550         * rendering/RenderLayerBacking.cpp:
1551         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1552
1553 2012-01-25  Mike Fenton  <mifenton@rim.com>
1554
1555         Page Up and Page Down mappings are backwards on BlackBerry port.
1556         https://bugs.webkit.org/show_bug.cgi?id=77021
1557
1558         Fix Page Up and Page Down mappings as they are reversed.
1559
1560         Reviewed by Antonio Gomes.
1561
1562         * platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:
1563         (WebCore::keyIdentifierForBlackBerryCharacter):
1564         (WebCore::windowsKeyCodeForBlackBerryCharacter):
1565
1566 2012-01-25  Hajime Morita  <morrita@google.com>
1567
1568         <content> should create HTMLContentElement object
1569         https://bugs.webkit.org/show_bug.cgi?id=76439
1570
1571         Reviewed by Dimitri Glazkov.
1572
1573         - Added HTMLContentElement.idl which has @select attribute.
1574         - Added "content" element.
1575
1576         Both are behind ENABLE_SHADOW_DOM.
1577
1578         Tests: fast/dom/shadow/content-element-api.html
1579                fast/dom/shadow/content-element-outside-shadow.html
1580
1581         * CMakeLists.txt:
1582         * DerivedSources.cpp:
1583         * DerivedSources.make:
1584         * DerivedSources.pri:
1585         * GNUmakefile.list.am:
1586         * WebCore.gypi:
1587         * WebCore.vcproj/WebCore.vcproj:
1588         * WebCore.xcodeproj/project.pbxproj:
1589         * html/HTMLTagNames.in:
1590         * html/shadow/HTMLContentElement.cpp:
1591         (WebCore::contentTagName):
1592         (WebCore):
1593         (WebCore::HTMLContentElement::create):
1594         * html/shadow/HTMLContentElement.h:
1595         (HTMLContentElement):
1596         * html/shadow/HTMLContentElement.idl: Added.
1597
1598 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1599
1600         Unreviewed, rolling out r105828.
1601         http://trac.webkit.org/changeset/105828
1602         https://bugs.webkit.org/show_bug.cgi?id=77036
1603
1604         Caused many crashes in ClusterFuzz and PerformanceTests
1605         (Requested by inferno-sec on #webkit).
1606
1607         * rendering/RenderBlock.cpp:
1608         (WebCore::RenderBlock::removeChild):
1609         * rendering/RenderBlock.h:
1610         (RenderBlock):
1611
1612 2012-01-25  Shawn Singh  <shawnsingh@chromium.org>
1613
1614         Fix the semantics of passing contentsVisible flag to GraphicsLayers
1615         https://bugs.webkit.org/show_bug.cgi?id=76975
1616
1617         Reviewed by Simon Fraser.
1618
1619         This patch is covered by existing tests, in particular
1620         compositing/visibility/layer-visible-content.html; its
1621         expectations are rebaselined.
1622
1623         * rendering/RenderLayerBacking.cpp:
1624         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1625
1626 2012-01-25  Tony Chang  <tony@chromium.org>
1627
1628         support overflow:auto and overflow:scroll in new flexbox
1629         https://bugs.webkit.org/show_bug.cgi?id=76953
1630
1631         Reviewed by David Hyatt.
1632
1633         Tests: css3/flexbox/flexbox-overflow-auto-expected.html
1634                css3/flexbox/flexbox-overflow-auto.html
1635
1636         * rendering/RenderBox.cpp:
1637         (WebCore::RenderBox::addLayoutOverflow): In the case of reverse flexboxen, we can overflow up or to the left (like horizontal-bt or rtl content).
1638         * rendering/RenderFlexibleBox.cpp:
1639         (WebCore::RenderFlexibleBox::layoutBlock): Call updateScrollInfoAfterLayout() to add overflow scrollbars.
1640         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): In row-reverse, offset the start of the content by the scrollbar.
1641         (WebCore::RenderFlexibleBox::layoutColumnReverse): In column-reverse, offset the start of the content by the scrollbar.
1642         * rendering/RenderFlexibleBox.h:
1643         (RenderFlexibleBox): Make isHorizontalFlow public.
1644         * rendering/style/RenderStyle.h:
1645         (WebCore::RenderStyleBitfields::isReverseFlexDirection): Convenience method.
1646
1647 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1648
1649         Unreviewed, rolling out r105885.
1650         http://trac.webkit.org/changeset/105885
1651         https://bugs.webkit.org/show_bug.cgi?id=77027
1652
1653         Causes assertions in Position. (Requested by leviw|gardening
1654         on #webkit).
1655
1656         * dom/Position.cpp:
1657         (WebCore::Position::upstream):
1658         (WebCore::Position::downstream):
1659         * dom/PositionIterator.cpp:
1660         * dom/PositionIterator.h:
1661         (PositionIterator):
1662         * editing/htmlediting.cpp:
1663         (WebCore::nextCandidate):
1664         (WebCore::nextVisuallyDistinctCandidate):
1665         (WebCore::previousCandidate):
1666         (WebCore::previousVisuallyDistinctCandidate):
1667
1668 2012-01-25  Alexis Menard  <alexis.menard@openbossa.org>
1669
1670         border-image should be implemented like a shorthand.
1671         https://bugs.webkit.org/show_bug.cgi?id=76697
1672
1673         Reviewed by Tony Chang.
1674
1675         Make sure that border-image is implemented like a shorthand : when we parse
1676         it we set the correct value to its longhands. The code was not doing it
1677         previously as we inherited the old implementation of -webkit-border-image which
1678         is not a shorthand but a regular property. It will then increase
1679         style.length for a given element as we now expand the longhands.
1680         The behavior stays the same for -webkit-border-image.
1681
1682         Test: fast/css/border-image-style-length.html
1683
1684         * css/CSSParser.cpp:
1685         (WebCore::CSSParser::parseValue):
1686         (WebCore::BorderImageParseContext::BorderImageParseContext):
1687         (WebCore::BorderImageParseContext::commitWebKitBorderImage):
1688         (WebCore::BorderImageParseContext::commitBorderImage):
1689         (BorderImageParseContext):
1690         (WebCore::BorderImageParseContext::commitBorderImageProperty):
1691         (WebCore::CSSParser::parseBorderImage):
1692         * css/CSSParser.h:
1693         ():
1694         * css/CSSPropertyLonghand.cpp:
1695         (WebCore::initShorthandMap):
1696         * css/CSSStyleApplyProperty.cpp:
1697         ():
1698         (WebCore::ApplyPropertyExpanding::applyInheritValue):
1699         (WebCore::ApplyPropertyExpanding::applyInitialValue):
1700         (WebCore::ApplyPropertyExpanding::applyValue):
1701         (WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
1702         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1703         * css/CSSStyleSelector.cpp:
1704         (WebCore::CSSStyleSelector::mapNinePieceImage):
1705         * page/animation/AnimationBase.cpp:
1706         (WebCore::AnimationBase::ensurePropertyMap):
1707         (WebCore::addShorthandProperties):
1708         * rendering/style/RenderStyle.h:
1709         (WebCore::RenderStyleBitfields::borderImageSlices):
1710         (WebCore::RenderStyleBitfields::borderImageWidth):
1711         (WebCore::RenderStyleBitfields::borderImageOutset):
1712         (RenderStyleBitfields):
1713         (WebCore::RenderStyleBitfields::setBorderImageSlices):
1714         (WebCore::RenderStyleBitfields::setBorderImageWidth):
1715         (WebCore::RenderStyleBitfields::setBorderImageOutset):
1716
1717 2012-01-23  MORITA Hajime  <morrita@google.com>
1718
1719         [Refactoring][Internals] Should have InternalSettings
1720         https://bugs.webkit.org/show_bug.cgi?id=76424
1721
1722         Reviewed by Kent Tamura.
1723
1724         This change extracted setting related method from window.internals
1725         to window.internals.settings object.
1726         - Invoked Internals::reset() in the constructor to employ Document object.
1727         - Moved setting and configuration related Internals methods to
1728           newly introduced InternalSettings object.
1729
1730         No new tests, covered by existing tests.
1731
1732         * DerivedSources.make:
1733         * DerivedSources.pri:
1734         * GNUmakefile.am:
1735         * GNUmakefile.list.am:
1736         * Target.pri:
1737         * WebCore.gyp/WebCore.gyp:
1738         * WebCore.gypi:
1739         * WebCore.vcproj/WebCoreTestSupport.vcproj:
1740         * WebCore.xcodeproj/project.pbxproj:
1741         * testing/InternalSettings.cpp: Added.
1742         (WebCore::InternalSettings::create):
1743         (WebCore::InternalSettings::~InternalSettings):
1744         (WebCore::InternalSettings::InternalSettings):
1745         (WebCore::InternalSettings::settings):
1746         (WebCore::InternalSettings::document):
1747         (WebCore::InternalSettings::page):
1748         (WebCore::InternalSettings::setInspectorResourcesDataSizeLimits):
1749         (WebCore::InternalSettings::setForceCompositingMode):
1750         (WebCore::InternalSettings::setAcceleratedFiltersEnabled):
1751         (WebCore::InternalSettings::setEnableCompositingForFixedPosition):
1752         (WebCore::InternalSettings::setEnableCompositingForScrollableFrames):
1753         (WebCore::InternalSettings::setAcceleratedDrawingEnabled):
1754         (WebCore::InternalSettings::setEnableScrollAnimator):
1755         (WebCore::InternalSettings::setZoomAnimatorTransform):
1756         (WebCore::InternalSettings::setZoomParameters):
1757         (WebCore::InternalSettings::setMockScrollbarsEnabled):
1758         (WebCore::InternalSettings::setPasswordEchoEnabled):
1759         (WebCore::InternalSettings::setPasswordEchoDurationInSeconds):
1760         (WebCore::InternalSettings::setShouldLayoutFixedElementsRelativeToFrame):
1761         (WebCore::InternalSettings::setUnifiedTextCheckingEnabled):
1762         (WebCore::InternalSettings::unifiedTextCheckingEnabled):
1763         (WebCore::InternalSettings::pageScaleFactor):
1764         (WebCore::InternalSettings::setPageScaleFactor):
1765         (WebCore::InternalSettings::setPerTileDrawingEnabled):
1766         * testing/InternalSettings.h: Added.
1767         * testing/InternalSettings.idl: Added.
1768         * testing/Internals.cpp:
1769         (WebCore::Internals::create):
1770         (WebCore::Internals::Internals):
1771         (WebCore::Internals::reset):
1772         * testing/Internals.h:
1773         (WebCore::Internals::settings):
1774         * testing/Internals.idl:
1775         * testing/js/WebCoreTestSupport.cpp:
1776         (WebCoreTestSupport::injectInternalsObject):
1777         * testing/v8/WebCoreTestSupport.cpp:
1778         (WebCoreTestSupport::injectInternalsObject):
1779
1780 2012-01-25  Alexis Menard  <alexis.menard@openbossa.org>
1781
1782         border-image should not crash when the source is not specified.
1783         https://bugs.webkit.org/show_bug.cgi?id=77001
1784
1785         Reviewed by Andreas Kling.
1786
1787         This bug was introduced by r105502 but was exposed by r105738.
1788         The image-source of a border-image is not mandatory therefore it
1789         may happen that you have no value set for it. WebCore::createBorderImageValue
1790         was wrongly assuming that the image is always set. This problem also required a bit
1791         of refactoring in CSSStyleSelector::mapNinePieceImage to take into account that
1792         the image could be optional (just like other properties).
1793
1794         Test: fast/css/border-image-null-image-crash.html
1795
1796         * css/CSSBorderImage.cpp:
1797         (WebCore::createBorderImageValue):
1798         * css/CSSStyleSelector.cpp:
1799         (WebCore::CSSStyleSelector::mapNinePieceImage):
1800
1801 2012-01-25  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1802
1803         [Qt] Implement tap feedback respecting -webkit-tap-highlight-color
1804         https://bugs.webkit.org/show_bug.cgi?id=76914
1805
1806         Reviewed by Simon Hausmann.
1807
1808         Implement highlighting of dom nodes with a rounded rect, respecting
1809         the color of -webkit-tap-highlight-color and any transform applied
1810         to the element.
1811
1812         Tested with manual test.
1813
1814         * Target.pri:
1815         * page/GestureTapHighlighter.cpp: Added.
1816         (WebCore::GestureTapHighlighter::pathForNodeHighlight):
1817         * page/GestureTapHighlighter.h: Added.
1818
1819 2012-01-25  Joshua Bell  <jsbell@chromium.org>
1820
1821         IndexedDB: Need to distinguish key paths that don't yield value vs. yield invalid key
1822         https://bugs.webkit.org/show_bug.cgi?id=76487
1823
1824         Implement the precondition checks for IDBObjectStore.add/put operations: raise an error
1825         if there is a key generator (autoIncrement) and the path yields a value and the value
1826         is not a valid key; raise an error if any of the index key paths yield a value which
1827         is not a valid key.
1828
1829         Reviewed by Tony Chang.
1830
1831         Tests: storage/indexeddb/keypath-edges.html
1832                storage/indexeddb/objectstore-basics.html
1833
1834         * storage/IDBObjectStoreBackendImpl.cpp:
1835         (WebCore::IDBObjectStoreBackendImpl::put):
1836
1837 2012-01-25  Yong Li  <yoli@rim.com>
1838
1839         https://bugs.webkit.org/show_bug.cgi?id=65377
1840         Skip the entire node when it is right to do so, instead of stepping
1841         through every character, so we save CPU time on checking every position
1842         unnecessarily.
1843
1844         Reviewed by Darin Adler.
1845
1846         Test: perf/selection-skip-hidden-node.html
1847
1848         * dom/Position.cpp:
1849         (WebCore::Position::upstream):
1850         (WebCore::Position::downstream):
1851         * dom/PositionIterator.cpp:
1852         (WebCore::PositionIterator::moveToLeafNodeStart):
1853         (WebCore::PositionIterator::moveToLeafNodeEnd):
1854         * dom/PositionIterator.h:
1855         * editing/htmlediting.cpp:
1856         (WebCore::nextCandidate):
1857         (WebCore::nextVisuallyDistinctCandidate):
1858         (WebCore::previousCandidate):
1859         (WebCore::previousVisuallyDistinctCandidate):
1860
1861 2012-01-25  Kaustubh Atrawalkar  <kaustubh@motorola.com>
1862
1863         Remove unnecessary member variable from PluginView.
1864         https://bugs.webkit.org/show_bug.cgi?id=76909
1865
1866         Reviewed by Adam Roben.
1867
1868         No new tests needed.
1869
1870         * plugins/PluginView.cpp:
1871         (WebCore::PluginView::getURLNotify):
1872         (WebCore::PluginView::getURL):
1873         (WebCore::PluginView::PluginView):
1874         (WebCore::PluginView::handlePost):
1875         (WebCore::PluginView::getValueForURL):
1876         (WebCore::PluginView::setValueForURL):
1877         * plugins/PluginView.h:
1878
1879 2012-01-25  Yael Aharon  <yael.aharon@nokia.com>
1880
1881         [Qt] Build fix when using force_static_libs_as_shared
1882         https://bugs.webkit.org/show_bug.cgi?id=76832
1883
1884         Reviewed by Simon Hausmann.
1885
1886         Add a dependency on QtWidgets, when compiling against Qt5.
1887
1888         No new tests. This is a build fix.
1889
1890         * Target.pri:
1891
1892 2012-01-25  Sami Kyostila  <skyostil@chromium.org>
1893
1894         Clipping of render layer boundaries does not take page scale into account
1895         https://bugs.webkit.org/show_bug.cgi?id=76850
1896
1897         Reviewed by Simon Fraser.
1898
1899         When inserting render layers into the compositor's overlap map, the
1900         layer boundaries are clipped against any potential parent clip rects.
1901         The clip rects are given in CSS coordinates, while the render layer
1902         boundaries are in scaled CSS coordinates, so the result is incorrect.
1903         This patch scales the clip rects before calculating the intersection.
1904
1905         Test: compositing/overflow/overflow-scaled-descendant-overlapping.html
1906
1907         * rendering/RenderLayerCompositor.cpp:
1908         (WebCore::RenderLayerCompositor::addToOverlapMap):
1909
1910 2012-01-25  Stephen Chenney  <schenney@chromium.org>
1911
1912         Linecaps wrong for zero length lines
1913         https://bugs.webkit.org/show_bug.cgi?id=71820
1914
1915         Reviewed by Nikolas Zimmermann.
1916
1917         Total reworking of the method used to draw zero-length linecaps for
1918         SVG. This patch works for all zero length sub-paths.
1919
1920         Tests: svg/stroke/zero-length-path-linecap-rendering.svg
1921                svg/stroke/zero-length-subpaths-linecap-rendering.svg
1922
1923         * rendering/svg/RenderSVGShape.cpp: Significant refactoring to enable
1924           new implementation and clarify code.
1925         (WebCore::RenderSVGShape::createShape):
1926         (WebCore::RenderSVGShape::strokeContains):
1927         (WebCore::RenderSVGShape::shouldStrokeZeroLengthSubpath):
1928         (WebCore::RenderSVGShape::zeroLengthSubpathRect):
1929         (WebCore::RenderSVGShape::zeroLengthLinecapPath):
1930         (WebCore::RenderSVGShape::nonScalingStrokePath):
1931         (WebCore::RenderSVGShape::setupNonScalingStrokeTransform):
1932         (WebCore::RenderSVGShape::fillShape):
1933         (WebCore::RenderSVGShape::strokePath):
1934         (WebCore::RenderSVGShape::fillAndStrokePath):
1935         (WebCore::RenderSVGShape::updateCachedBoundaries):
1936         (WebCore::RenderSVGShape::processZeroLengthSubpaths):
1937         * rendering/svg/RenderSVGShape.h: Declarations for new methods.
1938         * rendering/svg/SVGSubpathData.h: Class for finding zero length subpaths.
1939         * svg/SVGPathBuilder.h: Fix typos
1940         * svg/SVGPathConsumer.h: Fix typos
1941         * svg/SVGPathSegListBuilder.h: Fix typos
1942         * svg/SVGPathTraversalStateBuilder.h: Fix typos
1943
1944 2012-01-23  Yury Semikhatsky  <yurys@chromium.org>
1945
1946         Web Inspector: show memory counter graphs in timeline panel
1947         https://bugs.webkit.org/show_bug.cgi?id=76843
1948
1949         Timeline panel is extended with several graphs depicting total node count,
1950         number of DOM groups and event listeners. This feature is hidden behind
1951         experimental setting.
1952
1953         Reviewed by Pavel Feldman.
1954
1955         * English.lproj/localizedStrings.js:
1956         * inspector/Inspector.json:
1957         * inspector/InspectorController.cpp:
1958         (WebCore::InspectorController::InspectorController):
1959         * inspector/InspectorTimelineAgent.cpp:
1960         (WebCore::InspectorTimelineAgent::setDomCountersEnabled):
1961         (WebCore::InspectorTimelineAgent::didCallFunction):
1962         (WebCore::InspectorTimelineAgent::didDispatchEvent):
1963         (WebCore::InspectorTimelineAgent::didWriteHTML):
1964         (WebCore::InspectorTimelineAgent::didFireTimer):
1965         (WebCore::InspectorTimelineAgent::didEvaluateScript):
1966         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
1967         (WebCore::InspectorTimelineAgent::collectDomCounters):
1968         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1969         * inspector/InspectorTimelineAgent.h:
1970         (WebCore::InspectorTimelineAgent::create):
1971         * inspector/TimelineRecordFactory.cpp:
1972         * inspector/front-end/Settings.js:
1973         (WebInspector.ExperimentsSettings):
1974         * inspector/front-end/TimelinePanel.js:
1975         (WebInspector.TimelinePanel):
1976         (WebInspector.MemoryStatistics):
1977         (WebInspector.MemoryStatistics.prototype.setTopPosition):
1978         (WebInspector.MemoryStatistics.prototype.setSidebarWidth):
1979         (WebInspector.MemoryStatistics.prototype._sidebarResized):
1980         (WebInspector.MemoryStatistics.prototype._updateSize):
1981         (WebInspector.MemoryStatistics.prototype._updateSidebarSize):
1982         (WebInspector.MemoryStatistics.prototype._createCounterSidebarElement):
1983         (WebInspector.MemoryStatistics.prototype.addTimlineEvent):
1984         (WebInspector.MemoryStatistics.prototype._draw.getGroupCount):
1985         (WebInspector.MemoryStatistics.prototype._draw.getNodeCount):
1986         (WebInspector.MemoryStatistics.prototype._draw.getListenerCount):
1987         (WebInspector.MemoryStatistics.prototype._draw):
1988         (WebInspector.MemoryStatistics.prototype._calculateVisibleIndexes):
1989         (WebInspector.MemoryStatistics.prototype._onMouseOver):
1990         (WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
1991         (WebInspector.MemoryStatistics.prototype.visible):
1992         (WebInspector.MemoryStatistics.prototype.show):
1993         (WebInspector.MemoryStatistics.prototype.refresh):
1994         (WebInspector.MemoryStatistics.prototype.hide):
1995         (WebInspector.MemoryStatistics.prototype._setVerticalClip):
1996         (WebInspector.MemoryStatistics.prototype._calculateXValues):
1997         (WebInspector.MemoryStatistics.prototype._drawPolyline):
1998         (WebInspector.MemoryStatistics.prototype._drawBottomBound):
1999         (WebInspector.MemoryStatistics.prototype._clear):
2000         (WebInspector.TimelinePanel.prototype._startSplitterDragging):
2001         (WebInspector.TimelinePanel.prototype._splitterDragging):
2002         (WebInspector.TimelinePanel.prototype._endSplitterDragging):
2003         (WebInspector.TimelinePanel.prototype._setSplitterPosition):
2004         (WebInspector.TimelinePanel.prototype.get statusBarItems):
2005         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
2006         (WebInspector.TimelinePanel.prototype._toggleMemoryStatistics):
2007         (WebInspector.TimelinePanel.prototype._onTimelineEventRecorded):
2008         (WebInspector.TimelinePanel.prototype.sidebarResized):
2009         (WebInspector.TimelinePanel.prototype._refresh):
2010         * inspector/front-end/timelinePanel.css:
2011         (#timeline-memory-splitter):
2012         (#memory-counters-graph):
2013         (#memory-graphs-container):
2014         (#memory-graphs-container .split-view-contents):
2015         (.timeline-marker):
2016         (.memory-counter-sidebar-info):
2017         (.memory-counter-sidebar-info.bottom-border-visible):
2018
2019 2012-01-25  Joseph Pecoraro  <pecoraro@apple.com>
2020
2021         <http://webkit.org/b/76941> Web Inspector: Remove Unused InspectorFrontendHost.search Stub
2022
2023         Reviewed by Pavel Feldman.
2024
2025         * inspector/front-end/InspectorFrontendHostStub.js:
2026
2027 2012-01-25  Vsevolod Vlasov  <vsevik@chromium.org>
2028
2029         Unreviewed inspector style fix.
2030
2031         * inspector/front-end/tabbedPane.css:
2032         (.tabbed-pane-header-tab-close-button):
2033         (select.tabbed-pane-header-tabs-drop-down-select):
2034
2035 2012-01-25  Pablo Flouret  <pablof@motorola.com>
2036
2037         Fix incorrect behavior in HTMLCollection.prototype.item().
2038         https://bugs.webkit.org/show_bug.cgi?id=74468
2039
2040         Reviewed by Adam Barth.
2041
2042         HTMLCollection.prototype.item("someString") was falling back to
2043         .namedItem("someString"), which is wrong per spec. Also align the
2044         handling of various other types of objects passed as the argument with
2045         the spec and the rest of the browsers.
2046
2047         Test: fast/dom/collection-item.html
2048
2049         * bindings/js/JSHTMLCollectionCustom.cpp: Remove custom implementation of item().
2050         * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Ditto.
2051         * html/HTMLCollection.idl: Remove [Custom] in item(), it's not needed.
2052
2053 2012-01-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2054
2055         Unreviewed, rolling out r105858.
2056         http://trac.webkit.org/changeset/105858
2057         https://bugs.webkit.org/show_bug.cgi?id=77004
2058
2059         It made many tests crash on Qt (Requested by Ossy on #webkit).
2060
2061         * GNUmakefile.list.am:
2062         * Target.pri:
2063         * WebCore.gypi:
2064         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2065         (WebCore::GraphicsLayerTextureMapper::addAnimation):
2066         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
2067         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
2068         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2069         (GraphicsLayerTextureMapper):
2070         * platform/graphics/texmap/TextureMapperAnimation.cpp: Removed.
2071         * platform/graphics/texmap/TextureMapperAnimation.h: Removed.
2072         * platform/graphics/texmap/TextureMapperNode.cpp:
2073         (WebCore::TextureMapperNode::syncCompositingStateSelf):
2074         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
2075         (WebCore::normalizedAnimationValue):
2076         (WebCore):
2077         (WebCore::TextureMapperNode::applyOpacityAnimation):
2078         (WebCore::solveEpsilon):
2079         (WebCore::solveCubicBezierFunction):
2080         (WebCore::solveStepsFunction):
2081         (WebCore::applyTimingFunction):
2082         (WebCore::TextureMapperNode::applyTransformAnimation):
2083         (WebCore::TextureMapperNode::applyAnimationFrame):
2084         (WebCore::TextureMapperNode::applyAnimation):
2085         (WebCore::TextureMapperNode::hasOpacityAnimation):
2086         (WebCore::TextureMapperNode::hasTransformAnimation):
2087         (WebCore::TextureMapperNode::syncAnimations):
2088         (WebCore::TextureMapperNode::syncAnimationsRecursively):
2089         (WebCore::TextureMapperNode::syncCompositingState):
2090         (WebCore::TextureMapperAnimation::TextureMapperAnimation):
2091         * platform/graphics/texmap/TextureMapperNode.h:
2092         (TextureMapperAnimation):
2093         (WebCore::TextureMapperAnimation::create):
2094         (WebCore):
2095         (TextureMapperNode):
2096
2097 2012-01-25  Kenichi Ishibashi  <bashi@chromium.org>
2098
2099         fast/text/unicode-variation-selector.html doesn't pass on Lion
2100         https://bugs.webkit.org/show_bug.cgi?id=76041
2101
2102         Reviewed by Dan Bernstein.
2103
2104         Consumes non-BMP marks in advanceByCombiningCharacterSequence() to take into
2105         account Ideographic variation selectors (these are non-BMP marks).
2106
2107         No new tests. fast/text/unicode-variation-selector.html should pass on Lion.
2108
2109         * platform/graphics/mac/ComplexTextController.cpp:
2110         (WebCore::advanceByCombiningCharacterSequence): Use Unicode code point
2111         to iterate the loop which consumes marks.
2112
2113 2012-01-25  Ilya Tikhonovsky  <loislo@chromium.org>
2114
2115         Web Inspector: DetailedHeapSnapshot: adjust node name cell format for the retainers tree.
2116         https://bugs.webkit.org/show_bug.cgi?id=76989
2117
2118         Reviewed by Pavel Feldman.
2119
2120         * English.lproj/localizedStrings.js:
2121         * inspector/front-end/DetailedHeapshotGridNodes.js:
2122         (WebInspector.HeapSnapshotGenericObjectNode.prototype._createObjectCell):
2123         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
2124         (WebInspector.HeapSnapshotObjectNode):
2125         (WebInspector.HeapSnapshotObjectNode.prototype._prefixObjectCell):
2126         (WebInspector.HeapSnapshotObjectNode.prototype._postfixObjectCell):
2127         * inspector/front-end/HeapSnapshot.js:
2128         (WebInspector.HeapSnapshotEdgesProvider.prototype._serialize):
2129
2130 2012-01-25  Vsevolod Vlasov  <vsevik@chromium.org>
2131
2132         Web Inspector: [InspectorIndexedDB] Pass Database, object stores and indexes meta information to frontend.
2133         https://bugs.webkit.org/show_bug.cgi?id=76711
2134
2135         Reviewed by Yury Semikhatsky.
2136
2137         * inspector/Inspector.json:
2138         * inspector/InspectorIndexedDBAgent.cpp:
2139         (WebCore):
2140         (WebCore::assertDocument):
2141         (WebCore::assertIDBFactory):
2142         (WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):
2143         (WebCore::InspectorIndexedDBAgent::requestDatabase):
2144         * inspector/InspectorIndexedDBAgent.h:
2145         (InspectorIndexedDBAgent):
2146         * inspector/front-end/IndexedDBModel.js:
2147         (WebInspector.IndexedDBModel):
2148         (WebInspector.IndexedDBModel.prototype._frameDetached):
2149         (WebInspector.IndexedDBModel.prototype._reset):
2150         (WebInspector.IndexedDBModel.prototype._originAddedToFrame):
2151         (WebInspector.IndexedDBModel.prototype._originRemovedFromFrame):
2152         (WebInspector.IndexedDBModel.prototype._originRemoved):
2153         (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
2154         (WebInspector.IndexedDBModel.prototype._databaseRemoved):
2155         (WebInspector.IndexedDBModel.prototype._loadDatabaseNamesForFrame):
2156         (WebInspector.IndexedDBModel.prototype._loadDatabase):
2157         (WebInspector.IndexedDBModel.Frame):
2158         (WebInspector.IndexedDBModel.Database):
2159         (WebInspector.IndexedDBModel.ObjectStore):
2160         (WebInspector.IndexedDBModel.ObjectStoreIndex):
2161         (WebInspector.IndexedDBRequestManager.prototype._databaseNamesLoaded):
2162         (WebInspector.IndexedDBRequestManager.prototype.requestDatabase.innerCallback):
2163         (WebInspector.IndexedDBRequestManager.prototype.requestDatabase):
2164         (WebInspector.IndexedDBRequestManager.prototype._databaseLoaded):
2165         (WebInspector.IndexedDBRequestManager.prototype._frameDetached):
2166         (WebInspector.IndexedDBRequestManager.prototype._databaseRemoved):
2167         (WebInspector.IndexedDBRequestManager.prototype._reset):
2168         (WebInspector.IndexedDBRequestManager.DatabaseRequest):
2169         (WebInspector.IndexedDBDispatcher.prototype.databaseNamesLoaded):
2170         (WebInspector.IndexedDBDispatcher.prototype.databaseLoaded):
2171
2172 2012-01-25  Peter Rybin  <peter.rybin@gmail.com>
2173
2174         Web Inspector: CodeGeneratorInspector.py: add optional runtime validator
2175         https://bugs.webkit.org/show_bug.cgi?id=76676
2176
2177         Reviewed by Yury Semikhatsky.
2178
2179         Generator algorithm is redone significantly.
2180
2181         * inspector/CodeGeneratorInspector.py:
2182         (RawTypes.BaseType):
2183         (RawTypes.BaseType.request_raw_internal_runtime_cast):
2184         (RawTypes.BaseType.generate_validate_method_impl):
2185         (RawTypes):
2186         (RawTypes.generate_validate_methods):
2187         (RawTypes.String):
2188         (RawTypes.String.generate_validate_method):
2189         (RawTypes.String.get_raw_validator_call_text):
2190         (RawTypes.Int):
2191         (RawTypes.Int.generate_validate_method):
2192         (RawTypes.Int.get_raw_validator_call_text):
2193         (RawTypes.Number):
2194         (RawTypes.Number.generate_validate_method):
2195         (RawTypes.Number.get_raw_validator_call_text):
2196         (RawTypes.Bool):
2197         (RawTypes.Bool.generate_validate_method):
2198         (RawTypes.Bool.get_raw_validator_call_text):
2199         (RawTypes.Object):
2200         (RawTypes.Object.generate_validate_method):
2201         (RawTypes.Object.get_raw_validator_call_text):
2202         (RawTypes.Any):
2203         (RawTypes.Any.generate_validate_method):
2204         (RawTypes.Any.get_raw_validator_call_text):
2205         (RawTypes.Array):
2206         (RawTypes.Array.generate_validate_method):
2207         (RawTypes.Array.get_raw_validator_call_text):
2208         (TypeBindings.create_named_type_declaration.Helper):
2209         (TypeBindings.create_ad_hoc_type_declaration.Helper):
2210         (TypeBindings.create_type_declaration_.EnumBinding):
2211         (TypeBindings.create_type_declaration_.EnumBinding.resolve_inner):
2212         (TypeBindings.create_type_declaration_.EnumBinding.request_user_runtime_cast):
2213         (TypeBindings.create_type_declaration_.EnumBinding.request_internal_runtime_cast):
2214         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator):
2215         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
2216         (TypeBindings.create_type_declaration_.EnumBinding.get_validator_call_text):
2217         (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
2218         (TypeBindings.create_type_declaration_.PlainString):
2219         (TypeBindings.create_type_declaration_.PlainString.resolve_inner):
2220         (TypeBindings.create_type_declaration_.PlainString.request_user_runtime_cast):
2221         (TypeBindings.create_type_declaration_.PlainString.request_internal_runtime_cast):
2222         (TypeBindings.create_type_declaration_.PlainString.get_validator_call_text):
2223         (TypeBindings.create_type_declaration_.TypedefString):
2224         (TypeBindings.create_type_declaration_.TypedefString.resolve_inner):
2225         (TypeBindings.create_type_declaration_.TypedefString.request_user_runtime_cast):
2226         (TypeBindings.create_type_declaration_.TypedefString.request_internal_runtime_cast):
2227         (TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
2228         (TypeBindings.create_type_declaration_.TypedefString.get_validator_call_text):
2229         (TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
2230         (TypeBindings.create_type_declaration_.ClassBinding):
2231         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner):
2232         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner.PropertyData):
2233         (TypeBindings.create_type_declaration_.ClassBinding.resolve_inner.ResolveData):
2234         (TypeBindings.create_type_declaration_.ClassBinding.request_user_runtime_cast):
2235         (TypeBindings.create_type_declaration_.ClassBinding.request_internal_runtime_cast):
2236         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator):
2237         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder):
2238         (get_validator_call_text):
2239         (get_in_c_type_text):
2240         (AdHocTypeContextImpl):
2241         (AdHocTypeContextImpl.__init__):
2242         (AdHocTypeContextImpl.get_type_name_fix):
2243         (AdHocTypeContextImpl.get_type_name_fix.NameFix):
2244         (AdHocTypeContextImpl.get_type_name_fix.NameFix.output_comment):
2245         (AdHocTypeContextImpl.add_type):
2246         (PlainObjectBinding):
2247         (PlainObjectBinding.resolve_inner):
2248         (PlainObjectBinding.request_user_runtime_cast):
2249         (PlainObjectBinding.request_internal_runtime_cast):
2250         (PlainObjectBinding.get_validator_call_text):
2251         (ArrayBinding):
2252         (ArrayBinding.resolve_inner):
2253         (ArrayBinding.resolve_inner.AdHocTypeContext):
2254         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix):
2255         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix.NameFix):
2256         (ArrayBinding.resolve_inner.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
2257         (ArrayBinding.resolve_inner.AdHocTypeContext.add_type):
2258         (ArrayBinding.resolve_inner.ResolveData):
2259         (ArrayBinding.request_user_runtime_cast):
2260         (ArrayBinding.request_internal_runtime_cast):
2261         (ArrayBinding.get_code_generator):
2262         (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
2263         (ArrayBinding.get_validator_call_text):
2264         (ArrayBinding.get_in_c_type_text):
2265         (RawTypeBinding.resolve_inner):
2266         (RawTypeBinding):
2267         (RawTypeBinding.request_user_runtime_cast):
2268         (RawTypeBinding.request_internal_runtime_cast):
2269         (RawTypeBinding.get_validator_call_text):
2270         (TypeData.get_name):
2271         (TypeData):
2272         (TypeData.get_domain_name):
2273         (resolve_param_type):
2274         (NeedRuntimeCastRequest):
2275         (NeedRuntimeCastRequest.__init__):
2276         (NeedRuntimeCastRequest.acknowledge):
2277         (NeedRuntimeCastRequest.is_acknowledged):
2278         (resolve_all_types):
2279         (resolve_all_types.ForwardListener):
2280         (resolve_all_types.ForwardListener.add_type_data):
2281         (resolve_all_types.ResolveContext):
2282         (Generator):
2283         (Generator.go):
2284         (Generator.process_event):
2285         (Generator.process_event.AdHocTypeContext):
2286         (Generator.process_event.AdHocTypeContext.add_type):
2287         (Generator.process_event.EventForwardListener):
2288         (Generator.process_event.EventForwardListener.add_type_data):
2289         (Generator.process_event.EventResolveContext):
2290         (Generator.process_event.EventGenerateContext):
2291         (Generator.process_types.GenerateContext):
2292         (Generator.process_types.create_type_builder_caller.call_type_builder):
2293         (Generator.process_types.generate_forward_callback):
2294         * inspector/InspectorValues.h:
2295         (WebCore::InspectorObject::size):
2296
2297 2012-01-25  Anton Muhin  <antonm@chromium.org>
2298
2299         Unreview manual revert of r105843.
2300
2301         * fileapi/EntryBase.cpp:
2302         (WebCore::EntryBase::toURL):
2303         * page/SecurityOrigin.cpp:
2304         (WebCore::extractInnerURL):
2305         * platform/KURL.h:
2306         (KURL):
2307         * platform/KURLGoogle.cpp:
2308         (WebCore):
2309         (WebCore::KURLGooglePrivate::setUtf8):
2310         (WebCore::KURLGooglePrivate::setAscii):
2311         (WebCore::KURLGooglePrivate::initProtocolIsInHTTPFamily):
2312         (WebCore::KURLGooglePrivate::copyTo):
2313         (WebCore::encodeWithURLEscapeSequences):
2314         * platform/KURLGooglePrivate.h:
2315         (KURLGooglePrivate):
2316
2317 2012-01-25  Noel Gordon  <noel.gordon@gmail.com>
2318
2319         Use maximum image dimension definition from libwebp
2320         https://bugs.webkit.org/show_bug.cgi?id=76980
2321
2322         Reviewed by Kent Tamura.
2323
2324         No new tests, no change in behavior.
2325
2326         * platform/image-encoders/skia/WEBPImageEncoder.cpp:
2327         (WebCore::encodePixels): s/WEBP_MAX_DIMENSION/WEBPImageEncoder::MaximumImageDimension/
2328         * platform/image-encoders/skia/WEBPImageEncoder.h:
2329         (): Remove local definition of the maximum webp image dimension
2330
2331 2012-01-25  Noel Gordon  <noel.gordon@gmail.com>
2332
2333         JPEGDecoder should use imageDecoder colorProfile helpers
2334         https://bugs.webkit.org/show_bug.cgi?id=76968
2335         
2336         Reviewed by Adam Barth.
2337
2338         No new tests. Cover by existing tests, in particular:
2339           fast/images/ycbcr-with-cmyk-color-profile.html
2340           fast/images/gray-scale-jpeg-with-color-profile.html
2341           fast/images/cmyk-jpeg-with-color-profile.html
2342           fast/images/color-jpeg-with-color-profile.html
2343
2344         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: white-space removals via Xcode.
2345         (WebCore::readColorProfile):  Use ImageDecoder.h color profile helper routines.
2346         (WebCore::JPEGImageReader::JPEGImageReader):
2347         (WebCore::JPEGImageReader::decode):
2348
2349 2012-01-25  No'am Rosenthal  <noam.rosenthal@nokia.com>
2350
2351         [Texmap] Divide TextureMapperNode.cpp to 3 files.
2352         https://bugs.webkit.org/show_bug.cgi?id=76660
2353
2354         Reviewed by Kenneth Rohde Christiansen.
2355
2356         Split the animation part of TextureMapperNode out to a separate file, called
2357         TextureMapperAnimation.
2358         Provide a clean interface for that class, that allows separating the internals of the scene
2359         painting from the internals of the animation interpolation.
2360
2361         No new tests. Existing animation tests cover this.
2362
2363         * GNUmakefile.list.am: Added new TextureMapper-related files.
2364         * Target.pri: Added new TextureMapper-related files.
2365         * WebCore.gypi: Added new TextureMapper-related files.
2366         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2367         (WebCore::GraphicsLayerTextureMapper::addAnimation):
2368         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
2369         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
2370         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2371         * platform/graphics/texmap/TextureMapperAnimation.cpp: Added.
2372         * platform/graphics/texmap/TextureMapperAnimation.h: Added.
2373         * platform/graphics/texmap/TextureMapperNode.cpp:
2374         (WebCore::TextureMapperNode::syncCompositingStateSelf):
2375         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
2376         (WebCore::TextureMapperNode::syncAnimations):
2377         (WebCore::TextureMapperNode::syncAnimationsRecursively):
2378         (WebCore::TextureMapperNode::syncCompositingState):
2379         * platform/graphics/texmap/TextureMapperNode.h:
2380
2381 2012-01-25  Roland Steiner  <rolandsteiner@chromium.org>
2382
2383         <style scoped>: Implement registering of <style scoped> with the scoping element
2384         https://bugs.webkit.org/show_bug.cgi?id=67790
2385
2386         Implement registering of a <style> element with its parent element if the 'scoped' attribute is set.
2387         Update the registration whenever the 'scoped' attribute is changed,
2388         or the <style> element eneters or leaves the tree.
2389
2390         Also, extend windows.internals to allow for testing of the registration ref-counting.
2391
2392         Reviewed by Dimitri Glazkov.
2393
2394         Test: fast/css/style-scoped/registering.html
2395
2396         * WebCore.exp.in:
2397         * dom/Element.cpp:
2398         (WebCore::Element::hasScopedHTMLStyleChild):
2399         (WebCore::Element::numberOfScopedHTMLStyleChildren):
2400         (WebCore::Element::registerScopedHTMLStyleChild):
2401         (WebCore::Element::unregisterScopedHTMLStyleChild):
2402         * dom/Element.h:
2403         * dom/ElementRareData.h:
2404         (WebCore::ElementRareData::ElementRareData):
2405         (WebCore::ElementRareData::registerScopedHTMLStyleChild):
2406         (WebCore::ElementRareData::unregisterScopedHTMLStyleChild):
2407         (WebCore::ElementRareData::hasScopedHTMLStyleChild):
2408         (WebCore::ElementRareData::numberOfScopedHTMLStyleChildren):
2409         * html/HTMLStyleElement.cpp:
2410         (WebCore::HTMLStyleElement::HTMLStyleElement):
2411         (WebCore::HTMLStyleElement::~HTMLStyleElement):
2412         (WebCore::HTMLStyleElement::parseMappedAttribute):
2413         (WebCore::HTMLStyleElement::registerWithScopingNode):
2414         (WebCore::HTMLStyleElement::unregisterWithScopingNode):
2415         (WebCore::HTMLStyleElement::insertedIntoDocument):
2416         (WebCore::HTMLStyleElement::removedFromDocument):
2417         (WebCore::HTMLStyleElement::willRemove):
2418         * html/HTMLStyleElement.h:
2419         * testing/Internals.cpp:
2420         (WebCore::Internals::numberOfScopedHTMLStyleChildren):
2421         * testing/Internals.h:
2422         * testing/Internals.idl:
2423
2424 2012-01-24  Daniel Bates  <dbates@webkit.org>
2425
2426         Attempt to fix Mac build after changeset <http://trac.webkit.org/changeset/105843>
2427         (https://bugs.webkit.org/show_bug.cgi?id=75049)
2428
2429         Don't include NotImplemented.h in KURL.h since NotImplemented.h includes Logging.h, which defines
2430         LOG_CHANNEL_PREFIX to be "Log". And this conflicts with the inclusion of WebKitLogging.h in
2431         WebHTMLView.mm (which would have defined LOG_CHANNEL_PREFIX to be "WebKitLog").
2432
2433         * platform/KURL.h:
2434         (WebCore::KURL::innerURL):
2435
2436 2012-01-24  Vangelis Kokkevis  <vangelis@chromium.org>
2437
2438         [chromium] Ignore m_skipsDraw in TiledLayerChromium::drawsContent()
2439         https://bugs.webkit.org/show_bug.cgi?id=76735
2440
2441         This is to add skipped layers to their RenderSurface's layer list so that they
2442         are considered in the next update. Without this change, m_skipsDraw = false sticks
2443         with the layer for the remainder of its lifetime.
2444
2445         Reviewed by James Robinson.
2446
2447         Tests: Unit test (TiledLayerChromiumTest.cpp)
2448
2449         * platform/graphics/chromium/TiledLayerChromium.cpp:
2450         (WebCore::TiledLayerChromium::drawsContent):
2451         * platform/graphics/chromium/TiledLayerChromium.h:
2452         (WebCore::TiledLayerChromium::skipsDraw):
2453
2454 2012-01-24  Kentaro Hara  <haraken@chromium.org>
2455
2456         Invalidate r105697, r105766, r105809 and r105805
2457         https://bugs.webkit.org/show_bug.cgi?id=76970
2458
2459         Reviewed by Adam Barth.
2460
2461         I've been trying to stop rebuilding .h/.cpp files generated by
2462         unchanged IDLs (bug 76836), but the approach was wrong.
2463         This patch invalidates patches committed in r105697, r105766,
2464         r105809 and r105805.
2465
2466         In r105697, r105766, r105809 and r105805, I modified CodeGenerator*.pm
2467         so that they overwrite .h/.cpp files only when the bytes differ.
2468         By this fix, we were able to stop rebuilding .h/.cpp files that are not
2469         changed. However, the fix has made generate-bindings.pl run for almost
2470         all IDLs every time. The reason is as follows:
2471
2472         (0) Assume that there are A.idl, B.idl and C.idl.
2473
2474         (1) Modify A.idl.
2475         (2) First build.
2476         (3) supplemental_dependency.tmp is updated.
2477         (4) generate-bindings.pl runs for A.idl, B.idl and C.idl.
2478         (5) A.h and A.cpp are updated. B.h, B.cpp, C.h and C.cpp are not updated.
2479
2480         (6) Second build.
2481         (7) Since B.h, B.cpp, C.h and C.cpp are older than supplemental_dependency.tmp, generate-bindings.pl runs for B.idl and C.idl.
2482         (8) B.h, B.cpp, C.h and C.cpp are not updated.
2483
2484         (9) Third build.
2485         (10) Since B.h, B.cpp, C.h and C.cpp are older than supplemental_dependency.tmp, generate-bindings.pl runs for B.idl and C.idl.
2486         (11) B.h, B.cpp, C.h and C.cpp are not updated.
2487         ...
2488
2489         We should fix the bug somehow, but how to fix it is not obvious.
2490         For the time being, this patch invalidates r105697, r105766, r105809
2491         and r105805.
2492
2493         No tests. No change in behavior.
2494
2495         * bindings/scripts/CodeGenerator.pm:
2496         (UpdateFile):
2497         * bindings/scripts/CodeGeneratorCPP.pm:
2498         (WriteData):
2499         * bindings/scripts/CodeGeneratorJS.pm:
2500         (WriteData):
2501         * bindings/scripts/CodeGeneratorObjC.pm:
2502         (WriteData):
2503         * bindings/scripts/CodeGeneratorV8.pm:
2504         (WriteData):
2505
2506 2012-01-24  Eric Uhrhane  <ericu@chromium.org>
2507
2508         Add full support for filesystem URLs.
2509         https://bugs.webkit.org/show_bug.cgi?id=75049
2510
2511         Reviewed by Adam Barth.
2512
2513         No new tests; existing layout tests cover the basic functionality, and
2514         the new functionality won't be there until Chromium adds it.  This patch
2515         merely enables that, without changing behavior.
2516
2517         * fileapi/EntryBase.cpp:
2518         (WebCore::EntryBase::toURL): Add missing escaping of URL path.
2519
2520         * page/SecurityOrigin.cpp:
2521         (WebCore::extractInnerURL): Use innerURL member, if it's populated.
2522
2523         * platform/KURL.h:
2524         (WebCore::KURL::innerURL): Add innerURL member.
2525
2526         * platform/KURLGoogle.cpp:
2527         (WebCore::KURLGooglePrivate::KURLGooglePrivate):
2528         (WebCore::KURLGooglePrivate::operator=):
2529         Add copy constructor and operator=, which are now needed since
2530         m_innerURL needs special handling.
2531         (WebCore::KURLGooglePrivate::setUtf8):
2532         (WebCore::KURLGooglePrivate::setAscii):
2533         Add calls to initInnerURL.
2534         (WebCore::KURLGooglePrivate::initInnerURL):
2535         Add method to init/copy m_innerURL.
2536         (WebCore::KURLGooglePrivate::copyTo):
2537         Handle m_innerURL during copies.
2538         (WebCore::encodeWithURLEscapeSequences):
2539         Unescape %2F ['/'] in paths; it's much more readable, and it's safe.
2540
2541         * platform/KURLGooglePrivate.h:
2542         (WebCore::KURLGooglePrivate::innerURL): Add accessor for new m_innerURL.
2543
2544 2012-01-24  Ken Buchanan  <kenrb@chromium.org>
2545
2546         Crash in updateFirstLetter() from unnecessary anonymous block
2547         https://bugs.webkit.org/show_bug.cgi?id=72675
2548
2549         Reviewed by David Hyatt.
2550
2551         There was a problem with anonymous blocks not getting removed when
2552         their only block flow siblings are removed if they also have non-block
2553         flow first-letter siblings (i.e. floats). This patch modifies
2554         RenderBlock::removeChild() to look for this situation and strip out
2555         unnecessary anonymous container blocks if it occurs.
2556
2557         * rendering/RenderBlock.cpp:
2558         (WebCore::RenderBlock::removeChild):
2559         (WebCore::RenderBlock::collapseAnonymousBoxChild): Added
2560         * rendering/RenderBlock.h:
2561         (WebCore::RenderBlock::collapseAnonymousBoxChild): Added
2562
2563 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
2564
2565         [chromium] event.dataTransfer.types should not return "Text" or "URL"
2566         https://bugs.webkit.org/show_bug.cgi?id=76218
2567
2568         Per the spec, "Text" and "URL" are special values handled for IE compatibility reasons in
2569         dataTransfer.setData() and dataTransfer.getData(). These values should not be exposed
2570         elsewhere.
2571
2572         Reviewed by Tony Chang.
2573
2574         Test: fast/events/dropzone-005.html
2575
2576         * platform/chromium/ChromiumDataObject.cpp:
2577         (WebCore::ChromiumDataObject::types):
2578         (WebCore::ChromiumDataObject::getData):
2579         * platform/chromium/DragDataChromium.cpp:
2580         (WebCore::DragData::containsURL):
2581         (WebCore::DragData::asURL):
2582         (WebCore::DragData::canSmartReplace):
2583
2584 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
2585
2586         Make DataTransferItemList::length() const.
2587         https://bugs.webkit.org/show_bug.cgi?id=76946
2588
2589         Just a const-correctness change.
2590
2591         Reviewed by Tony Chang.
2592
2593         No new tests since no functionality changed.
2594
2595         * dom/DataTransferItemList.h:
2596         (DataTransferItemList):
2597         * platform/chromium/DataTransferItemListChromium.cpp:
2598         (WebCore::DataTransferItemListChromium::length):
2599         * platform/chromium/DataTransferItemListChromium.h:
2600         (DataTransferItemListChromium):
2601         * platform/qt/DataTransferItemListQt.cpp:
2602         (WebCore::DataTransferItemListQt::length):
2603         * platform/qt/DataTransferItemListQt.h:
2604         (DataTransferItemListQt):
2605
2606 2012-01-24  Tony Chang  <tony@chromium.org>
2607
2608         REGRESSION(r103245): can't scroll left/up using scrollbar controls of overflowing elements
2609         https://bugs.webkit.org/show_bug.cgi?id=76317
2610
2611         Reviewed by Darin Adler.
2612
2613         Test: scrollbars/scroll-rtl-or-bt-layer.html
2614
2615         * rendering/RenderLayer.cpp:
2616         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Call scrollToOffsetWithoutAnimation since we're always
2617         scrolling to the just computed offset.
2618
2619 2012-01-24  Mark Rowe  <mrowe@apple.com>
2620
2621         Fix all of the builds after r105812.
2622
2623         * loader/EmptyClients.h: Move the #include in to the correct #if.
2624
2625 2012-01-24  Dmitry Lomov  <dslomov@google.com>
2626
2627         [Chromium][V8] DOMWindow::postMessage crashes if window disassociated with frame.
2628         https://bugs.webkit.org/show_bug.cgi?id=76944.
2629
2630         Reviewed by David Levin.
2631
2632         * bindings/v8/V8Proxy.cpp:
2633         (WebCore::V8Proxy::retrieveWindowForCallingContext):
2634         * bindings/v8/V8Proxy.h:
2635         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2636         (WebCore::handlePostMessageCallback):
2637
2638 2012-01-24  Geoffrey Garen  <ggaren@apple.com>
2639
2640         Updated bindings test expectations after my last patch.
2641
2642         Not reviewed.
2643
2644         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
2645         (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
2646         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
2647         (WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
2648         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
2649         (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
2650         (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
2651         * bindings/scripts/test/JS/JSTestInterface.cpp:
2652         (WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
2653         (WebCore::setJSTestInterfaceSupplementalStr2):
2654         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
2655         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
2656         (WebCore::JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor):
2657         * bindings/scripts/test/JS/JSTestObj.cpp:
2658         (WebCore::setJSTestObjStringAttr):
2659         (WebCore::setJSTestObjStringAttrWithGetterException):
2660         (WebCore::setJSTestObjStringAttrWithSetterException):
2661         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
2662         (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
2663         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
2664         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
2665         (WebCore::jsTestObjPrototypeFunctionAddEventListener):
2666         (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
2667         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
2668         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
2669         (WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
2670         (WebCore::jsTestObjPrototypeFunctionStrictFunction):
2671         * bindings/scripts/test/JS/JSTestOverridingNameGetter.cpp:
2672         (WebCore::jsTestOverridingNameGetterPrototypeFunctionAnotherFunction):
2673         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2674         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
2675
2676 2012-01-24  Greg Billock  <gbillock@google.com>
2677
2678         Change dispatchIntent API to pure virtual in FrameLoaderClient.
2679
2680         The Windows compiler needs this to deal with the forward declaration
2681         of WebCore::IntentRequest.
2682         https://bugs.webkit.org/show_bug.cgi?id=76940
2683
2684         Reviewed by Adam Barth.
2685
2686         * loader/EmptyClients.h:
2687         (WebCore::EmptyFrameLoaderClient::dispatchIntent):
2688         * loader/FrameLoaderClient.h:
2689
2690 2012-01-24  Kentaro Hara  <haraken@chromium.org>
2691
2692         CodeGeneratorJS.pm should overwrite the output .h/.cpp
2693         only if the bytes differ
2694         https://bugs.webkit.org/show_bug.cgi?id=76922
2695
2696         Reviewed by Darin Adler.
2697
2698         This is one of steps to stop rebuilding .h/.cpp files
2699         generated by unchanged IDLs (bug 76836).
2700         This patch makes a change on CodeGeneratorJS.pm so that
2701         it overwrites the output .h/.cpp only if the bytes differ.
2702
2703         No tests. No change in behavior.
2704         I manually confirmed that when I add a new attribute to Element.idl,
2705         the time-stamps of unrelated JS*.h and JS*.cpp do not change.
2706
2707         * bindings/scripts/CodeGeneratorJS.pm:
2708         (WriteData): Used UpdateFileIfChanged().
2709
2710 2012-01-24  Kentaro Hara  <haraken@chromium.org>
2711
2712         CodeGeneratorCPP.pm should overwrite the output .h/.cpp
2713         only if the bytes differ
2714         https://bugs.webkit.org/show_bug.cgi?id=76926
2715
2716         Reviewed by Adam Barth.
2717
2718         This is one of steps to stop rebuilding .h/.cpp files
2719         generated by unchanged IDLs (bug 76836).
2720         This patch makes a change on CodeGeneratorCPP.pm so that
2721         it overwrites the output .h/.cpp only if the bytes differ.
2722
2723         No tests. No change in behavior.
2724         Manually confirm that when you add a new attribute to Element.idl,
2725         the time-stamps of unrelated WebDOM*.h and WebDOM*.cpp do not change.
2726
2727         * bindings/scripts/CodeGeneratorCPP.pm:
2728         (WriteData): Used UpdateFileIfChanged().
2729
2730 2012-01-24  Sheriff Bot  <webkit.review.bot@gmail.com>
2731
2732         Unreviewed, rolling out r105238.
2733         http://trac.webkit.org/changeset/105238
2734         https://bugs.webkit.org/show_bug.cgi?id=76943
2735
2736         Remove the assert text hack as it served its purpose.
2737         (Requested by dave_levin on #webkit).
2738
2739         * dom/ActiveDOMObject.cpp:
2740         (WebCore::ContextDestructionObserver::ContextDestructionObserver):
2741         (WebCore::ContextDestructionObserver::~ContextDestructionObserver):
2742         (WebCore::ActiveDOMObject::ActiveDOMObject):
2743         (WebCore::ActiveDOMObject::~ActiveDOMObject):
2744         * storage/DatabaseSync.cpp:
2745         (WebCore::DatabaseSync::openDatabaseSync):
2746         (WebCore::DatabaseSync::~DatabaseSync):
2747         (WebCore::DatabaseSync::changeVersion):
2748         (WebCore::DatabaseSync::runTransaction):
2749
2750 2012-01-24  Kentaro Hara  <haraken@chromium.org>
2751
2752         [Refactoring] In CodeGeneratorGObject.pm, merge
2753         GeneratePrivateHeader() into WriteData()
2754         https://bugs.webkit.org/show_bug.cgi?id=76923
2755
2756         Reviewed by Adam Barth.
2757
2758         This patch merges GeneratePrivateHeader() into WriteData(),
2759         so that all code to output .h/.cpp is managed by WriteData(),
2760         just like other CodeGenerator*.pm does.
2761
2762         No tests. No change in behavior.
2763         Confirm that GTK/GObject build passes.
2764
2765         * bindings/scripts/CodeGeneratorGObject.pm:
2766         (Generate):
2767         (WriteData): Copied GeneratePrivateHeader() to here.
2768         Removed $hasLegacyParen, $hasRealParent and $hasParent
2769         since they are not used.
2770         (GenerateInterface):
2771
2772 2012-01-24  Daniel Cheng  <dcheng@chromium.org>
2773
2774         dropzone does not normalize type strings
2775         https://bugs.webkit.org/show_bug.cgi?id=76925
2776
2777         Per the HTML spec, we are supposed to normalize types during dropzone processing by
2778         lowercasing them.
2779
2780         Reviewed by Tony Chang.
2781
2782         Tests: fast/events/dropzone-002.html
2783
2784         * dom/Clipboard.cpp:
2785         (WebCore::Clipboard::hasDropZoneType):
2786
2787 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
2788
2789         [GTK] Refactor GTK's accessibilitity code to be more modular
2790         https://bugs.webkit.org/show_bug.cgi?id=76783
2791
2792         Reviewed by Martin Robinson.
2793
2794         Don't expose functions for the ATK interfaces in header files.
2795
2796         Expose only the initialization function for each interface, and
2797         use the generic functions from ATK interfaces where needed.
2798
2799         * accessibility/gtk/WebKitAccessibleInterfaceAction.cpp:
2800         (webkitAccessibleActionDoAction): Made this function static.
2801         (webkitAccessibleActionGetNActions): Ditto.
2802         (webkitAccessibleActionGetDescription): Ditto.
2803         (webkitAccessibleActionGetKeybinding): Ditto.
2804         (webkitAccessibleActionGetName): Ditto.
2805         (webkitAccessibleActionInterfaceInit): Moved to the bottom.
2806         * accessibility/gtk/WebKitAccessibleInterfaceAction.h: Removed all
2807         functions but the one for initializing the interface from here.
2808
2809         * accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp:
2810         (webkitAccessibleComponentRefAccessibleAtPoint): Made this function static.
2811         (webkitAccessibleComponentGetExtents): Ditto.
2812         (webkitAccessibleComponentGrabFocus): Ditto.
2813         (webkitAccessibleComponentInterfaceInit): Moved to the bottom.
2814         * accessibility/gtk/WebKitAccessibleInterfaceComponent.h: Removed all
2815         functions but the one for initializing the interface from here.
2816
2817         * accessibility/gtk/WebKitAccessibleInterfaceDocument.cpp:
2818         (webkitAccessibleDocumentGetAttributeValue): Made this function static.
2819         (webkitAccessibleDocumentGetAttributes): Ditto.
2820         (webkitAccessibleDocumentGetLocale): Ditto.
2821         (webkitAccessibleDocumentInterfaceInit): Moved to the bottom.
2822         * accessibility/gtk/WebKitAccessibleInterfaceDocument.h: Removed all
2823         functions but the one for initializing the interface from here.
2824
2825         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.cpp:
2826         (webkitAccessibleEditableTextSetRunAttributes): Made this function static.
2827         (webkitAccessibleEditableTextSetTextContents): Ditto.
2828         (webkitAccessibleEditableTextInsertText): Ditto.
2829         (webkitAccessibleEditableTextCopyText): Ditto.
2830         (webkitAccessibleEditableTextCutText): Ditto.
2831         (webkitAccessibleEditableTextDeleteText): Ditto.
2832         (webkitAccessibleEditableTextPasteText): Ditto.
2833         (webkitAccessibleEditableTextInterfaceInit): Moved to the bottom.
2834         * accessibility/gtk/WebKitAccessibleInterfaceEditableText.h: Removed all
2835         functions but the one for initializing the interface from here.
2836
2837         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.cpp:
2838         (webkitAccessibleHyperlinkImplGetHyperlink): Made this function static.
2839         (webkitAccessibleHyperlinkImplInterfaceInit): Moved to the bottom.
2840         * accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.h: Removed all
2841         functions but the one for initializing the interface from here.
2842
2843         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.cpp:
2844         (webkitAccessibleHypertextGetLink): Made this function static.
2845         (webkitAccessibleHypertextGetNLinks): Ditto.
2846         (webkitAccessibleHypertextGetLinkIndex): Ditto.
2847         (webkitAccessibleHypertextInterfaceInit): Moved to the bottom.
2848         * accessibility/gtk/WebKitAccessibleInterfaceHypertext.h: Removed all
2849         functions but the one for initializing the interface from here.
2850
2851         * accessibility/gtk/WebKitAccessibleInterfaceImage.cpp:
2852         (webkitAccessibleImageGetImagePosition): Made this function static.
2853         (webkitAccessibleImageGetImageDescription): Ditto.
2854         (webkitAccessibleImageGetImageSize): Ditto.
2855         (webkitAccessibleImageInterfaceInit): Moved to the bottom.
2856         * accessibility/gtk/WebKitAccessibleInterfaceImage.h: Removed all
2857         functions but the one for initializing the interface from here.
2858
2859         * accessibility/gtk/WebKitAccessibleInterfaceSelection.cpp:
2860         (webkitAccessibleSelectionAddSelection): Made this function static.
2861         (webkitAccessibleSelectionClearSelection): Ditto.
2862         (webkitAccessibleSelectionRefSelection): Ditto.
2863         (webkitAccessibleSelectionGetSelectionCount): Ditto.
2864         (webkitAccessibleSelectionIsChildSelected): Ditto.
2865         (webkitAccessibleSelectionRemoveSelection): Ditto.
2866         (webkitAccessibleSelectionSelectAllSelection): Ditto.
2867         (webkitAccessibleSelectionInterfaceInit): Moved to the bottom.
2868         * accessibility/gtk/WebKitAccessibleInterfaceSelection.h: Removed all
2869         functions but the one for initializing the interface from here.
2870
2871         * accessibility/gtk/WebKitAccessibleInterfaceTable.cpp:
2872         (webkitAccessibleTableRefAt): Made this function static.
2873         (webkitAccessibleTableGetIndexAt): Ditto.
2874         (webkitAccessibleTableGetColumnAtIndex): Ditto.
2875         (webkitAccessibleTableGetRowAtIndex): Ditto.
2876         (webkitAccessibleTableGetNColumns): Ditto.
2877         (webkitAccessibleTableGetNRows): Ditto.
2878         (webkitAccessibleTableGetColumnExtentAt): Ditto.
2879         (webkitAccessibleTableGetRowExtentAt): Ditto.
2880         (webkitAccessibleTableGetColumnHeader): Ditto.
2881         (webkitAccessibleTableGetRowHeader): Ditto.
2882         (webkitAccessibleTableGetCaption): Ditto.
2883         (webkitAccessibleTableGetColumnDescription): Ditto.
2884         (webkitAccessibleTableGetRowDescription): Ditto.
2885         (webkitAccessibleTableInterfaceInit): Moved to the bottom.
2886         * accessibility/gtk/WebKitAccessibleInterfaceTable.h: Removed all
2887         functions but the one for initializing the interface from here.
2888
2889         * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
2890         (textForRenderer): Made this function static.
2891         (textForObject): Ditto.
2892         (webkitAccessibleTextGetText): Ditto.
2893         (webkitAccessibleTextGetTextAfterOffset): Ditto.
2894         (webkitAccessibleTextGetTextAtOffset): Ditto.
2895         (webkitAccessibleTextGetTextBeforeOffset): Ditto.
2896         (webkitAccessibleTextGetCharacterAtOffset): Ditto.
2897         (webkitAccessibleTextGetCaretOffset): Ditto.
2898         (webkitAccessibleTextGetRunAttributes): Ditto.
2899         (webkitAccessibleTextGetDefaultAttributes): Ditto.
2900         (webkitAccessibleTextGetCharacterExtents): Ditto.
2901         (webkitAccessibleTextGetRangeExtents): Ditto.
2902         (webkitAccessibleTextGetCharacterCount): Ditto.
2903         (webkitAccessibleTextGetOffsetAtPoint): Ditto.
2904         (webkitAccessibleTextGetNSelections): Ditto.
2905         (webkitAccessibleTextGetSelection): Ditto.
2906         (webkitAccessibleTextAddSelection): Ditto.
2907         (webkitAccessibleTextSetSelection): Ditto.
2908         (webkitAccessibleTextRemoveSelection): Ditto.
2909         (webkitAccessibleTextSetCaretOffset): Ditto.
2910         (webkitAccessibleTextInterfaceInit): Moved to the bottom.
2911         * accessibility/gtk/WebKitAccessibleInterfaceText.h: Removed all
2912         functions but the one for initializing the interface from here.
2913
2914         * accessibility/gtk/WebKitAccessibleInterfaceValue.cpp:
2915         (webkitAccessibleValueGetCurrentValue): Made this function static.
2916         (webkitAccessibleValueGetMaximumValue): Ditto.
2917         (webkitAccessibleValueGetMinimumValue): Ditto.
2918         (webkitAccessibleValueSetCurrentValue): Ditto.
2919         (webkitAccessibleValueGetMinimumIncrement): Ditto.
2920         (webkitAccessibleValueInterfaceInit): Moved to the bottom.
2921         * accessibility/gtk/WebKitAccessibleInterfaceValue.h: Removed all
2922         functions but the one for initializing the interface from here.
2923
2924         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
2925         (webkitAccessibleGetName): Replace call to
2926         webkitAccessibleTextGetText with atk_text_get_text.
2927
2928 2012-01-24  James Robinson  <jamesr@chromium.org>
2929
2930         [chromium] Add null check for ContentLayerChromium::m_delegate back to ContentLayerChromium::drawsContent()
2931         https://bugs.webkit.org/show_bug.cgi?id=76887
2932
2933         Reviewed by Dimitri Glazkov.
2934
2935         A ContentLayerChromium's m_delegate pointer is nulled out when its owning GraphicsLayerChromium is destroyed.
2936         It's possible in some circumstances for this to happen during painting. The null check for this pointer was
2937         erroneously removed from the base class TiledLayerChromium in r105460.
2938
2939         No new tests since we don't know how to reproduce this sort of layer mutation during paint (not for lack of
2940         trying!). Fix based on crash reports from the field.
2941
2942         * platform/graphics/chromium/ContentLayerChromium.cpp:
2943         (WebCore::ContentLayerChromium::drawsContent):
2944         * platform/graphics/chromium/ContentLayerChromium.h:
2945
2946 2012-01-16  Robert Hogan  <robert@webkit.org>
2947
2948         REGRESSION (r102040): Wrong column widths when row has colspan and unwrappable text
2949         https://bugs.webkit.org/show_bug.cgi?id=74874
2950
2951         Reviewed by Julien Chaffraix.
2952
2953         Tests: fast/css/min-width-with-spanned-cell-fixed.html
2954                fast/css/min-width-with-spanned-cell.html
2955
2956         A cell with unwrappable text must be as wide as the text is long. If it is a colspan in a table whose
2957         columns are all percent and the width of the span cell is wider than the cells it spans in any other 
2958         row then it will squeeze those cells beyond the width required to display their contents.
2959
2960         To fix this ensure that the squeezing of cells within a span respects the minimum width determined by
2961         their contents. The squeezing remains for fixed layout tables as per FF and Opera.
2962
2963         * rendering/AutoTableLayout.cpp:
2964         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
2965
2966 2012-01-24  Tommy Widenflycht  <tommyw@google.com>
2967
2968         MediaStream API: Split the MediaStream track list into audio/video specific ones.
2969         https://bugs.webkit.org/show_bug.cgi?id=76614
2970
2971         The latest draft of the WebRTC standard have split the MediaStream combined track list
2972         into audio/video specific ones.
2973
2974         Reviewed by Darin Fisher.
2975
2976         Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.
2977
2978         * mediastream/LocalMediaStream.cpp:
2979         (WebCore::LocalMediaStream::create):
2980         (WebCore::LocalMediaStream::LocalMediaStream):
2981         * mediastream/LocalMediaStream.h:
2982         * mediastream/MediaStream.cpp:
2983         (WebCore::processTrackList):
2984         (WebCore::MediaStream::create):
2985         (WebCore::MediaStream::MediaStream):
2986         * mediastream/MediaStream.h:
2987         (WebCore::MediaStream::audioTracks):
2988         (WebCore::MediaStream::videoTracks):
2989         * mediastream/MediaStream.idl:
2990         * mediastream/MediaStreamTrack.cpp:
2991         (WebCore::MediaStreamTrack::create):
2992         (WebCore::MediaStreamTrack::MediaStreamTrack):
2993         (WebCore::MediaStreamTrack::kind):
2994         (WebCore::MediaStreamTrack::label):
2995         (WebCore::MediaStreamTrack::enabled):
2996         (WebCore::MediaStreamTrack::setEnabled):
2997         (WebCore::MediaStreamTrack::component):
2998         * mediastream/MediaStreamTrack.h:
2999         * mediastream/UserMediaClient.h:
3000         * mediastream/UserMediaRequest.cpp:
3001         (WebCore::UserMediaRequest::mediaStreamSourcesQueryCompleted):
3002         (WebCore::UserMediaRequest::succeed):
3003         * mediastream/UserMediaRequest.h:
3004         * platform/mediastream/MediaStreamCenter.cpp:
3005         (WebCore::MediaStreamCenter::queryMediaStreamSources):
3006         (WebCore::MediaStreamCenter::didSetMediaStreamTrackEnabled):
3007         * platform/mediastream/MediaStreamCenter.h:
3008         * platform/mediastream/MediaStreamDescriptor.h:
3009         (WebCore::MediaStreamDescriptor::create):
3010         (WebCore::MediaStreamDescriptor::numberOfAudioComponents):
3011         (WebCore::MediaStreamDescriptor::audioComponent):
3012         (WebCore::MediaStreamDescriptor::numberOfVideoComponents):
3013         (WebCore::MediaStreamDescriptor::videoComponent):
3014         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
3015
3016 2012-01-24  Sheriff Bot  <webkit.review.bot@gmail.com>
3017
3018         Unreviewed, rolling out r105738.
3019         http://trac.webkit.org/changeset/105738
3020         https://bugs.webkit.org/show_bug.cgi?id=76930
3021
3022         caused fast/css/getComputedStyle/computed-style-border-
3023         image.html to crash (Requested by kling on #webkit).
3024
3025         * dom/NamedNodeMap.cpp:
3026         * dom/NamedNodeMap.h:
3027         * dom/StyledElement.cpp:
3028         (WebCore::StyledElement::updateStyleAttribute):
3029         (WebCore::StyledElement::createInlineStyleDecl):
3030         (WebCore::StyledElement::destroyInlineStyleDecl):
3031         (WebCore::StyledElement::ensureInlineStyleDecl):
3032         (WebCore::StyledElement::style):
3033         (WebCore::StyledElement::addSubresourceAttributeURLs):
3034         * dom/StyledElement.h:
3035         (WebCore::StyledElement::inlineStyleDecl):
3036
3037 2012-01-24  Parag Radke  <nrqv63@motorola.com>
3038
3039         REGRESSION (r73385): Marquee with behavior="alternate" is not working
3040         https://bugs.webkit.org/show_bug.cgi?id=64230
3041
3042         Reviewed by Simon Fraser.
3043
3044         This patch gives correct content width for marquee, which computes
3045         correct start position to scroll marquee.
3046
3047         Test: fast/html/marquee-alternate.html
3048
3049         * rendering/RenderBlock.cpp:
3050         (WebCore::RenderBlock::computePreferredLogicalWidths):
3051         We need(style()->marqueeBehavior() != MALTERNATE) check as we always need the marquee's 
3052         actual content width to compute the initial/end position in case of 'MALTERNATE'.
3053         So we need to calculate the logical width in Alternate case even if fixed width is specified
3054         as content has to animate between renderBox().right().x() - contentWidth() and 
3055         renderBox().left().x() + contentWidth().
3056         
3057         * rendering/RenderMarquee.cpp:
3058         (WebCore::RenderMarquee::computePosition):
3059         Using PreferredLogicalWidth in place of LayoutOverflow for calculating correct content width.
3060
3061 2012-01-24  Andreas Kling  <awesomekling@apple.com>
3062
3063         RenderInline: Skip caching the computed line height.
3064         <http://webkit.org/b/76929>
3065
3066         Reviewed by David Hyatt.
3067
3068         Stop caching the computed line height on RenderInline and make retrieving it from
3069         RenderStyle slightly cheaper, freeing up 4 bytes per RenderInline instance.
3070         This appears to be mostly performance neutral, I don't get more than the occasional
3071         sample hit when instrumenting heavier web pages.
3072
3073         This reduces memory consumption by 228 kB (both 32/64-bit) when viewing the full
3074         HTML5 spec at <http://whatwg.org/c>.
3075
3076         * rendering/RenderInline.cpp:
3077         (WebCore::RenderInline::RenderInline):
3078         (WebCore::RenderInline::styleDidChange):
3079         (WebCore::RenderInline::lineHeight):
3080         * rendering/RenderInline.h:
3081         * rendering/style/RenderStyle.h:
3082         (WebCore::RenderStyle::computedLineHeight):
3083
3084             Optimize computedLineHeight() to mitigate some of the damage of calling
3085             it more often.
3086
3087 2012-01-24  Abhishek Arya  <inferno@chromium.org>
3088
3089         Crash when rendering -webkit-column-span.
3090         https://bugs.webkit.org/show_bug.cgi?id=73265
3091
3092         Reviewed by David Hyatt.
3093
3094         This patch addresses 2 problems causing crashes in multi-column layout
3095         1. Trying to render -webkit-column-span for :before, :after caused
3096            re-entrancy in updateBeforeAfterContent while working on splitFlow.
3097         2. Cloning a block which has its :before, :after content not added yet,
3098            caused issues because cloneBlock will definitely have its :before,
3099            :after content created when setStyle() is called. So, we would
3100            overwrite cloneBlock with a wrong childrenInline value.
3101
3102         Tests: fast/multicol/clone-block-children-inline-mismatch-crash.html
3103                fast/multicol/span/generated-child-split-flow-crash.html
3104
3105         * rendering/RenderBlock.cpp:
3106         (WebCore::RenderBlock::clone):
3107         (WebCore::RenderBlock::columnsBlockForSpanningElement):
3108
3109 2012-01-22  Robert Hogan  <robert@webkit.org>
3110
3111         Incorrect positioning of floating pseudo-elements in table captions
3112         https://bugs.webkit.org/show_bug.cgi?id=76664
3113
3114         Reviewed by Julien Chaffraix.
3115
3116         Tests: fast/table/caption-encloses-overhanging-float-expected.html
3117                fast/table/caption-encloses-overhanging-float.html
3118
3119         Allow table captions to expand and enclose overhanging floats. When performing
3120         layout on a caption ensure that its logical top is set so that it does not mistakenly
3121         conclude that floats in a previous sibling are intruding into it when they're not.
3122
3123         Mostly diagnosed by Abhishek Arya.
3124
3125         * rendering/RenderBlock.cpp:
3126         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): add table captions to the list
3127          that can enclosed overhanging floats.
3128         * rendering/RenderTable.cpp:
3129         (WebCore::RenderTable::layoutCaption): use the best available approximation of the caption's logical
3130          top offset before laying it out.
3131         (WebCore::RenderTable::layout):
3132         * rendering/RenderTable.h:
3133
3134 2012-01-24  Kentaro Hara  <haraken@chromium.org>
3135
3136         In CodeGeneratorV8.pm, overwrite the output .h/.cpp
3137         only if the bytes differ
3138         https://bugs.webkit.org/show_bug.cgi?id=76920
3139
3140         Reviewed by Darin Adler.
3141
3142         This is one of steps to stop rebuilding .h/.cpp files
3143         generated by unchanged IDLs (bug 76836).
3144         This patch makes a change on CodeGeneratorV8.pm so that
3145         it overwrites the output .h/.cpp only if the bytes differ.
3146
3147         No tests. No change in behavior.
3148         I manually confirmed that when I add a new attribute to Element.idl,
3149         the time-stamps of unrelated V8*.h and V8*.cpp do not change.
3150
3151         * bindings/scripts/CodeGeneratorV8.pm:
3152         (WriteData): Used UpdateFileIfChanged().
3153
3154 2012-01-24  Kentaro Hara  <haraken@chromium.org>
3155
3156         [Refactoring] Remove finish() from all CodeGenerator*.pm
3157         https://bugs.webkit.org/show_bug.cgi?id=76918
3158
3159         Reviewed by Darin Adler.
3160
3161         Now finish() is empty in all CodeGenerator*.pm. This patch removes them.
3162
3163         No tests. No change in behavior.
3164
3165         * bindings/scripts/CodeGenerator.pm:
3166         (ProcessDocument):
3167         * bindings/scripts/CodeGeneratorCPP.pm:
3168         * bindings/scripts/CodeGeneratorGObject.pm:
3169         * bindings/scripts/CodeGeneratorJS.pm:
3170         * bindings/scripts/CodeGeneratorObjC.pm:
3171         * bindings/scripts/CodeGeneratorV8.pm:
3172
3173 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
3174
3175         Web Inspector: incorrect highlight position when searching in console
3176         https://bugs.webkit.org/show_bug.cgi?id=76837
3177
3178         Reviewed by Yury Semikhatsky.
3179
3180         * inspector/front-end/ConsoleMessage.js:
3181         (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
3182         (WebInspector.ConsoleMessageImpl.prototype.clearHighlight):
3183         (WebInspector.ConsoleMessageImpl.prototype.highlightSearchResults):
3184         (WebInspector.ConsoleMessageImpl.prototype._highlightSearchResultsInElement):
3185         (WebInspector.ConsoleMessageImpl.prototype.matchesRegex):
3186
3187 2012-01-23  Simon Fraser  <simon.fraser@apple.com>
3188
3189         Show layer borders for scrollbar layers
3190         https://bugs.webkit.org/show_bug.cgi?id=76888
3191
3192         Reviewed by Beth Dakin.
3193         
3194         When compositing layer borders are showing, show the borders
3195         for scrollbars layers. This reduces confusion about whether scrollbars
3196         are rendering into their own layers.
3197         
3198         Requires a new parameter to two GraphicsLayerClient methods.
3199
3200         * platform/graphics/GraphicsLayer.h:
3201         (WebCore::GraphicsLayer::showDebugBorders):
3202         (WebCore::GraphicsLayer::showRepaintCounter):
3203         * platform/graphics/GraphicsLayerClient.h:
3204         * rendering/RenderLayerBacking.cpp:
3205         (WebCore::RenderLayerBacking::showDebugBorders):
3206         (WebCore::RenderLayerBacking::showRepaintCounter):
3207         * rendering/RenderLayerBacking.h:
3208         * rendering/RenderLayerCompositor.cpp:
3209         (WebCore::RenderLayerCompositor::showDebugBorders):
3210         (WebCore::RenderLayerCompositor::showRepaintCounter):
3211         * rendering/RenderLayerCompositor.h:
3212
3213 2012-01-24  David Levin  <levin@chromium.org>
3214
3215         [windows] Convert usage of GetDC to HWndDC Part 3.
3216         https://bugs.webkit.org/show_bug.cgi?id=76889
3217
3218         Reviewed by Adam Roben.
3219
3220         No new functionality so no new tests.
3221
3222         * platform/graphics/win/UniscribeController.cpp:
3223         (WebCore::UniscribeController::shapeAndPlaceItem): Simple replacement.
3224         (WebCore::UniscribeController::shape): Use the delayed allocation.
3225         * platform/win/PopupMenuWin.cpp:
3226         (WebCore::PopupMenuWin::paint): Fix a dc leak and use the dellayed allocation.
3227
3228 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
3229
3230         [GTK] Refactor GTK's accessibilitity code to be more modular
3231         https://bugs.webkit.org/show_bug.cgi?id=76783
3232
3233         Reviewed by Martin Robinson.
3234
3235         Fix coding style in the ATK AccessibilityObject wrapper.
3236
3237         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
3238         (webkitAccessibleGetName):
3239         (webkitAccessibleGetDescription):
3240         (webkitAccessibleGetParent):
3241         (webkitAccessibleGetNChildren):
3242         (webkitAccessibleRefChild):
3243         (webkitAccessibleGetIndexInParent):
3244         (webkitAccessibleGetAttributes):
3245         (atkRole):
3246         (webkitAccessibleGetRole):
3247         (setAtkStateSetFromCoreObject):
3248         (webkitAccessibleRefStateSet):
3249         (webkitAccessibleRefRelationSet):
3250         (webkitAccessibleInit):
3251         (webkitAccessibleFinalize):
3252         (webkit_accessible_class_init):
3253
3254 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
3255
3256         [GTK] Refactor GTK's accessibilitity code to be more modular
3257         https://bugs.webkit.org/show_bug.cgi?id=76783
3258
3259         Reviewed by Martin Robinson.
3260
3261         Cleanup the list of includes in WebKitAccessibleWrapperAtk.cpp.
3262
3263         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Removes
3264         'include' lines that are no longer needed after the refactor.
3265
3266 2012-01-24  Raphael Kubo da Costa  <kubo@profusion.mobi>
3267
3268         [EFL] Remove CookieJarEfl.cpp
3269         https://bugs.webkit.org/show_bug.cgi?id=76916
3270
3271         Reviewed by Gustavo Noronha Silva.
3272
3273         CookieJarEfl.cpp has not been used for years -- we either need
3274         CookieJarCurl or CookieJarSoup depending on the chosen network
3275         backend.
3276
3277         No new tests, just an unused file being removed.
3278
3279         * WebCore.gypi: Remove reference to CookieJarEfl.cpp.
3280         * platform/efl/CookieJarEfl.cpp: Removed.
3281
3282 2012-01-24  Abhishek Arya  <inferno@chromium.org>
3283
3284         Crash when accessing removed parent in InlineTextBox.
3285         https://bugs.webkit.org/show_bug.cgi?id=72982
3286
3287         Reviewed by James Robinson.
3288
3289         The crash happens because:
3290         1. We add heading element(h1) before the span element(span1),
3291            causing splitflow on the anonymous block containing BeforeText,
3292            span1(and SpanText) and AfterText.
3293         2. span1 moves to the cloneBlock (continuation).
3294         3. Our anonymous block and cloneBlock are both marked for layout,
3295            however we still have a copy of our lineboxes with its childs
3296            as the textboxes belonging to SpanText.
3297         4. Our anonymous block only child BeforeText is getting removed,
3298            so we dont have any children anymore and we delete our lineboxes,
3299            leaving behind the children textboxes belonging to SpanText.
3300         5. SpanText is getting destroyed, so it tries to inform removed
3301            parent lineboxes causing the crash.
3302
3303         Test: fast/block/block-remove-child-delete-line-box-crash.html
3304
3305         * rendering/RenderBlock.cpp:
3306         (WebCore::RenderBlock::removeChild):
3307
3308 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
3309
3310         [GTK] Refactor GTK's accessibilitity code to be more modular
3311         https://bugs.webkit.org/show_bug.cgi?id=76783
3312
3313         Reviewed by Martin Robinson.
3314
3315         New files for the implementation of the AtkTable interface,
3316         containing the related code from WebKitAccessibleWrapperAtk.cpp.
3317
3318         * accessibility/gtk/WebKitAccessibleInterfaceTable.cpp: Added.
3319         (core):
3320         (cell):
3321         (cellIndex):
3322         (cellAtIndex):
3323         (webkitAccessibleTableInterfaceInit):
3324         (webkitAccessibleTableRefAt):
3325         (webkitAccessibleTableGetIndexAt):
3326         (webkitAccessibleTableGetColumnAtIndex):
3327         (webkitAccessibleTableGetRowAtIndex):
3328         (webkitAccessibleTableGetNColumns):
3329         (webkitAccessibleTableGetNRows):
3330         (webkitAccessibleTableGetColumnExtentAt):
3331         (webkitAccessibleTableGetRowExtentAt):
3332         (webkitAccessibleTableGetColumnHeader):
3333         (webkitAccessibleTableGetRowHeader):
3334         (webkitAccessibleTableGetCaption):
3335         (webkitAccessibleTableGetColumnDescription):
3336         (webkitAccessibleTableGetRowDescription):
3337         * accessibility/gtk/WebKitAccessibleInterfaceTable.h: Added.
3338         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code
3339         related to the implementation of the AtkTable interface.
3340
3341         Add new files to build files.
3342
3343         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceTable.[h|cpp].
3344         * WebCore.gypi: Ditto.
3345
3346 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
3347
3348         Web Inspector: Scripts panel tabbed editor container should have gray background when there are no open tabs.
3349         https://bugs.webkit.org/show_bug.cgi?id=76903
3350
3351         Reviewed by Yury Semikhatsky.
3352
3353         * inspector/front-end/TabbedPane.js:
3354         (WebInspector.TabbedPane.prototype._updateTabElements):
3355         * inspector/front-end/tabbedPane.css:
3356         (.tabbed-pane-content.has-no-tabs):
3357
3358 2012-01-24  Vsevolod Vlasov  <vsevik@chromium.org>
3359
3360         Web Inspector: OpenResourceDialog should work when there are no open tabs in scripts panel.
3361         https://bugs.webkit.org/show_bug.cgi?id=76907
3362
3363         Reviewed by Yury Semikhatsky.
3364
3365         * inspector/front-end/FilteredItemSelectionDialog.js:
3366         (WebInspector.OpenResourceDialog.install):
3367         * inspector/front-end/ScriptsPanel.js:
3368
3369 2012-01-24  Peter Rybin  <peter.rybin@gmail.com>
3370
3371         Web Inspector: CodeGeneratorInspector.py: put TypeBuilder namespace in a separate sources
3372         https://bugs.webkit.org/show_bug.cgi?id=76868
3373
3374         Reviewed by Yury Semikhatsky.
3375
3376         Configurations of (hopefully) all build systems are fixed.
3377
3378         * CMakeLists.txt:
3379         * DerivedSources.make:
3380         * DerivedSources.pri:
3381         * GNUmakefile.am:
3382         * GNUmakefile.list.am:
3383         * WebCore.gyp/WebCore.gyp:
3384         * WebCore.gypi:
3385         * WebCore.vcproj/WebCore.vcproj:
3386         * WebCore.xcodeproj/project.pbxproj:
3387         * inspector/CodeGeneratorInspector.py:
3388         (dash_to_camelcase):
3389         (InspectorFrontend_h):
3390         (InspectorBackendDispatcher_h):
3391
3392 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
3393
3394         [GTK] Refactor GTK's accessibilitity code to be more modular
3395         https://bugs.webkit.org/show_bug.cgi?id=76783
3396
3397         Reviewed by Martin Robinson.
3398
3399         New files for the implementation of the AtkText interface,
3400         containing the related code from WebKitAccessibleWrapperAtk.cpp.
3401
3402         * accessibility/gtk/WebKitAccessibleInterfaceText.cpp: Added.
3403         (core):
3404         (textForRenderer):
3405         (textForObject):
3406         (getGailTextUtilForAtk):
3407         (getPangoLayoutForAtk):
3408         (baselinePositionForRenderObject):
3409         (getAttributeSetForAccessibilityObject):
3410         (compareAttribute):
3411         (attributeSetDifference):
3412         (accessibilityObjectLength):
3413         (getAccessibilityObjectForOffset):
3414         (getRunAttributesFromAccesibilityObject):
3415         (textExtents):
3416         (getSelectionOffsetsForObject):
3417         (webkitAccessibleTextInterfaceInit):
3418         (webkitAccessibleTextGetText):
3419         (webkitAccessibleTextGetTextAfterOffset):
3420         (webkitAccessibleTextGetTextAtOffset):
3421         (webkitAccessibleTextGetTextBeforeOffset):
3422         (webkitAccessibleTextGetCharacterAtOffset):
3423         (webkitAccessibleTextGetCaretOffset):
3424         (webkitAccessibleTextGetRunAttributes):
3425         (webkitAccessibleTextGetDefaultAttributes):
3426         (webkitAccessibleTextGetCharacterExtents):
3427         (webkitAccessibleTextGetRangeExtents):
3428         (webkitAccessibleTextGetCharacterCount):
3429         (webkitAccessibleTextGetOffsetAtPoint):
3430         (webkitAccessibleTextGetNSelections):
3431         (webkitAccessibleTextGetSelection):
3432         (webkitAccessibleTextAddSelection):
3433         (webkitAccessibleTextRemoveSelection):
3434         (webkitAccessibleTextSetSelection):
3435         (webkitAccessibleTextSetCaretOffset):
3436         * accessibility/gtk/WebKitAccessibleInterfaceText.h: Added.
3437
3438         Move common function selectionBelongsToObject out from the wrapper
3439         to the utility file, used from WebKitAccessibleInterfaceText.cpp.
3440
3441         * accessibility/gtk/WebKitAccessibleUtil.cpp:
3442         (selectionBelongsToObject): Taken from WebKitAccessibleWrapperAtk.cpp.
3443         * accessibility/gtk/WebKitAccessibleUtil.h:
3444         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove local
3445         implementation of selectionBelongsToObject, and the code related
3446         to the implementation of the AtkText interface.
3447         (webkit_accessible_get_name): Update call to the former function
3448         webkit_accessible_text_get_text and use the new function name.
3449         (webkit_accessible_table_get_column_description): Ditto.
3450         (webkit_accessible_table_get_row_description): Ditto.
3451
3452         Add new files to build files.
3453
3454         * GNUmakefile.list.am: Add WebKitAccessibleInterfaceText.[h|cpp].
3455         * WebCore.gypi: Ditto.
3456
3457 2012-01-24  Mario Sanchez Prada  <msanchez@igalia.com>
3458
3459         [GTK] Refactor GTK's accessibilitity code to be more modular
3460         https://bugs.webkit.org/show_bug.cgi?id=76783
3461
3462         Reviewed by Martin Robinson.
3463
3464         New files for the implementation of the AtkValue interface,
3465 &n