Fix assert when foster parenting self-closing elements
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-01-03  Adam Barth  <abarth@webkit.org>
2
3         Fix assert when foster parenting self-closing elements
4         https://bugs.webkit.org/show_bug.cgi?id=75527
5
6         Unreviewed.
7
8         * html/parser/HTMLConstructionSite.cpp:
9         (WebCore::HTMLConstructionSite::fosterParent):
10             - We can't execute this task immediately because the code for
11               self-closing elements wants to set the self-closing flag.
12               Instead, we queue the task.
13
14 2012-01-03  Charles Wei  <charles.wei@torchmobile.com.cn>
15
16         [BlackBerry] Need to support credentials in the URL
17         https://bugs.webkit.org/show_bug.cgi?id=75341
18
19         Reviewed by George Staikos.
20
21         No new tests required.
22
23         * platform/network/blackberry/NetworkJob.cpp:
24         (WebCore::NetworkJob::sendRequestWithCredentials):
25
26 2012-01-03  Noel Gordon  <noel.gordon@gmail.com>
27
28         [chromium] Use data decoding swizzle for turbo JPEG grayscale images
29         https://bugs.webkit.org/show_bug.cgi?id=75189
30
31         Reviewed by Adam Barth.
32
33         No new tests.  Covered by exiting tests, in particular for grayscale
34         images that were corrupted by earlier versions on libjpeg-turbo:
35
36         tables/mozilla/bugs/bug29314.html
37         tables/mozilla/bugs/bug13169.html
38         tables/mozilla/bugs/bug10565.html
39         tables/mozilla/bugs/bug11026.html
40         fast/repaint/backgroundSizeRepaint.html
41         fast/repaint/block-layout-inline-children-replaced.html
42         fast/repaint/clipped-relative.html
43         fast/repaint/selected-replaced.html
44         tables/mozilla/bugs/bug12908-1.html
45
46         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
47         (WebCore::JPEGImageReader::decode):  Use a data decoding swizzle for
48         JCS_GRAYSCALE images.
49
50 2012-01-03  Adam Barth  <abarth@webkit.org>
51
52         Minor speed improvement in HTML parser
53         https://bugs.webkit.org/show_bug.cgi?id=75517
54
55         Reviewed by Eric Seidel.
56
57         This improves the html-parser.html benchmark by 0.3%.  I don't think
58         that's actually anything to write home about, but this patch makes me
59         feel better about my life.
60
61         * html/parser/HTMLFormattingElementList.cpp:
62         (WebCore::HTMLFormattingElementList::tryToEnsureNoahsArkConditionQuickly):
63
64 2012-01-03  Kentaro Hara  <haraken@chromium.org>
65
66         Remove temporary code that we've inserted to implement the [Supplemental] IDL incrementally
67         https://bugs.webkit.org/show_bug.cgi?id=75510
68
69         Reviewed by Adam Barth.
70
71         Now all build systems support the [Supplemental] IDL. This patch removes all
72         temporary code that we've inserted to implement the [Supplemental] IDL.
73
74         No tests. No change in behavior. Confirm that all builds pass.
75
76         * bindings/js/JSDOMWindowCustom.cpp:
77         * bindings/scripts/CodeGeneratorJS.pm:
78         (GenerateHeader):
79         * bindings/scripts/generate-bindings.pl:
80         * page/DOMWindow.idl: Removed all attributes with a temporal [Supplemented] IDL.
81
82 2012-01-03  Karl Koscher  <supersat@chromium.org>
83
84         Give embedders a chance to handle postMessage calls
85         https://bugs.webkit.org/show_bug.cgi?id=73883
86
87         To support cross-process postMessage calls in Chromium (bug 73337), we need to intercept 
88         postMessage calls to proxy windows. Originally we were just going to add a native event
89         listener on the Chromium side, but that required more changes to WebKit and was a bit of
90         a hack. See bug 73359 for a discuss about moving to this approach.
91
92         Reviewed by Adam Barth.
93
94         Test: platform/chromium/fast/events/intercept-postmessage.html
95
96         * loader/FrameLoaderClient.h:
97         (WebCore::FrameLoaderClient::willCheckAndDispatchPostMessage): new method to allow the
98             embedder to intercept postMessage calls
99         * page/DOMWindow.cpp:
100         (WebCore::DOMWindow::postMessageTimerFired): add a call to
101             FrameLoaderClient::willCheckAndDispatchPostMessage
102
103 2012-01-03  Eric Penner  <epenner@google.com>
104
105         [chromium] Prevent crashing due to NULL texture updater.
106         https://bugs.webkit.org/show_bug.cgi?id=75288
107
108         Reviewed by James Robinson.
109
110         * platform/graphics/chromium/ContentLayerChromium.cpp:
111         * platform/graphics/chromium/ContentLayerChromium.h:
112         * platform/graphics/chromium/ImageLayerChromium.cpp:
113         * platform/graphics/chromium/ImageLayerChromium.h:
114
115 2012-01-03  Shawn Singh  <shawnsingh@chromium.org>
116
117         [chromium] CCLayerSorter accidentally reverses order of some layers.
118         https://bugs.webkit.org/show_bug.cgi?id=75046
119
120         Reviewed by James Robinson.
121
122         Unit test added to CCLayerSorterTest.cpp
123
124         Fixes two related bugs that were causing z-ordering problems in
125         layers when preserves3D triggers the need for layer sorting.
126
127         The first problem was that CCLayerSorter accidentally reversed the
128         order of layers when there was no sorting dependency between them.
129
130         The second problem was that zDiff had numerical precision problems
131         that forced sorting dependencies that were sometimes incorrect,
132         when the dependencies should not have existed.
133
134         * platform/graphics/chromium/cc/CCLayerSorter.cpp:
135         (WebCore::CCLayerSorter::checkOverlap):
136         (WebCore::CCLayerSorter::sort):
137
138 2012-01-03  Leo Yang  <leo.yang@torchmobile.com.cn>
139
140         [BlackBerry] Add support of blob form data to the BlackBerry port
141         https://bugs.webkit.org/show_bug.cgi?id=75218
142
143         Pass FormDataElement::encodedBlob type of form data to the BlackBerry
144         platform request to support blob data and blob file range.
145
146         Reviewed by George Staikos.
147
148         The port can't be built now, no new tests so far.
149
150         * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
151         (WebCore::ResourceRequest::initializePlatformRequest):
152
153 2012-01-03  Adam Barth  <abarth@webkit.org>
154
155         Two null crashes in Treebuilder
156         https://bugs.webkit.org/show_bug.cgi?id=66101
157
158         Reviewed by Eric Seidel.
159
160         The underly issue with causing the crash is that we're re-entering the
161         tree builder.  We've done a bunch of point fixes around tree builder
162         re-entrancy, but neither the implementation nor the specification are
163         really designed to handle re-entrancy.
164
165         Firefox avoids this problem by putting the parser on its own thread.  I
166         don't think we're quite ready to do that yet (although we will
167         eventually, presumably, as computers become ever more parallel).  The
168         approach in this patch is to queue up the DOM mutations and actually
169         perform them on a shallower stack.  That's essentially the approach
170         we've used for executing <scripts>.
171
172         This patch queues up DOM modifications and executes them from a clean
173         call stack, stopping us from re-entering the tree builder.  We might
174         need to experiment with exactly where to kick off the queue, but this
175         location seems reasonable and fixes the crash.
176
177         Test: fast/parser/re-enter-and-crash.html
178
179         * html/parser/HTMLConstructionSite.cpp:
180         (WebCore::executeTask):
181             - Add a helper function for actually executing a queue DOM
182               mutation.
183         (WebCore::HTMLConstructionSite::attach):
184             - Instead of actually attaching the element to the DOM, this
185               function now queues the element for attachment.  In a follow-up
186               patch, I plan to change this function to return void (and I'll
187               probably rename it to something that makes it clear that it only
188               queues the attachment).
189         (WebCore::HTMLConstructionSite::executeQueuedTasks):
190         (WebCore::HTMLConstructionSite::insertDoctype):
191             - Setting the compatmode from the Doctype requires the doctype to
192               actually be in the DOM, so we need to execute our queued tasks
193               synchronously.  We can likely improve this function by passing
194               the Doctype element explicitly in a follow-up patch.
195         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
196         (WebCore::HTMLConstructionSite::insertTextNode):
197         (WebCore::HTMLConstructionSite::findFosterSite):
198         (WebCore::HTMLConstructionSite::fosterParent):
199         * html/parser/HTMLConstructionSite.h:
200         (WebCore::HTMLConstructionSiteTask::HTMLConstructionSiteTask):
201             - Add a task object that holds on to the relevant elements.  We
202               define some vector traits for this object to match the traits on
203               RefPtr (which make Vector operations faster by explaining that
204               this type is moveable without having to churn reference counts).
205         * html/parser/HTMLElementStack.cpp:
206         (WebCore::HTMLElementStack::pushCommon):
207             - We delay the "begin parsing" call until we actually attach the
208               element to the DOM.  That splits the responsibility for calling
209               begin/finished, which is less than ideal, but I didn't see
210               another solution.
211         * html/parser/HTMLTreeBuilder.cpp:
212         (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken):
213             - Kick off the queued mutations.
214
215 2012-01-03  Adam Barth  <abarth@webkit.org>
216
217         view-source doesn't colorize </script> correctly
218         https://bugs.webkit.org/show_bug.cgi?id=62971
219
220         Reviewed by Eric Seidel.
221
222         The reason these tags weren't colorized correctly was because the
223         characters for the end tags where consumed by the tokenizer at the same
224         time as it consumed the text of the script tag.  These characters are
225         buffered internally by the tokenizer because the tokenizer is searching
226         for "an appropriate end tag", which is "</script>" in this case.
227
228         I tried a number of different approaches to fixing this bug.  The
229         approach in this patch adds an accessor to the tokenizer to read out
230         the buffered characters.  This approach makes it easier for the
231         HTMLSourceTracker to get exactly the right value for these buffered
232         characters without having to do a complicated simulation of the
233         buffering itself.
234
235         Tests: fast/frames/viewsource-plain-text-tags.html:
236
237         * html/parser/HTMLViewSourceParser.cpp:
238         (WebCore::HTMLViewSourceParser::pumpTokenizer):
239         * html/parser/HTMLDocumentParser.cpp:
240         (WebCore::HTMLDocumentParser::pumpTokenizer):
241           - Give the HTMLSourceTracker a pointer to the tokenizer so it can ask
242             for the buffered characters.
243         * html/parser/HTMLSourceTracker.cpp:
244         (WebCore::HTMLSourceTracker::start):
245           - The idea here is to treat characters buffered internally by the
246             tokenizer the same way we treat characters that were contained in a
247             previous segment of source.  We copy them into our accumulation
248             buffer and adjust the token base offset to account for the extra
249             characters.
250         (WebCore::HTMLSourceTracker::end):
251           - Don't consier the character buffered by the tokenizer to be part of
252             the token we've just finished.
253         (WebCore::HTMLSourceTracker::sourceForToken):
254           - Remove the assumption that all of the m_previousSource is contained
255             in the source for the current token.  Because we now understand
256             that the tokenizer can buffer some characters internally, we might
257             not exhaust the m_previousSource.
258         * html/parser/HTMLSourceTracker.h:
259           - Rename m_sourceFromPreviousSegments to m_previousSource and changed
260             to a SegementedString to avoid extra mallocs we keep appending tiny
261             segments.
262           - Rename m_source to m_currentSource to contrast nicely with
263             m_previousSource.
264         * html/parser/HTMLTokenizer.cpp:
265         (WebCore::HTMLTokenizer::flushBufferedEndTag):
266         (WebCore::HTMLTokenizer::nextToken):
267           - Previously, we cleared the temporary buffer lazily when we needed
268             to add new characters to it.  Now we clear it eagerly so that it's
269             length tells us whether we're currently using it to store
270             characters.
271           - Previously, we weren't storing the character that we used to
272             terminate the appropriate end tag (e.g., the > in </script>)
273             because we didn't need to "unbuffer" that character into the
274             HTMLToken::appendToCharacter.  Now, we do store that character in
275             the temporary buffer so that the HTMLSourceTracker can see that
276             character.
277         (WebCore::HTMLTokenizer::bufferedCharacters):
278         * html/parser/HTMLTokenizer.h:
279         (WebCore::HTMLTokenizer::numberOfBufferedCharacters):
280           - Add accessor methods to copy out the buffered characters.
281           - Also, unrelated to the rest of this patch, I made the constructor
282             for HTMLTokenizer explicit because it takes only a single
283             paramater, per the style guide.
284         * platform/text/SegmentedString.cpp:
285         (WebCore::SegmentedString::clear):
286           - SegmentedString::clear wasn't clearing all of its state.  I don't
287             think this issue was actually observable, but I noticed it when
288             working on this patch, so I fixed it.
289
290 2012-01-03  Benjamin Poulain  <bpoulain@apple.com>
291
292         Exclude Mac's PlatformEventFactory from iOS
293         https://bugs.webkit.org/show_bug.cgi?id=75493
294
295         Reviewed by Sam Weinig.
296
297         Move PlatformEventFactory.(h|cpp) to PlatformEventFactoryMac(h|cpp) and exclude the file
298         from iOS build.
299
300         * Configurations/WebCore.xcconfig: Also exclude EventHandlerMac for consistency.
301         * WebCore.xcodeproj/project.pbxproj:
302         * page/mac/EventHandlerMac.mm:
303         * platform/mac/PlatformEventFactoryMac.h: Renamed from Source/WebCore/platform/mac/PlatformEventFactory.h.
304         * platform/mac/PlatformEventFactoryMac.mm: Renamed from Source/WebCore/platform/mac/PlatformEventFactory.mm.
305         (WebCore::globalPoint):
306         (WebCore::globalPointForEvent):
307         (WebCore::pointForEvent):
308         (WebCore::mouseButtonForEvent):
309         (WebCore::mouseEventTypeForEvent):
310         (WebCore::clickCountForEvent):
311         (WebCore::momentumPhaseForEvent):
312         (WebCore::phaseForEvent):
313         (WebCore::gestureEventTypeForEvent):
314         (WebCore::textFromEvent):
315         (WebCore::unmodifiedTextFromEvent):
316         (WebCore::keyIdentifierForKeyEvent):
317         (WebCore::isKeypadEvent):
318         (WebCore::windowsKeyCodeForKeyEvent):
319         (WebCore::isKeyUpEvent):
320         (WebCore::modifiersForEvent):
321         (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
322         (WebCore::PlatformEventFactory::createPlatformMouseEvent):
323         (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
324         (WebCore::PlatformEventFactory::createPlatformWheelEvent):
325         (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
326         (WebCore::PlatformEventFactory::createPlatformKeyboardEvent):
327         (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
328         (WebCore::PlatformEventFactory::createPlatformGestureEvent):
329
330 2012-01-03  Wei James  <james.wei@intel.com>
331
332         Optimize AudioBufferSourceNode process by avoiding interpolation when pitchRate==1
333         https://bugs.webkit.org/show_bug.cgi?id=74592
334
335         Reviewed by Kenneth Russell.
336
337         Covered by existing webaudio layout tests, especially webaudio/audiobuffersource-playbackrate.html
338
339         * webaudio/AudioBufferSourceNode.cpp:
340         (WebCore::AudioBufferSourceNode::renderSilenceAndFinishIfNotLooping):
341         (WebCore::AudioBufferSourceNode::renderFromBuffer):
342         * webaudio/AudioBufferSourceNode.h:
343
344 2012-01-03  Joseph Pecoraro  <pecoraro@apple.com>
345
346         Web Inspector: Access to Node Highlighting info without drawing
347         https://bugs.webkit.org/show_bug.cgi?id=75504
348
349         Provide a "getHighlight" method alongside "drawHighlight" that
350         gets most of the important node highlighting information. This
351         can be used by a port to do its own node highlighting or provide
352         extra content without interfering with the highlight rects.
353
354         Reviewed by Timothy Hatcher.
355
356         * WebCore.xcodeproj/project.pbxproj:
357         Privately expose the Highlight struct in DOMNodeHighlighter.h.
358
359         * inspector/DOMNodeHighlighter.cpp:
360         (WebCore::DOMNodeHighlighter::drawHighlight):
361         (WebCore::DOMNodeHighlighter::getHighlight):
362         * inspector/DOMNodeHighlighter.h:
363         Reuse the existing draw code to instead populate
364         the Highlight struct with the information it is
365         about to draw, and only draw if there is a context.
366
367         * inspector/InspectorController.cpp:
368         (WebCore::InspectorController::getHighlight):
369         * inspector/InspectorController.h:
370         * inspector/InspectorDOMAgent.cpp:
371         (WebCore::InspectorDOMAgent::getHighlight):
372         * inspector/InspectorDOMAgent.h:
373         Get highlight information by going through getHighlight
374         in InspectorController. This is alongside drawHighlight.
375
376 2012-01-03  Shawn Singh  <shawnsingh@chromium.org>
377
378         [chromium] Push drawsContent and contentsVisible into accelerated compositor
379         https://bugs.webkit.org/show_bug.cgi?id=71209
380
381         Reviewed by James Robinson.
382
383         Tests: compositing/visibility/visibility-simple-canvas2d-layer.html
384                compositing/visibility/visibility-simple-video-layer.html
385                compositing/visibility/visibility-simple-webgl-layer.html
386
387         Rebaselined compositing/visibility/visibility-image-layers.html
388
389         The CSS visibility property was not being properly obeyed by many
390         specialized layer types in the accelerated compositor. The root of
391         the problem was that drawsContent and contentsVisible flags were
392         not properly propagated into the compositor. This patch removes
393         the drawsContent() callback, and instead makes sure that
394         drawsContent and contentsVisible are "pushed" through the
395         accelerated compositor.
396
397         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
398         (WebCore::Canvas2DLayerChromium::drawsContent):
399         * platform/graphics/chromium/ContentLayerChromium.cpp:
400         * platform/graphics/chromium/ContentLayerChromium.h:
401         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
402         (WebCore::GraphicsLayerChromium::setDrawsContent):
403         (WebCore::GraphicsLayerChromium::setContentsVisible):
404         (WebCore::GraphicsLayerChromium::setContentsToImage):
405         (WebCore::GraphicsLayerChromium::setContentsToCanvas):
406         (WebCore::GraphicsLayerChromium::setContentsToMedia):
407         (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
408         (WebCore::GraphicsLayerChromium::setupContentsLayer):
409         * platform/graphics/chromium/GraphicsLayerChromium.h:
410         * platform/graphics/chromium/LayerChromium.cpp:
411         (WebCore::LayerChromium::LayerChromium):
412         (WebCore::LayerChromium::setIsDrawable):
413         * platform/graphics/chromium/LayerChromium.h:
414         (WebCore::LayerChromium::drawsContent):
415         * platform/graphics/chromium/PluginLayerChromium.h:
416         * platform/graphics/chromium/TiledLayerChromium.cpp:
417         (WebCore::TiledLayerChromium::drawsContent):
418         * platform/graphics/chromium/VideoLayerChromium.h:
419         * platform/graphics/chromium/WebGLLayerChromium.cpp:
420         (WebCore::WebGLLayerChromium::drawsContent):
421         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
422         (WebCore::CCLayerImpl::dumpLayerProperties):
423
424 2012-01-03  Shawn Singh  <shawnsingh@chromium.org>
425
426         [chromium] Make sure root damage rect gets passed to renderer
427         https://bugs.webkit.org/show_bug.cgi?id=74893
428
429         Reviewed by James Robinson.
430
431         Unit test added to CCLayerTreeHostImplTest.cpp
432
433         * platform/graphics/chromium/LayerRendererChromium.cpp:
434         (WebCore::LayerRendererChromium::swapBuffers):
435         * platform/graphics/chromium/LayerRendererChromium.h:
436         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
437         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
438         (WebCore::CCLayerTreeHostImpl::swapBuffers):
439         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
440
441 2012-01-03  Yuzhu Shen  <yzshen@chromium.org>
442
443         v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
444         https://bugs.webkit.org/show_bug.cgi?id=74515
445
446         Reviewed by Nate Chapin.
447
448         Test: http/tests/plugins/create-v8-script-objects.html
449
450         * bindings/v8/NPV8Object.cpp:
451         (WebCore::freeV8NPObject):
452         (WebCore::npCreateV8ScriptObject):
453
454 2012-01-03  Jon Lee  <jonlee@apple.com>
455
456         Leak of WebNotificationClient when page is destroyed
457         https://bugs.webkit.org/show_bug.cgi?id=74980
458         <rdar://problem/10611231>
459
460         Reviewed by Mark Rowe.
461
462         * notifications/NotificationController.cpp:
463         (WebCore::NotificationController::~NotificationController): Notify the client
464         that the controller has been destroyed.
465         * notifications/NotificationPresenter.h: Add notificationControllerDestroyed()
466         callback to the client interface.
467
468 2012-01-03  Alexis Menard  <alexis.menard@openbossa.org>
469
470         getComputedStyle for list-style is not implemented.
471         https://bugs.webkit.org/show_bug.cgi?id=75443
472
473         Reviewed by Tony Chang.
474
475         Implement getComputedStyle for list-style.
476
477         Test: fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html
478
479         * css/CSSComputedStyleDeclaration.cpp:
480         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
481
482 2012-01-03  Adrienne Walker  <enne@google.com>
483
484         [chromium] Remove unneeded content vs. layer space distinction in tiled layers
485         https://bugs.webkit.org/show_bug.cgi?id=75498
486
487         Reviewed by James Robinson.
488
489         Long ago, before scrollbars became their own layers, tiled layers had
490         a distinction between content space (what's mostly called layer space
491         elsewhere) and layer space (the transformed content space). It seemed
492         like this transform could get reused for supporting RTL pages, but as
493         that's not the case, it should be eradicated.
494
495         Tiled layers now deal with everything in "layer space", which is a 2d
496         rectangle starting at (0, 0) in the top left of the layer and
497         extending to contentBounds() in the bottom right.
498
499         As no code actually set the tiler position, this change should be a
500         no-op.
501
502         Test: LayoutTests/compositing/
503
504         * platform/graphics/chromium/TiledLayerChromium.cpp:
505         (WebCore::UpdatableTile::isDirty):
506         (WebCore::UpdatableTile::clearDirty):
507         (WebCore::TiledLayerChromium::updateCompositorResources):
508         (WebCore::TiledLayerChromium::createTile):
509         (WebCore::TiledLayerChromium::invalidateRect):
510         (WebCore::TiledLayerChromium::protectTileTextures):
511         (WebCore::TiledLayerChromium::prepareToUpdateTiles):
512         (WebCore::TiledLayerChromium::prepareToUpdate):
513         (WebCore::TiledLayerChromium::prepareToUpdateIdle):
514         (WebCore::TiledLayerChromium::needsIdlePaint):
515         (WebCore::TiledLayerChromium::idlePaintRect):
516         * platform/graphics/chromium/TiledLayerChromium.h:
517         * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
518         (WebCore::CCLayerTilingData::operator=):
519         (WebCore::CCLayerTilingData::layerRectToTileIndices):
520         (WebCore::CCLayerTilingData::tileRect):
521         * platform/graphics/chromium/cc/CCLayerTilingData.h:
522         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
523         (WebCore::CCTiledLayerImpl::appendQuads):
524
525 2011-12-22  Joseph Pecoraro  <pecoraro@apple.com>
526
527         Implement Date and Time Input Value Sanitization
528         https://bugs.webkit.org/show_bug.cgi?id=59951
529
530         Sanitize non-parsable incoming strings to the empty string.
531
532         Reviewed by Kent Tamura.
533
534         Covered by existing tests.
535
536         * html/BaseDateAndTimeInputType.h:
537         * html/BaseDateAndTimeInputType.cpp:
538         (WebCore::BaseDateAndTimeInputType::sanitizeValue): check if the
539         incoming string is valid. If not just return the empty string.
540
541 2012-01-03  Julien Chaffraix  <jchaffraix@webkit.org>
542
543         RenderLayer::backgroundClipRect should not check parent()
544         https://bugs.webkit.org/show_bug.cgi?id=73731
545
546         Reviewed by Simon Fraser.
547
548         Clean-up only, no expected change in behavior.
549
550         * rendering/RenderLayer.cpp:
551         (WebCore::backgroundClipRectForPosition): Changed RenderObject::isPositioned() to
552         a check for AbsolutePosition for consistency but also as this is equivalent due to:
553         - the previous check for FixedPosition.
554         - RenderView, which is positioned, will never goes to this code as it has no parent().
555
556         (WebCore::RenderLayer::backgroundClipRect): Removed the parent() check. While at
557         it, also moved the inline initialization of |backgroundClipRect| to its own function
558         and removed a |view| check as the associated ASSERT seems to never have been reached.
559
560 2012-01-03  Alexey Proskuryakov  <ap@apple.com>
561
562         <rdar://problem/10637779> REGRESSION (r102247): Focus ring is not drawn around a button
563
564         Rubber-stamped by Dan Bernstein.
565
566         * platform/mac/ThemeMac.mm: (WebCore::updateStates): Flip an incorrect conditional, this code
567         should run on Snow Leopard and Lion.
568
569 2012-01-03  Alexis Menard  <alexis.menard@openbossa.org>
570
571         getComputedStyle should return shorthands property with the minimum number of sides possible.
572         https://bugs.webkit.org/show_bug.cgi?id=75434
573
574         Reviewed by Tony Chang.
575
576         As stated in http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSS2Properties we should
577         return shorthands properties with the minimum number of sides possible.
578
579         Existing tests have been updated accordingly.
580
581         * css/CSSComputedStyleDeclaration.cpp:
582         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
583         (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForSidesShorthand):
584         * css/CSSComputedStyleDeclaration.h:
585
586 2012-01-03  Martin Robinson  <mrobinson@igalia.com>
587
588         [GTK] GTK+ 3 theming code does not use the GtkOrientable style class
589         https://bugs.webkit.org/show_bug.cgi?id=72789
590
591         Reviewed by Philippe Normand.
592
593         No new tests. Testing GTK+ theming is quite difficult
594         because no two distributions have the same set of themes.
595         Current tests prevent regressions.
596
597         * platform/gtk/RenderThemeGtk3.cpp:
598         (WebCore::applySliderStyleContextClasses): Added this helper that
599         properly handles the orientable style class.
600         (WebCore::RenderThemeGtk::paintSliderTrack): Use the new helper.
601         (WebCore::RenderThemeGtk::paintSliderThumb): Ditto.
602         * platform/gtk/ScrollbarThemeGtk3.cpp:
603         (WebCore::applyScrollbarStyleContextClasses): Added this helper that
604         properly handles the orientable style class.
605         (WebCore::ScrollbarThemeGtk::paintTrackBackground): Use the new helper.
606         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
607         (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
608         (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
609
610 2012-01-03  Florin Malita  <fmalita@google.com>
611
612         NULL ptr in WebCore::SVGStyledTransformableElement::animatedLocalTransform
613         https://bugs.webkit.org/show_bug.cgi?id=75227
614
615         Reviewed by Dirk Schulze.
616
617         Test: svg/custom/webkit-transform-crash.html
618
619         * svg/SVGStyledTransformableElement.cpp:
620         (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
621         Add a null-renderer check.
622
623 2012-01-03  Alexis Menard  <alexis.menard@openbossa.org>
624
625         getComputedStyle for border is not implemented.
626         https://bugs.webkit.org/show_bug.cgi?id=75319
627
628         Reviewed by Tony Chang.
629
630         Implement getComputedStyle for border.
631
632         fast/css/getComputedStyle/getComputedStyle-border-shorthand.html was extented.
633
634         * css/CSSComputedStyleDeclaration.cpp:
635         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
636
637 2012-01-03  Alexis Menard  <alexis.menard@openbossa.org>
638
639         Sort the WebCore Xcode project file
640
641         Reviewed by Dimitri Glazkov.
642
643         * WebCore.xcodeproj/project.pbxproj:
644
645 2012-01-03  Adrienne Walker  <enne@google.com>
646
647         [chromium] Set tiler bounds explicitly rather than growing them
648         https://bugs.webkit.org/show_bug.cgi?id=75331
649
650         Reviewed by James Robinson.
651
652         Rather than only growing bounds, make the bounds on the tiler be set
653         explicitly by TiledLayerChromium. This patch now properly invalidates
654         regions when the bounds change.
655
656         * platform/graphics/chromium/TiledLayerChromium.cpp:
657         (WebCore::TiledLayerChromium::updateBounds):
658         (WebCore::TiledLayerChromium::prepareToUpdate):
659         (WebCore::TiledLayerChromium::prepareToUpdateIdle):
660         * platform/graphics/chromium/TiledLayerChromium.h:
661         * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
662         (WebCore::CCLayerTilingData::setBounds):
663         (WebCore::CCLayerTilingData::bounds):
664         * platform/graphics/chromium/cc/CCLayerTilingData.h:
665
666 2012-01-03  Martin Robinson  <mrobinson@igalia.com>
667
668         [GTK] Slider thumb is not centered on the track with the unico theme
669         https://bugs.webkit.org/show_bug.cgi?id=72802
670
671         Reviewed by Philippe Normand.
672
673         No new tests. This only applies to certain GTK+ themes.
674         Existing tests cover the default GTK+ theme.
675
676         * platform/gtk/RenderThemeGtk3.cpp:
677         (WebCore::RenderThemeGtk::paintSliderThumb): Do not resize the
678         slider thumb by the trough border.
679
680 2012-01-03  Adrienne Walker  <enne@google.com>
681
682         [chromium] Make tiled layer's tiler always exist
683         https://bugs.webkit.org/show_bug.cgi?id=75329
684
685         Reviewed by James Robinson.
686
687         TiledLayerChromium has some awkward code to handle lazily creating the
688         tiler, including lots of null checks and shadowing the tile size.
689         Instead, always create the tiler up front. As values change that
690         invalidate all tiles, reset it rather than clear the pointer.
691
692         * platform/graphics/chromium/LayerChromium.cpp:
693         (WebCore::LayerChromium::setIsNonCompositedContent):
694         * platform/graphics/chromium/LayerChromium.h:
695         * platform/graphics/chromium/TiledLayerChromium.cpp:
696         (WebCore::TiledLayerChromium::TiledLayerChromium):
697         (WebCore::TiledLayerChromium::cleanupResources):
698         (WebCore::TiledLayerChromium::setTileSize):
699         (WebCore::TiledLayerChromium::setBorderTexelOption):
700         (WebCore::TiledLayerChromium::drawsContent):
701         (WebCore::TiledLayerChromium::updateCompositorResources):
702         (WebCore::TiledLayerChromium::setTilingOption):
703         (WebCore::TiledLayerChromium::pushPropertiesTo):
704         (WebCore::TiledLayerChromium::setIsNonCompositedContent):
705         (WebCore::TiledLayerChromium::invalidateRect):
706         (WebCore::TiledLayerChromium::protectTileTextures):
707         (WebCore::TiledLayerChromium::prepareToUpdate):
708         (WebCore::TiledLayerChromium::prepareToUpdateIdle):
709         (WebCore::TiledLayerChromium::needsIdlePaint):
710         (WebCore::TiledLayerChromium::idlePaintRect):
711         * platform/graphics/chromium/TiledLayerChromium.h:
712         * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
713         (WebCore::CCLayerTilingData::setBorderTexelOption):
714         * platform/graphics/chromium/cc/CCLayerTilingData.h:
715         * platform/graphics/gpu/TilingData.cpp:
716         (WebCore::TilingData::setHasBorderTexels):
717         * platform/graphics/gpu/TilingData.h:
718
719 2012-01-03  Kentaro Hara  <haraken@chromium.org>
720
721         Unreviewed. Rebaselined run-bindings-tests results.
722
723         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
724         (WebCore::JSTestEventConstructor::destroy):
725         * bindings/scripts/test/JS/JSTestEventConstructor.h:
726         (WebCore::JSTestEventConstructor::releaseImplIfNotNull):
727         * bindings/scripts/test/JS/JSTestInterface.cpp:
728         (WebCore::JSTestInterface::destroy):
729         * bindings/scripts/test/JS/JSTestInterface.h:
730         (WebCore::JSTestInterface::releaseImplIfNotNull):
731         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
732         (WebCore::JSTestMediaQueryListListener::destroy):
733         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
734         (WebCore::JSTestMediaQueryListListener::releaseImplIfNotNull):
735         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
736         (WebCore::JSTestNamedConstructor::destroy):
737         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
738         (WebCore::JSTestNamedConstructor::releaseImplIfNotNull):
739         * bindings/scripts/test/JS/JSTestObj.cpp:
740         (WebCore::JSTestObj::destroy):
741         * bindings/scripts/test/JS/JSTestObj.h:
742         (WebCore::JSTestObj::releaseImplIfNotNull):
743         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
744         (WebCore::JSTestSerializedScriptValueInterface::destroy):
745         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
746         (WebCore::JSTestSerializedScriptValueInterface::releaseImplIfNotNull):
747
748 2012-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
749
750         [GTK] Fix scrollbars size with GTK+ 3.x
751         https://bugs.webkit.org/show_bug.cgi?id=75467
752
753         Reviewed by Xan Lopez.
754
755         * platform/gtk/RenderThemeGtk3.cpp:
756         (WebCore::getStyleContext): Add the style class for the given
757         widget type to the GtkWidgetPath when creating GtkStyleContext
758         objects.
759
760 2012-01-03  Alexis Menard  <alexis.menard@openbossa.org>
761
762         getComputedStyle for outline is not implemented.
763         https://bugs.webkit.org/show_bug.cgi?id=75441
764
765         Reviewed by Antonio Gomes.
766
767         Implement getComputedStyle for outline.
768
769         Test: fast/css/getComputedStyle/getComputedStyle-outline-shorthand.html
770
771         * css/CSSComputedStyleDeclaration.cpp:
772         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
773
774 2012-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
775
776         [GTK] Use gdk_screen_get_monitor_workarea() when available for screenAvailableRect()
777         https://bugs.webkit.org/show_bug.cgi?id=75435
778
779         Reviewed by Martin Robinson.
780
781         * platform/gtk/GtkVersioning.c:
782         (getScreenCurrentDesktop):
783         (getScreenWorkArea):
784         (gdk_screen_get_monitor_workarea): Implement it when GTK+ < 3.3.6.
785         * platform/gtk/GtkVersioning.h:
786         * platform/gtk/PlatformScreenGtk.cpp:
787         (WebCore::screenAvailableRect): Use
788         gdk_screen_get_monitor_workarea() instead of our own
789         implementation.
790
791 2012-01-02  Kentaro Hara  <haraken@chromium.org>
792
793         REGRESSION(r103919): Remove resolve-supplemental.pl from the WebCore target in Xcode
794         https://bugs.webkit.org/show_bug.cgi?id=75458
795
796         Reviewed by Adam Barth.
797
798         At r103919, we added resolve-supplemental.pl to WebCore.framework/Resources,
799         but we should have added it to the project without adding it to any target.
800         This patch fixes it.
801
802         No tests. No change in behavior.
803
804         * WebCore.xcodeproj/project.pbxproj:
805
806 2012-01-02  Kentaro Hara  <haraken@chromium.org>
807
808         Enable the [Supplemental] IDL on GTK/GObject
809         https://bugs.webkit.org/show_bug.cgi?id=75411
810
811         Reviewed by Adam Barth.
812
813         This patch enables the [Supplemental] IDL on GObject bindings of GTK
814         by changing the build flow of bindings/gobject/GNUmakefile.am as follows.
815
816         - Previous build flow:
817             foreach $idl (all IDL files) {
818                 generate-bindings.pl depends on $idl;
819                 generate-bindings.pl reads $idl;
820                 generate-bindings.pl generates .h and .cpp files for $idl;
821             }
822
823         - New build flow (See the discussions in bug 72138 for more details):
824             resolve-supplemental.pl depends on all IDL files;
825             resolve-supplemental.pl reads all IDL files;
826             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
827             resolve-supplemental.pl outputs supplemental_dependency.tmp;
828             foreach $idl (all IDL files) {
829                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
830                 generate-bindings.pl reads $idl;
831                 generate-bindings.pl reads supplemental_dependency.tmp;
832                 generate-bindings.pl generates .h and .cpp files for $idl,
833                     including all attributes in the IDL files that are implementing $idl;
834             }
835
836         Tests: Confirm that build succeeds.
837                http/tests/websocket/tests/*
838
839         * GNUmakefile.am:
840         * bindings/gobject/GNUmakefile.am:
841
842 2012-01-02  Kentaro Hara  <haraken@chromium.org>
843
844         Add resolve-supplemental.pl to project.pbxproj
845         https://bugs.webkit.org/show_bug.cgi?id=75426
846
847         Reviewed by Adam Barth.
848
849         We should have added "resolve-supplemental.pl" to build scripts of AppleWebKit
850         when we enabled the [Supplemental] IDL on AppleWebKit at r103519.
851         This is a follow-up patch for it.
852
853         No tests. Just confirm that the AppleWebKit build passes.
854
855         * WebCore.xcodeproj/project.pbxproj:
856
857 2012-01-02  Kentaro Hara  <haraken@chromium.org>
858
859         Add resolve-supplemental.pl to build scripts of AppleWin
860         https://bugs.webkit.org/show_bug.cgi?id=75412
861
862         Reviewed by Adam Barth.
863
864         We should have added "resolve-supplemental.pl" to build scripts of AppleWin
865         when we enabled the [Supplemental] IDL on AppleWin at r103519.
866         This is a follow-up patch for it.
867
868         No tests. Just confirm that the AppleWin build passes.
869
870         * WebCore.vcproj/MigrateScripts:
871         * WebCore.vcproj/WebCore.vcproj:
872
873 2012-01-02  Sam Weinig  <sam@webkit.org>
874
875         Fix the build.
876
877         * bindings/scripts/CodeGeneratorJS.pm:
878
879 2012-01-02  Andy Estes  <aestes@apple.com>
880
881         Fix the Windows build after r103888.
882
883         * WebCore.vcproj/WebCore.vcproj: Remove CollectionCache.{cpp, h} from
884         the WebCore vcproj.
885
886 2012-01-02  Sam Weinig  <sam@webkit.org>
887
888         REGRESSION(r100517): We're leaking many, many DOM objects!
889         https://bugs.webkit.org/show_bug.cgi?id=75451
890
891         Reviewed by Mark Rowe.
892
893         * bindings/scripts/CodeGeneratorJS.pm:
894         Add a temporary workaround to the problem of handle finalizers
895         not getting called by adding back the destructors (or rather
896         their replacement, destroy() functions).
897
898 2012-01-02  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
899
900         Fix chromium mac build after r103905
901         https://bugs.webkit.org/show_bug.cgi?id=75436
902
903         Reviewed by Csaba Osztrogonác.
904
905         Adding parenthesis to disambiguate because clang gives error
906         "expression is not assignable".
907
908         * rendering/svg/RenderSVGResourceGradient.cpp:
909         (WebCore::RenderSVGResourceGradient::applyResource):
910
911 2011-12-29  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
912
913         Use HashMap<OwnPtr> in RenderSVGResourceGradient
914         https://bugs.webkit.org/show_bug.cgi?id=75364
915
916         Reviewed by Daniel Bates.
917
918         * rendering/svg/RenderSVGResourceGradient.cpp:
919         (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
920         (WebCore::RenderSVGResourceGradient::removeClientFromCache):
921         (WebCore::RenderSVGResourceGradient::applyResource): avoid looking
922         up the hash twice by using HashMap::add().
923         * rendering/svg/RenderSVGResourceGradient.h: rename m_gradient to m_gradientMap.
924
925 2012-01-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
926
927         [Qt] Fix qmake warning about unescaped backslashes
928
929         Reviewed by Ossy.
930
931         * DerivedSources.pri:
932
933 2012-01-02  Carlos Garcia Campos  <cgarcia@igalia.com>
934
935         Unreviewed. Fix make distcheck issue.
936
937         * GNUmakefile.am: Add resolve-supplemental.pl script to
938         EXTRA_DIST.
939
940 2012-01-01  Andreas Kling  <awesomekling@apple.com>
941
942         Clear HTMLCollection's internal cache on construction.
943         <http://webkit.org/b/75423>
944
945         Reviewed by Antti Koivisto.
946
947         * html/HTMLCollection.h:
948         * html/HTMLCollection.cpp:
949         (WebCore::HTMLCollection::HTMLCollection):
950         (WebCore::HTMLCollection::invalidateCacheIfNeeded):
951
952 2012-01-01  Eunmi Lee  <eunmi15.lee@samsung.com>
953
954         [EFL] Move function to get dpi to the WebCore/platform/efl/EflScreenUtilities.cpp.
955         https://bugs.webkit.org/show_bug.cgi?id=75292
956
957         Reviewed by Andreas Kling.
958
959         Move ewk_util_dpi_get() function in the ewk_util.cpp to the
960         WebCore/platform/efl/EflScreenUtilities.cpp in order to use it in the WebKit2.
961         The function's name is changed to getDPI().
962
963         * PlatformEfl.cmake:
964         * platform/efl/EflScreenUtilities.cpp: Added.
965         (WebCore::getDPI):
966         * platform/efl/EflScreenUtilities.h: Added.
967
968 2012-01-01  Andreas Kling  <awesomekling@apple.com>
969
970         Merge CollectionCache into HTMLCollection.
971         <http://webkit.org/b/75423>
972
973         Reviewed by Anders Carlsson.
974
975         - Move the members of CollectionCache into HTMLCollection.
976         - Renamed resetCollectionInfo() to invalidateCacheIfNeeded().
977         - Removed a bunch of overkill HashMap::checkConsistency() calls.
978
979         * CMakeLists.txt:
980         * GNUmakefile.list.am:
981         * Target.pri:
982         * WebCore.gypi:
983         * WebCore.xcodeproj/project.pbxproj:
984         * html/CollectionCache.cpp: Removed.
985         * html/CollectionCache.h: Removed.
986
987             Remove CollectionCache.
988
989         * html/HTMLAllCollection.cpp:
990         (WebCore::HTMLAllCollection::namedItemWithIndex):
991         * html/HTMLCollection.cpp:
992         (WebCore::HTMLCollection::HTMLCollection):
993         (WebCore::HTMLCollection::~HTMLCollection):
994         (WebCore::HTMLCollection::invalidateCacheIfNeeded):
995         (WebCore::HTMLCollection::length):
996         (WebCore::HTMLCollection::item):
997         (WebCore::HTMLCollection::nextItem):
998         (WebCore::HTMLCollection::namedItem):
999         (WebCore::HTMLCollection::updateNameCache):
1000         (WebCore::HTMLCollection::hasNamedItem):
1001         (WebCore::HTMLCollection::namedItems):
1002         (WebCore::HTMLCollection::append):
1003         * html/HTMLCollection.h:
1004         * html/HTMLFormCollection.cpp:
1005         (WebCore::HTMLFormCollection::item):
1006         (WebCore::HTMLFormCollection::getNamedItem):
1007         (WebCore::HTMLFormCollection::nextItem):
1008         (WebCore::HTMLFormCollection::namedItem):
1009         (WebCore::HTMLFormCollection::updateNameCache):
1010
1011             HTMLCollection's m_info and info() become "struct m_cache" (protected.)
1012
1013         * html/HTMLOptionsCollection.cpp:
1014         * html/HTMLOptionsCollection.h:
1015         * html/HTMLSelectElement.cpp:
1016         (WebCore::HTMLSelectElement::setRecalcListItems):
1017
1018             Expose HTMLCollection::invalidateCacheIfNeeded() so we can call it from
1019             HTMLSelectElement::setRecalcListItems().
1020
1021         * html/HTMLFormCollection.h:
1022
1023             Remove stale declaration of formCollectionInfo() which no longer exists.
1024
1025 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1026
1027         Move the remaining collections to caching on their respective base nodes.
1028         <http://webkit.org/b/75416>
1029
1030         Reviewed by Anders Carlsson.
1031
1032         Add a (lazily-allocated) array of HTMLCollections to ElementRareData and cache
1033         the various collections on their base node rather than recreating them every time.
1034
1035         Test: fast/dom/collection-idempotence.html
1036               fast/dom/gc-9.html
1037
1038         * html/CollectionType.h:
1039         * dom/ElementRareData.h:
1040         (WebCore::ElementRareData::hasCachedHTMLCollections):
1041         (WebCore::ElementRareData::cachedHTMLCollection):
1042         (WebCore::ElementRareData::ensureCachedHTMLCollection):
1043         * dom/Element.h:
1044         * dom/Element.cpp:
1045         (WebCore::Element::ensureCachedHTMLCollection):
1046
1047             Plumbing to cache HTMLCollections on ElementRareData.
1048
1049         (WebCore::Element::~Element):
1050
1051             Detach any cached collections from an element when it's destroyed.
1052
1053         * html/HTMLCollection.h:
1054         * html/HTMLCollection.cpp:
1055         (WebCore::HTMLCollection::HTMLCollection):
1056         (WebCore::HTMLCollection::create):
1057         (WebCore::HTMLCollection::~HTMLCollection):
1058         (WebCore::HTMLCollection::detachFromNode):
1059         * html/HTMLTableRowsCollection.cpp:
1060         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1061         * html/HTMLOptionsCollection.cpp:
1062         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1063         * html/HTMLFormCollection.cpp:
1064         (WebCore::HTMLFormCollection::HTMLFormCollection):
1065         * dom/Document.cpp:
1066         (WebCore::Document::cachedCollection):
1067
1068             Consolidate the HTMLCollection constructors and get rid of the hacks to
1069             optionally retain the base node.
1070
1071         * html/HTMLDataListElement.cpp:
1072         (WebCore::HTMLDataListElement::options):
1073         * html/HTMLElement.cpp:
1074         (WebCore::HTMLElement::children):
1075         * html/HTMLMapElement.cpp:
1076         (WebCore::HTMLMapElement::areas):
1077         * html/HTMLTableElement.cpp:
1078         (WebCore::HTMLTableElement::tBodies):
1079         * html/HTMLTableRowElement.cpp:
1080         (WebCore::HTMLTableRowElement::cells):
1081         * html/HTMLTableSectionElement.cpp:
1082         (WebCore::HTMLTableSectionElement::rows):
1083
1084             Cached collections!
1085
1086 2012-01-01  Raymond Liu  <raymond.liu@intel.com>
1087
1088         Use overload methods to implement [Optional] parameters in AudioNode.idl
1089         https://bugs.webkit.org/show_bug.cgi?id=75402
1090
1091         Reviewed by Adam Barth.
1092
1093         No new tests required.
1094
1095         * GNUmakefile.list.am:
1096         * UseV8.cmake:
1097         * WebCore.gypi:
1098         * WebCore.xcodeproj/project.pbxproj:
1099         * bindings/js/JSAudioNodeCustom.cpp: Removed.
1100         * bindings/v8/custom/V8AudioNodeCustom.cpp: Removed.
1101         * webaudio/AudioNode.cpp:
1102         (WebCore::AudioNode::connect):
1103         (WebCore::AudioNode::disconnect):
1104         * webaudio/AudioNode.h:
1105         * webaudio/AudioNode.idl:
1106
1107 2011-12-20  Robert Hogan  <robert@webkit.org>
1108
1109         CSS 2.1 failure: border-collapse-offset-002.htm fails
1110         https://bugs.webkit.org/show_bug.cgi?id=71705
1111
1112         Reviewed by Julien Chaffraix.
1113
1114         Tests: css2.1/20110323/border-collapse-offset-002-expected.html
1115                fast/css/caption-width-absolute-position-offset-top.htm
1116                fast/css/caption-width-absolute-position.htm
1117                fast/css/caption-width-fixed-position-offset-top.htm
1118                fast/css/caption-width-fixed-position.htm
1119                fast/css/caption-width-relative-position-offset-top.htm
1120                fast/css/caption-width-relative-position.htm
1121
1122         Table captions are implemented as children of the table but have a special
1123         requirement to expand to the full width of the table rather than just the 'available'
1124         width, i.e. the full width minus padding and borders.
1125
1126         To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent()
1127         to return the full width of the containing block (i.e. the table) rather than the available width.
1128
1129
1130         * CMakeLists.txt: Add RenderTableCaption.[cpp|h]
1131         * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h]
1132         * Target.pri: Add RenderTableCaption.[cpp|h]
1133         * WebCore.gypi: Add RenderTableCaption.[cpp|h]
1134         * WebCore.vcproj/WebCore.vcproj: Add RenderTableCaption.[cpp|h]
1135         * WebCore.xcodeproj/project.pbxproj: Add RenderTableCaption.[cpp|h]
1136         * rendering/RenderBlock.cpp:
1137         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption
1138         * rendering/RenderObject.cpp:
1139         (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h]
1140         (WebCore::RenderObject::addChild): ditto
1141         * rendering/RenderObject.h:
1142         (WebCore::RenderObject::isTableCaption):
1143         * rendering/RenderTable.cpp:
1144         (WebCore::RenderTable::addChild):
1145         * rendering/RenderTable.h:
1146         * rendering/RenderTableCaption.cpp: Added.
1147         (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption
1148         (WebCore::RenderTableCaption::~RenderTableCaption):
1149         (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width.
1150         * rendering/RenderTableCaption.h: Added.
1151         (WebCore::RenderTableCaption::isTableCaption):
1152         (WebCore::toRenderTableCaption):
1153         * rendering/RenderingAllInOne.cpp:
1154
1155 2012-01-01  Kentaro Hara  <haraken@chromium.org>
1156
1157         Unreviewed. Rebaselined run-bindings-tests results.
1158
1159         * bindings/scripts/test/CPP/WebDOMTestSupplemental.cpp: Added.
1160         * bindings/scripts/test/CPP/WebDOMTestSupplemental.h: Added.
1161         * bindings/scripts/test/GObject/WebKitDOMTestSupplemental.cpp: Added.
1162         * bindings/scripts/test/GObject/WebKitDOMTestSupplemental.h: Added.
1163         * bindings/scripts/test/ObjC/DOMTestSupplemental.cpp: Added.
1164         * bindings/scripts/test/ObjC/DOMTestSupplemental.h: Added.
1165
1166 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1167
1168         Make HTMLCollections play nice after their base node is gone.
1169         <http://webkit.org/b/75410>
1170
1171         Reviewed by Anders Carlsson.
1172
1173         Added HTMLCollection::detachFromNode() and call that from destructors of nodes
1174         with cached collections.
1175
1176         Sprinkled checks/assertions where applicable to make sure HTMLCollections are
1177         empty after their associated node has been destroyed.
1178
1179         This is a slight change in behavior, as collections would previously keep
1180         their nodes alive indefinitely. Added a test to document this.
1181
1182         Test: fast/dom/htmlcollection-zombies.html
1183
1184         * dom/Document.cpp:
1185         (WebCore::Document::~Document):
1186         * html/HTMLAllCollection.cpp:
1187         (WebCore::HTMLAllCollection::namedItemWithIndex):
1188         * html/HTMLCollection.cpp:
1189         (WebCore::HTMLCollection::detachFromNode):
1190         (WebCore::HTMLCollection::resetCollectionInfo):
1191         (WebCore::HTMLCollection::itemAfter):
1192         (WebCore::HTMLCollection::calcLength):
1193         (WebCore::HTMLCollection::length):
1194         (WebCore::HTMLCollection::item):
1195         (WebCore::HTMLCollection::nextItem):
1196         (WebCore::HTMLCollection::namedItem):
1197         (WebCore::HTMLCollection::updateNameCache):
1198         (WebCore::HTMLCollection::hasNamedItem):
1199         (WebCore::HTMLCollection::namedItems):
1200         (WebCore::HTMLCollection::tags):
1201         * html/HTMLCollection.h:
1202         * html/HTMLFormCollection.cpp:
1203         (WebCore::HTMLFormCollection::calcLength):
1204         (WebCore::HTMLFormCollection::item):
1205         (WebCore::HTMLFormCollection::getNamedItem):
1206         (WebCore::HTMLFormCollection::getNamedFormItem):
1207         (WebCore::HTMLFormCollection::namedItem):
1208         (WebCore::HTMLFormCollection::updateNameCache):
1209         * html/HTMLFormElement.cpp:
1210         (WebCore::HTMLFormElement::~HTMLFormElement):
1211         * html/HTMLNameCollection.cpp:
1212         (WebCore::HTMLNameCollection::itemAfter):
1213         * html/HTMLOptionsCollection.cpp:
1214         (WebCore::HTMLOptionsCollection::add):
1215         (WebCore::HTMLOptionsCollection::remove):
1216         (WebCore::HTMLOptionsCollection::selectedIndex):
1217         (WebCore::HTMLOptionsCollection::setSelectedIndex):
1218         (WebCore::HTMLOptionsCollection::setLength):
1219         * html/HTMLPropertiesCollection.cpp:
1220         (WebCore::HTMLPropertiesCollection::length):
1221         (WebCore::HTMLPropertiesCollection::item):
1222         (WebCore::HTMLPropertiesCollection::names):
1223         * html/HTMLSelectElement.cpp:
1224         (WebCore::HTMLSelectElement::~HTMLSelectElement):
1225         * html/HTMLSelectElement.h:
1226         * html/HTMLTableElement.cpp:
1227         (WebCore::HTMLTableElement::~HTMLTableElement):
1228         * html/HTMLTableElement.h:
1229         * html/HTMLTableRowsCollection.cpp:
1230         (WebCore::HTMLTableRowsCollection::itemAfter):
1231
1232 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1233
1234         HTMLCollection: Remove the constructor's custom CollectionCache* argument.
1235         <http://webkit.org/b/75414>
1236
1237         Reviewed by Anders Carlsson.
1238
1239         We no longer need to initialize HTMLCollections with a custom CollectionCache,
1240         so remove the argument from the constructor.
1241
1242         * html/HTMLCollection.cpp:
1243         (WebCore::HTMLCollection::HTMLCollection):
1244         * html/HTMLCollection.h:
1245         * html/HTMLFormCollection.cpp:
1246         (WebCore::HTMLFormCollection::HTMLFormCollection):
1247         * html/HTMLNameCollection.cpp:
1248         (WebCore::HTMLNameCollection::HTMLNameCollection):
1249         * html/HTMLOptionsCollection.cpp:
1250         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1251         * html/HTMLTableRowsCollection.cpp:
1252         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1253
1254 2011-12-31  Dan Bernstein  <mitz@apple.com>
1255
1256         WebCore changes for: REGRESSION (WebKit2): Cursor, hover states not updated when page scrolls under stationary mouse pointer
1257         https://bugs.webkit.org/show_bug.cgi?id=75405
1258
1259         Reviewed by Anders Carlsson.
1260
1261         Test: fast/events/frame-scroll-fake-mouse-move.html
1262
1263         * page/FrameView.cpp:
1264         (WebCore::FrameView::scrollPositionChanged): Added a call to
1265         EventHandler::dispatchFakeMouseMoveEventSoon().
1266
1267 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1268
1269         Cache named item collections on Document, not just their caches.
1270         <http://webkit.org/b/75403>
1271
1272         Reviewed by Anders Carlsson.
1273
1274         Keep two maps of name -> RefPtr<HTMLNameCollection> on Document. We already
1275         had maps for the CollectionCaches and were creating the HTMLNameCollections
1276         every time they were accessed. We now let the collections create and manage
1277         the CollectionCaches instead of Document.
1278
1279         No new tests since these collections are not exposed to the web.
1280
1281         * dom/Document.h:
1282         * dom/Document.cpp:
1283         (WebCore::Document::windowNamedItems):
1284         (WebCore::Document::documentNamedItems):
1285
1286             Replace the name/CollectionCache maps by name/HTMLNameCollection maps.
1287
1288         * bindings/js/JSDOMWindowCustom.cpp:
1289         (WebCore::namedItemGetter):
1290         * bindings/js/JSHTMLDocumentCustom.cpp:
1291         (WebCore::JSHTMLDocument::nameGetter):
1292
1293             Pass names as AtomicStrings to Document's collection getters.
1294
1295         * html/HTMLNameCollection.h:
1296         (WebCore::HTMLNameCollection::create):
1297         * html/HTMLNameCollection.cpp:
1298         (WebCore::HTMLNameCollection::HTMLNameCollection):
1299
1300             Store the name in an AtomicString instead of a String, incidentally
1301             making traversal of HTMLNameCollections more efficient.
1302
1303         * html/CollectionType.h:
1304
1305             Remove two now-unneeded constants.
1306
1307 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1308
1309         Remove Document::collectionInfo() and let collections manage their caches.
1310         <http://webkit.org/b/75401>
1311
1312         Reviewed by Anders Carlsson.
1313
1314         Remove the CollectionCaches from Document and have the document's collections
1315         create and manage the caches on-demand instead. This is a step towards merging
1316         CollectionCache into HTMLCollection.
1317
1318         * dom/Document.h:
1319         * dom/Document.cpp:
1320         * html/HTMLCollection.cpp:
1321         (WebCore::HTMLCollection::HTMLCollection):
1322         * html/HTMLOptionsCollection.cpp:
1323
1324 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1325
1326         RenderThemeMac: Avoid double hash lookup in systemColor().
1327         <http://webkit.org/b/75409>
1328
1329         Reviewed by Anders Carlsson.
1330
1331         * rendering/RenderThemeMac.mm:
1332         (WebCore::RenderThemeMac::systemColor):
1333
1334 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1335
1336         CSSStyleSelector: Avoid double hash lookup in keyframeStylesForAnimation().
1337         <http://webkit.org/b/75408>
1338
1339         Reviewed by Anders Carlsson.
1340
1341         * css/CSSStyleSelector.cpp:
1342         (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
1343
1344 2012-01-01  Andreas Kling  <awesomekling@apple.com>
1345
1346         KeyframeAnimation: Use hash lookups to determine if property is animated.
1347         <http://webkit.org/b/75407>
1348
1349         Reviewed by Anders Carlsson.
1350
1351         Clean out an old FIXME about using hash lookups instead of iterating over
1352         the properties.
1353
1354         * page/animation/KeyframeAnimation.cpp:
1355         (WebCore::KeyframeAnimation::hasAnimationForProperty):
1356         (WebCore::KeyframeAnimation::affectsProperty):
1357
1358 2011-12-31  Dan Bernstein  <mitz@apple.com>
1359
1360         WebCore change for <rdar://problem/10463059> Cannot print USPS shipping labels
1361         http://webkit.org/b/72801
1362
1363         Reviewed by Anders Carlsson and Alexey Proskuryakov.
1364
1365         * WebCore.exp.in: Exported Chrome::print().
1366
1367 2011-12-31  Dan Bernstein  <mitz@apple.com>
1368
1369         WebCore changes for <rdar://problem/8750356> REGRESSION (WebKit2): Printing a subframe containing a PDF prints the on-screen view instead of the entire PDF document
1370         <http://webkit.org/b/75232>
1371
1372         Reviewed by Alexey Proskuryakov.
1373
1374         * WebCore.exp.in: Exported PluginDocument::pluginWidget().
1375         * WebCore.xcodeproj/project.pbxproj: Promoted PluginDocument.h to private.
1376         * html/PluginDocument.h: Fixed a typo in a comment.
1377
1378 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1379
1380         Cache and reuse the HTMLTableElement.rows collection.
1381         <http://webkit.org/b/75398>
1382
1383         Reviewed by Anders Carlsson.
1384
1385         Let HTMLTableElement::rows() cache the returned collection and tie it to the
1386         lifetime of the form.
1387
1388         Test: fast/dom/table-rows-collection-idempotence.html
1389               fast/dom/gc-9.html
1390
1391         * html/HTMLTableElement.h:
1392         * html/HTMLTableElement.cpp:
1393         (WebCore::HTMLTableElement::rows):
1394
1395             Cache the HTMLTableRowsCollection returned by rows() on the HTMLTableElement.
1396             Remove the per-table CollectionCache and let the collection manage that.
1397
1398         * html/HTMLTableRowsCollection.h:
1399         * html/HTMLTableRowsCollection.cpp:
1400         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1401         (WebCore::HTMLTableRowsCollection::create):
1402
1403             Tell the base class constructor to not retain the back-pointer to the table.
1404
1405 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1406
1407         Cache and reuse the HTMLSelectElement.options collection.
1408         <http://webkit.org/b/75399>
1409
1410         Reviewed by Anders Carlsson.
1411
1412         Let HTMLSelectElement::options() cache the returned collection and tie it to the
1413         lifetime of the form. This shrinks HTMLSelectElement by sizeof(CollectionCache)
1414         minus one pointer.
1415
1416         Test: fast/dom/select-options-collection-idempotence.html
1417               fast/gc-9.html
1418
1419         * html/HTMLSelectElement.h:
1420         * html/HTMLSelectElement.cpp:
1421         (WebCore::HTMLSelectElement::options):
1422
1423             Cache the HTMLOptionsCollection returned by options() on the HTMLSelectElement.
1424             Remove the per-select CollectionCache and let the collection manage that.
1425
1426         * html/HTMLOptionsCollection.h:
1427         * html/HTMLOptionsCollection.cpp:
1428         (WebCore::HTMLOptionsCollection::create):
1429         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
1430
1431             Tell the base class constructor to not retain the back-pointer to the element.
1432
1433         * html/HTMLSelectElement.cpp:
1434         (WebCore::HTMLSelectElement::setRecalcListItems):
1435         * html/HTMLOptionsCollection.cpp:
1436         (WebCore::HTMLOptionsCollection::invalidateCache):
1437
1438             Added so HTMLSelectElement can invalidate the collection without triggering
1439             unnecessary instantiation of a CollectionCache.
1440
1441 2011-12-30  Kentaro Hara  <haraken@chromium.org>
1442
1443         Enable the [Supplemental] IDL on CMake
1444         https://bugs.webkit.org/show_bug.cgi?id=75345
1445
1446         Reviewed by Daniel Bates.
1447
1448         This patch enables the [Supplemental] IDL on CMake by changing the build
1449         flow of CMake as follows.
1450
1451         - Previous build flow:
1452             foreach $idl (all IDL files) {
1453                 generate-bindings.pl depends on $idl;
1454                 generate-bindings.pl reads $idl;
1455                 generate-bindings.pl generates .h and .cpp files for $idl;
1456             }
1457
1458         - New build flow (See the discussions in bug 72138 for more details):
1459             resolve-supplemental.pl depends on all IDL files;
1460             resolve-supplemental.pl reads all IDL files;
1461             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
1462             resolve-supplemental.pl outputs supplemental_dependency.tmp;
1463             foreach $idl (all IDL files) {
1464                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
1465                 generate-bindings.pl reads $idl;
1466                 generate-bindings.pl reads supplemental_dependency.tmp;
1467                 generate-bindings.pl generates .h and .cpp files for $idl,
1468                     including all attributes in the IDL files that are implementing $idl;
1469             }
1470
1471         Tests: Confirm that build succeeds.
1472                http/tests/websocket/tests/*
1473
1474         * CMakeLists.txt:
1475         * UseJSC.cmake: Modified to reflect the new build flow as described above.
1476         * UseV8.cmake: Ditto.
1477
1478 2011-12-30  Robert Hogan  <robert@webkit.org>
1479
1480         REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
1481         https://bugs.webkit.org/show_bug.cgi?id=74723
1482
1483         Reviewed by Dan Bernstein.
1484
1485         Tests: fast/css/absolute-inline-alignment-2.html
1486                fast/css/absolute-inline-alignment.html
1487
1488         Inline positioned elements in the leading spaces of an inline run need to align to 
1489         adjacent text, so add them to the run as they're encountered.
1490
1491         * rendering/RenderBlockLineLayout.cpp:
1492         (WebCore::LineInfo::LineInfo): Keep a count of positioned objects encountered when
1493          skipping leading whitespace.
1494         (WebCore::LineInfo::runsFromLeadingWhitespace):
1495         (WebCore::LineInfo::resetRunsFromLeadingWhitespace):
1496         (WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
1497         (WebCore::RenderBlock::constructLine): Leading positioned objects should not be considered
1498          when deciding the number of runs in a line. Otherwise they would contribute towards line 
1499          height themselves and prevent a free-standing BR following the positioned object from providing a full 
1500          20px of height.
1501         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Since a run containing line-breaks will enter
1502          skipLeadingWhitespace for each new line we reset the count every time so that the count of positioned
1503          objects we encounter only affects the line they appear on. This case is covered by 
1504          fast/inline/styledEmptyInlinesWithBRs.html
1505         (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace): Add a run for each inline positioned object
1506          encountered in leading white space. Keep a count of them so that they can be excluded from
1507          the total number of runs in constructLine. 
1508
1509 2011-12-30  Raymond Liu  <raymond.liu@intel.com>
1510
1511         Remove unnecessary [Custom] attribute in CanvasRenderingContext2D.idl
1512         https://bugs.webkit.org/show_bug.cgi?id=75376
1513
1514         Reviewed by Adam Barth.
1515
1516         No new tests required.
1517
1518         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1519         * html/canvas/CanvasRenderingContext2D.idl:
1520
1521 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1522
1523         Cache and reuse the HTMLFormElement.elements collection.
1524         <http://webkit.org/b/75375>
1525
1526         Reviewed by Anders Carlsson.
1527
1528         Let HTMLFormElement::elements() cache the returned collection and tie it to the
1529         lifetime of the form. This reduces memory consumption by ~70 kB (on 64-bit) when
1530         viewing your average popular post on reddit.com.
1531
1532         Test: fast/dom/form-elements-collection-idempotence.html
1533               fast/dom/gc-9.html
1534
1535         * html/HTMLFormElement.h:
1536         * html/HTMLFormElement.cpp:
1537         (WebCore::HTMLFormElement::elements):
1538
1539             Cache the HTMLFormCollection returned by elements() on the HTMLFormElement.
1540             Remove the per-form CollectionCache and let the collection manage that.
1541
1542         * html/HTMLCollection.h:
1543         * html/HTMLCollection.cpp:
1544         (WebCore::HTMLCollection::HTMLCollection):
1545         (WebCore::HTMLCollection::create):
1546
1547             Have the HTMLCollection constructor take a bool argument that decides whether
1548             we retain the base node pointer or not. This mechanism is a temporary measure
1549             until all collection types are owned by their respective base nodes.
1550
1551         * html/HTMLFormCollection.h:
1552         * html/HTMLFormCollection.cpp:
1553         (WebCore::HTMLFormCollection::HTMLFormCollection):
1554         (WebCore::HTMLFormCollection::create):
1555
1556             Tell the base class constructor to not retain the back-pointer to the form.
1557
1558 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1559
1560         Unreviewed buildfix after r103841.
1561
1562         * inspector/InspectorMemoryAgent.cpp:
1563
1564 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1565
1566         CSSStyleDeclaration: Only allow setting parent rule at construction.
1567         <http://webkit.org/b/75391>
1568
1569         Reviewed by Dan Bernstein.
1570
1571         A CSSStyleDeclaration should only ever belong to one CSSRule. Enforce this
1572         at compile-time by replacing setParentRule(CSSRule*) with clearParentRule().
1573
1574         * css/CSSFontFaceRule.cpp:
1575         (WebCore::CSSFontFaceRule::~CSSFontFaceRule):
1576         * css/CSSStyleDeclaration.h:
1577         (WebCore::CSSStyleDeclaration::clearParentRule):
1578         * css/CSSStyleRule.cpp:
1579         (WebCore::CSSStyleRule::~CSSStyleRule):
1580         * css/WebKitCSSKeyframeRule.cpp:
1581         (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule):
1582
1583 2011-12-30  Andreas Kling  <awesomekling@apple.com>
1584
1585         WebKitCSSKeyframeRule.style.parentRule should point to the keyframe rule.
1586         <http://webkit.org/b/75336>
1587
1588         Reviewed by Antti Koivisto.
1589
1590         Let CSS animation keyframe rules .style.parentRule point back to the keyframe
1591         board, rather than the keyframes rule containing it.
1592
1593         Test: fast/css/css-keyframe-style-parentRule.html
1594
1595         * css/CSSParser.cpp:
1596         (WebCore::CSSParser::createKeyframeRule):
1597         * css/WebKitCSSKeyframeRule.cpp:
1598         (WebCore::WebKitCSSKeyframeRule::setDeclaration):
1599
1600             Set the CSSMutableStyleDeclaration's parent rule when creating it instead
1601             of in WebKitCSSKeyframeRule::setDeclaration(). Add assertion to make sure
1602             it's only called with declarations already parented to the keyframe rule.
1603
1604         * css/WebKitCSSKeyframesRule.cpp:
1605         (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
1606         (WebCore::WebKitCSSKeyframesRule::append):
1607         (WebCore::WebKitCSSKeyframesRule::deleteRule):
1608
1609             Stop reparenting keyframe rules' style declarations to the keyframes rule.
1610
1611 2011-12-30  Yury Semikhatsky  <yurys@chromium.org>
1612
1613         Web Inspector: use typed front-end API in the memory agent
1614         https://bugs.webkit.org/show_bug.cgi?id=75382
1615
1616         Memory agent now uses generate C++ API for communicating to the front-end.
1617
1618         Reviewed by Pavel Feldman.
1619
1620         * inspector/InspectorMemoryAgent.cpp:
1621         (WebCore::DOMTreeStatistics::CounterVisitor::CounterVisitor):
1622         (WebCore::DOMTreeStatistics::CounterVisitor::counters):
1623         (WebCore::DOMTreeStatistics::CounterVisitor::visitNode):
1624
1625 2011-12-30  Pavel Feldman  <pfeldman@google.com>
1626
1627         Web Inspector: migrate from "attached" to "compact" styles.
1628         https://bugs.webkit.org/show_bug.cgi?id=75381
1629
1630         When front-end is docked to right, it should look like "detached", but is still "attached".
1631         Use "compact" mode instead of "attached" mode in the styles to mitigate it.
1632
1633         Reviewed by Yury Semikhatsky.
1634
1635         * inspector/front-end/SearchController.js:
1636         (WebInspector.SearchController.prototype.updateSearchLabel):
1637         * inspector/front-end/Toolbar.js:
1638         (WebInspector.Toolbar.prototype.set compact):
1639         (WebInspector.Toolbar.prototype._toolbarDragStart):
1640         (WebInspector.Toolbar.prototype._toolbarDrag):
1641         * inspector/front-end/helpScreen.css:
1642         (body.compact .help-window-outer):
1643         (body.compact .help-window-main):
1644         (body.compact .help-window-caption):
1645         (body.compact .help-close-button):
1646         (body.compact .help-content):
1647         * inspector/front-end/inspector.css:
1648         (body.compact #toolbar):
1649         (body.compact.port-qt #toolbar):
1650         (body.compact.inactive #toolbar):
1651         (body.compact #search-toolbar-label):
1652         (body.compact #toolbar-dropdown-arrow):
1653         (body.compact #search):
1654         (body.compact.port-qt .toolbar-item.close-left, body.compact.port-qt .toolbar-item.close-right):
1655         (body.compact #main):
1656         * inspector/front-end/inspector.js:
1657         (WebInspector.set attached):
1658         (WebInspector.get isCompactMode):
1659         (WebInspector.get _setCompactMode):
1660         (WebInspector._installDockToRight.listener.get if):
1661         (WebInspector._installDockToRight.listener):
1662         * inspector/front-end/inspectorCommon.css:
1663         (body.dock-to-right):
1664         (body.dock-to-right.inactive):
1665
1666 2011-12-30  Sheriff Bot  <webkit.review.bot@gmail.com>
1667
1668         Unreviewed, rolling out r103794.
1669         http://trac.webkit.org/changeset/103794
1670         https://bugs.webkit.org/show_bug.cgi?id=75379
1671
1672         the ASSERT is triggered by several tests (Requested by
1673         jchaffraix on #webkit).
1674
1675         * rendering/RenderTable.cpp:
1676         (WebCore::RenderTable::RenderTable):
1677         (WebCore::RenderTable::addChild):
1678         (WebCore::RenderTable::layout):
1679         (WebCore::RenderTable::recalcSections):
1680         (WebCore::RenderTable::outerBorderAfter):
1681         (WebCore::RenderTable::sectionAbove):
1682         (WebCore::RenderTable::sectionBelow):
1683         * rendering/RenderTable.h:
1684         (WebCore::RenderTable::header):
1685         (WebCore::RenderTable::footer):
1686         (WebCore::RenderTable::firstBody):
1687         (WebCore::RenderTable::hasSections):
1688         (WebCore::RenderTable::topSection):
1689
1690 2011-12-29  Pavel Feldman  <pfeldman@google.com>
1691
1692         Web Inspector: enable dock-to-right view (still need embedders to support it).
1693         https://bugs.webkit.org/show_bug.cgi?id=75360
1694
1695         Reviewed by Yury Semikhatsky.
1696
1697         * English.lproj/localizedStrings.js:
1698         * inspector/front-end/Settings.js:
1699         (WebInspector.Settings):
1700         * inspector/front-end/SettingsScreen.js:
1701         (WebInspector.SettingsScreen):
1702         * inspector/front-end/inspector.js:
1703         (WebInspector.set attached):
1704         (WebInspector._renderAsAttached.get return):
1705         (WebInspector._renderAsAttached):
1706         (WebInspector._installDockToRight.updateToolbar):
1707
1708 2011-12-29  Raymond Liu  <raymond.liu@intel.com>
1709
1710         Use IDL overloads in AudioContext.idl for createBuffer
1711         https://bugs.webkit.org/show_bug.cgi?id=75293
1712
1713         Reviewed by Adam Barth.
1714
1715         No new tests required.
1716
1717         * bindings/js/JSAudioContextCustom.cpp:
1718         * bindings/v8/custom/V8AudioContextCustom.cpp:
1719         * webaudio/AudioContext.cpp:
1720         (WebCore::AudioContext::createBuffer):
1721         * webaudio/AudioContext.h:
1722         * webaudio/AudioContext.idl:
1723
1724 2011-12-29  Andreas Kling  <awesomekling@apple.com>
1725
1726         HTMLDivElement: Remove unnecessary variable in parseMappedAttribute().
1727         <http://webkit.org/b/75363>
1728
1729         Reviewed by Daniel Bates.
1730
1731         * html/HTMLDivElement.cpp:
1732         (WebCore::HTMLDivElement::parseMappedAttribute):
1733
1734 2011-12-29  Andreas Kling  <awesomekling@apple.com>
1735
1736         HTMLParagraphElement: Remove unnecessary variable in parseMappedAttribute().
1737         <http://webkit.org/b/75362>
1738
1739         Reviewed by Daniel Bates.
1740
1741         * html/HTMLParagraphElement.cpp:
1742         (WebCore::HTMLParagraphElement::parseMappedAttribute):
1743
1744 2011-12-29  Andreas Kling  <awesomekling@apple.com>
1745
1746         Use HashMap<OwnPtr> for Document's named item collection caches.
1747         <http://webkit.org/b/75335>
1748
1749         Reviewed by Daniel Bates.
1750
1751         * dom/Document.cpp:
1752         (WebCore::Document::~Document):
1753
1754             Remove now-unneeded deleteAllValues() loop.
1755
1756         (WebCore::Document::nameCollectionInfo):
1757
1758             Use add() instead of find()/add() to avoid one extra hash lookup.
1759
1760         * dom/Document.h:
1761
1762             Switch the value type of m_nameCollectionInfo to use OwnPtr.
1763
1764 2011-12-29  David Barton  <dbarton@mathscribe.com>
1765
1766         mfenced skips the first separator if the separators attribute contains multiple separators
1767         https://bugs.webkit.org/show_bug.cgi?id=57697
1768
1769         Reviewed by Dan Bernstein.
1770
1771         Added 2 test cases.
1772
1773         * rendering/mathml/RenderMathMLFenced.cpp:
1774         (WebCore::RenderMathMLFenced::addChild):
1775             - Thanks to Xun Sun <xun.sun@intel.com> for the off-by-one error fix.
1776
1777 2011-12-29  Alexis Menard  <alexis.menard@openbossa.org>
1778
1779         Enable the [Supplemental] IDL on Qt.
1780         https://bugs.webkit.org/show_bug.cgi?id=75274
1781
1782         Reviewed by Andreas Kling.
1783
1784         http://trac.webkit.org/changeset/103783 broke the Qt SL bot.
1785         This patch fixes the problem by using 'tr' rather than 'sed' which
1786         seems to be more consistent between Mac and Linux.
1787
1788         * DerivedSources.pri:
1789
1790 2011-12-29  Vsevolod Vlasov  <vsevik@chromium.org>
1791
1792         Web Inspector: Scripts navigator should support incremental search by typing.
1793         https://bugs.webkit.org/show_bug.cgi?id=75349
1794
1795         Reviewed by Pavel Feldman.
1796
1797         * inspector/front-end/ScriptsNavigator.js:
1798         (WebInspector.ScriptsNavigator):
1799         (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
1800         (WebInspector.ScriptsNavigator.prototype.show):
1801         (WebInspector.ScriptsNavigator.prototype._reset):
1802         (WebInspector.NavigatorTreeOutline):
1803         (WebInspector.NavigatorTreeOutline.prototype.scriptTreeElements):
1804         (WebInspector.NavigatorTreeOutline.prototype.searchStarted):
1805         (WebInspector.NavigatorTreeOutline.prototype.searchFinished):
1806         (WebInspector.BaseNavigatorTreeElement.prototype.onreveal):
1807         (WebInspector.BaseNavigatorTreeElement.prototype.set titleText):
1808         (WebInspector.BaseNavigatorTreeElement.prototype.matchesSearchText):
1809         * inspector/front-end/inspector.css:
1810         (.outline-disclosure ol.search-match-not-found li.selected .selection):
1811         (.outline-disclosure ol.search-match-found li.selected):
1812         (.outline-disclosure ol.search-match-found li.selected *):
1813         (.outline-disclosure ol.search-match-found li.parent.selected::before):
1814         (.outline-disclosure ol.search-match-found li.parent.expanded.selected::before):
1815         * inspector/front-end/scriptsPanel.css:
1816         (#scripts-navigator-tree-search-box):
1817         (#scripts-navigator-tree-search-box.visible):
1818         (#scripts-navigator-tree-search-box > input):
1819         (.scripts.panel .navigator .search-match-found li.selected .selection):
1820         (.scripts.panel .navigator .search-match-not-found li.selected .selection):
1821         (.scripts.panel .navigator .searching li.selected .selection):
1822         * inspector/front-end/treeoutline.js:
1823         (TreeOutline):
1824         (TreeOutline.prototype._treeKeyPress):
1825         (TreeOutline.prototype._startSearch.focusSearchInput):
1826         (TreeOutline.prototype._startSearch):
1827         (TreeOutline.prototype._searchTextChanged):
1828         (TreeOutline.prototype._showSearchMatchElement):
1829         (TreeOutline.prototype._searchInputKeyDown):
1830         (TreeOutline.prototype._nextSearchMatch):
1831         (TreeOutline.prototype._previousSearchMatch):
1832         (TreeOutline.prototype._searchInputBlur):
1833         (TreeOutline.prototype._searchFinished):
1834         (TreeOutline.prototype.stopSearch):
1835
1836 2011-12-29  Vsevolod Vlasov  <vsevik@chromium.org>
1837
1838         Web Inspector: Scripts navigator should trim long file names and show full url in tooltip.
1839         https://bugs.webkit.org/show_bug.cgi?id=75343
1840
1841         Reviewed by Pavel Feldman.
1842
1843         Test: inspector/debugger/ui-source-code-display-name.html
1844
1845         * inspector/front-end/ScriptsNavigator.js:
1846         (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
1847         * inspector/front-end/ScriptsPanel.js:
1848         (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
1849         (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
1850         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
1851         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
1852         * inspector/front-end/TabbedEditorContainer.js:
1853         (WebInspector.TabbedEditorContainer):
1854         (WebInspector.TabbedEditorContainer.prototype._appendSourceFrameTab):
1855         (WebInspector.TabbedEditorContainer.prototype._tabClosed):
1856         (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab.get if):
1857         (WebInspector.TabbedEditorContainer.prototype._replaceSourceFrameTab):
1858         (WebInspector.TabbedEditorContainer.prototype.get replaceSourceFrames):
1859         (WebInspector.TabbedEditorContainer.prototype.reset):
1860         * inspector/front-end/TabbedPane.js:
1861         (WebInspector.TabbedPane.prototype.appendTab):
1862         (WebInspector.TabbedPane.prototype.changeTabTooltip):
1863         (WebInspector.TabbedPaneTab):
1864         (WebInspector.TabbedPaneTab.prototype.get tooltip):
1865         (WebInspector.TabbedPaneTab.prototype.set tooltip):
1866         (WebInspector.TabbedPaneTab.prototype._createTabElement):
1867         * inspector/front-end/UISourceCode.js:
1868         (WebInspector.UISourceCode.prototype._parseURL):
1869         * inspector/front-end/utilities.js:
1870         ():
1871
1872 2011-12-29  Alexis Menard  <alexis.menard@openbossa.org>
1873
1874         getComputedStyle for margin is not implemented.
1875         https://bugs.webkit.org/show_bug.cgi?id=75358
1876
1877         Reviewed by Andreas Kling.
1878
1879         Implement getComputedStyle for margin.
1880
1881         Test: fast/css/getComputedStyle/getComputedStyle-margin-shorthand.html
1882
1883         * css/CSSComputedStyleDeclaration.cpp:
1884         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1885
1886 2011-12-29  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1887
1888         Use HashMap<OwnPtr> in RenderSVGResourcePattern
1889         https://bugs.webkit.org/show_bug.cgi?id=75361
1890
1891         Reviewed by Andreas Kling.
1892
1893         * rendering/svg/RenderSVGResourcePattern.cpp:
1894         (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
1895         (WebCore::RenderSVGResourcePattern::removeClientFromCache):
1896         (WebCore::RenderSVGResourcePattern::applyResource): use HashMap::add() to avoid
1897         looking up the hash twice.
1898         * rendering/svg/RenderSVGResourcePattern.h: rename m_pattern to m_patternMap to
1899         improve readability a little bit.
1900
1901 2011-12-29  Alexis Menard  <alexis.menard@openbossa.org>
1902
1903         getComputedStyle for padding is not implemented.
1904         https://bugs.webkit.org/show_bug.cgi?id=75352
1905
1906         Reviewed by Andreas Kling.
1907
1908         Implement getComputedStyle for padding shorthand property.
1909
1910         Test: fast/css/getComputedStyle/getComputedStyle-padding-shorthand.html
1911
1912         * css/CSSComputedStyleDeclaration.cpp:
1913         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1914
1915 2011-12-29  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1916
1917         Use HashMap<OwnPtr> in OriginAccessMap
1918         https://bugs.webkit.org/show_bug.cgi?id=75327
1919
1920         Reviewed by Andreas Kling.
1921
1922         * page/SecurityPolicy.cpp:
1923         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
1924         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
1925         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
1926
1927 2011-12-29  Pavel Podivilov  <podivilov@chromium.org>
1928
1929         Web Inspector: support sourceMappingURL magic comment.
1930         https://bugs.webkit.org/show_bug.cgi?id=75356
1931
1932         Reviewed by Pavel Feldman.
1933
1934         * inspector/ContentSearchUtils.cpp:
1935         (WebCore::ContentSearchUtils::findSourceMapURL):
1936         * inspector/ContentSearchUtils.h:
1937         * inspector/InspectorDebuggerAgent.cpp:
1938         (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
1939
1940 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
1941
1942         Web Inspector: Suggest pop-over doesn't hide on tab switch
1943         https://bugs.webkit.org/show_bug.cgi?id=73611
1944
1945         Reviewed by Pavel Feldman.
1946
1947         * inspector/front-end/ConsoleView.js:
1948         (WebInspector.ConsoleView.prototype.willHide):
1949         * inspector/front-end/TextPrompt.js:
1950         (WebInspector.TextPrompt.prototype.complete):
1951         (WebInspector.TextPrompt.prototype._completionsReady):
1952         (WebInspector.TextPrompt.prototype.acceptSuggestion):
1953         (WebInspector.TextPrompt.prototype.hideSuggestBox):
1954         (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
1955
1956 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
1957
1958         Web Inspector: Implement CSS selector profiler
1959         https://bugs.webkit.org/show_bug.cgi?id=74004
1960
1961         Reviewed by Pavel Feldman.
1962
1963         This implementation of CSS selector profiler measures the total time required to match a certain selector
1964         against DOM nodes and apply the style declaration properties to the particular element,
1965         as well as the number of selector  matches (i.e. the number of nodes that matched the selector.)
1966         The results are approximate due to internal matching algorithm optimizations (shared styles et al.)
1967         Multiple selectors with the same selectorText are coalesced into a single record.
1968
1969         * English.lproj/localizedStrings.js:
1970         * WebCore.gypi:
1971         * WebCore.vcproj/WebCore.vcproj:
1972         * inspector/compile-front-end.sh:
1973         * inspector/front-end/CSSSelectorProfileView.js: Added.
1974         (WebInspector.CSSSelectorDataGridNode):
1975         (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
1976         (WebInspector.CSSSelectorProfileView):
1977         (WebInspector.CSSSelectorProfileView.prototype.get statusBarItems):
1978         (WebInspector.CSSSelectorProfileView.prototype.get profile):
1979         (WebInspector.CSSSelectorProfileView.prototype.set profile):
1980         (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
1981         (WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
1982         (WebInspector.CSSSelectorProfileView.prototype.refreshData):
1983         (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents):
1984         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.get selectorComparator):
1985         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.timeComparator):
1986         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.matchesComparator):
1987         (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
1988         (WebInspector.CSSSelectorProfileType):
1989         (WebInspector.CSSSelectorProfileType.prototype.get buttonTooltip):
1990         (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
1991         (WebInspector.CSSSelectorProfileType.prototype.get treeItemTitle):
1992         (WebInspector.CSSSelectorProfileType.prototype.get description):
1993         (WebInspector.CSSSelectorProfileType.prototype.reset):
1994         (WebInspector.CSSSelectorProfileType.prototype.isRecordingProfile):
1995         (WebInspector.CSSSelectorProfileType.prototype.setRecordingProfile):
1996         (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile):
1997         (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile):
1998         (WebInspector.CSSSelectorProfileType.prototype.createSidebarTreeElementForProfile):
1999         (WebInspector.CSSSelectorProfileType.prototype.createView):
2000         * inspector/front-end/DetailedHeapshotView.js:
2001         * inspector/front-end/ProfileView.js:
2002         * inspector/front-end/ProfilesPanel.js:
2003         (WebInspector.ProfileType.prototype.reset):
2004         (WebInspector.ProfilesPanel.prototype._reset):
2005         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
2006         (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
2007         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
2008         (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
2009         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
2010         (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
2011         * inspector/front-end/WebKit.qrc:
2012         * inspector/front-end/inspector.html:
2013         * inspector/front-end/profilesPanel.css:
2014
2015 2011-12-29  Sheriff Bot  <webkit.review.bot@gmail.com>
2016
2017         Unreviewed, rolling out r103798.
2018         http://trac.webkit.org/changeset/103798
2019         https://bugs.webkit.org/show_bug.cgi?id=75353
2020
2021         some small scrollbar differences are making the tests fail on
2022         several platforms (Requested by jchaffraix on #webkit).
2023
2024         * rendering/RenderLayer.cpp:
2025         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
2026
2027 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
2028
2029         Web Inspector: Focus of the DOM tree is not restored when switching to the Elements panel
2030         https://bugs.webkit.org/show_bug.cgi?id=75351
2031
2032         Reviewed by Yury Semikhatsky.
2033
2034         * inspector/front-end/ElementsPanel.js:
2035         (WebInspector.ElementsPanel.prototype.wasShown):
2036
2037 2011-12-29  Julien Chaffraix  <jchaffraix@webkit.org>
2038
2039         REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
2040         https://bugs.webkit.org/show_bug.cgi?id=67100
2041
2042         Reviewed by Dan Bernstein.
2043
2044         Tests: fast/layers/scroll-with-transform-composited-layer-expected.html
2045                fast/layers/scroll-with-transform-composited-layer.html
2046                fast/layers/scroll-with-transform-layer-expected.html
2047                fast/layers/scroll-with-transform-layer.html
2048
2049         The regression came from a previous optimization that was wrongly kept after r93614.
2050
2051         * rendering/RenderLayer.cpp:
2052         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
2053         Remove the early return for transformed layer. This change worked as we used
2054         to call updateLayerPositions from scrollTo which would call updateLayerPosition on
2055         all our descendants. After r93614, this is no longer the case and we explicitely need
2056         to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
2057
2058 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
2059
2060         Web Inspector: Tree views can be collapsed/hidden using the keyboard arrows
2061         https://bugs.webkit.org/show_bug.cgi?id=46272
2062
2063         Reviewed by Yury Semikhatsky.
2064
2065         WebInspector.SidebarSectionTreeElement which is not selectable has also been made non-collapsible
2066         and expanded by default.
2067
2068         * inspector/front-end/AuditsPanel.js:
2069         (WebInspector.AuditsPanel):
2070         * inspector/front-end/ProfilesPanel.js:
2071         (WebInspector.ProfilesPanel.prototype._registerProfileType):
2072         * inspector/front-end/SidebarTreeElement.js:
2073         (WebInspector.SidebarSectionTreeElement):
2074         (WebInspector.SidebarSectionTreeElement.prototype.selectable.false.collapse):
2075         * inspector/front-end/TimelinePanel.js:
2076         (WebInspector.TimelinePanel):
2077
2078 2011-12-29  Pavel Feldman  <pfeldman@google.com>
2079
2080         Web Inspector: [chromium] pass dock to side request to the embedder.
2081         https://bugs.webkit.org/show_bug.cgi?id=75344
2082
2083         Reviewed by Yury Semikhatsky.
2084
2085         I'd like to enable dock-to-right for the front-end window. This is a background work
2086         to pass control flow from the front-end to the front-end host.
2087
2088         * inspector/InspectorFrontendClient.h:
2089         * inspector/InspectorFrontendClientLocal.h:
2090         (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
2091         * inspector/InspectorFrontendHost.cpp:
2092         (WebCore::InspectorFrontendHost::requestSetDockSide):
2093         * inspector/InspectorFrontendHost.h:
2094         * inspector/InspectorFrontendHost.idl:
2095         * inspector/front-end/InspectorFrontendHostStub.js:
2096         (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow):
2097         (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow):
2098         (.WebInspector.InspectorFrontendHostStub.prototype.requestSetDockSide):
2099
2100 2011-12-28  Pavel Podivilov  <podivilov@chromium.org>
2101
2102         Web Inspector: add "enable source maps" checkbox setting.
2103         https://bugs.webkit.org/show_bug.cgi?id=75311
2104
2105         Reviewed by Pavel Feldman.
2106
2107         When "enable source maps" is on, all auto detected source maps are silently applied.
2108
2109         * English.lproj/localizedStrings.js:
2110         * inspector/front-end/DebuggerPresentationModel.js:
2111         * inspector/front-end/JavaScriptSourceFrame.js:
2112         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
2113         * inspector/front-end/RawSourceCode.js:
2114         (WebInspector.RawSourceCode):
2115         (WebInspector.RawSourceCode.prototype.setFormatted):
2116         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
2117         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
2118         (WebInspector.RawSourceCode.prototype._createUISourceCode):
2119         * inspector/front-end/Settings.js:
2120         (WebInspector.Settings):
2121         * inspector/front-end/SettingsScreen.js:
2122         (WebInspector.SettingsScreen):
2123         * inspector/front-end/UISourceCode.js:
2124         (WebInspector.UISourceCode):
2125         * inspector/front-end/inspector.js:
2126         (WebInspector._toolbarItemClicked):
2127
2128 2011-12-29  Julien Chaffraix  <jchaffraix@webkit.org>
2129
2130         Tighten our checks for needsSectionRecalc in RenderTable
2131         https://bugs.webkit.org/show_bug.cgi?id=73972
2132
2133         Reviewed by Adam Barth.
2134
2135         Refactoring covered under the new tests.
2136
2137         Now most of the functions use the header, first body and footer's 
2138         getters that checks if we need a section recalculation. The only
2139         exceptions are addChild and recalcSections as they can be called
2140         with the bit set.
2141
2142         * rendering/RenderTable.cpp:
2143         (WebCore::RenderTable::layout):
2144         (WebCore::RenderTable::outerBorderAfter):
2145         (WebCore::RenderTable::sectionAbove):
2146         (WebCore::RenderTable::sectionBelow):
2147         Updated the previous functions to use the sections' getters.
2148
2149         (WebCore::RenderTable::RenderTable):
2150         (WebCore::RenderTable::addChild):
2151         (WebCore::RenderTable::recalcSections):
2152         Update the previous functions after the 2 renames
2153         (see below).
2154
2155         * rendering/RenderTable.h:
2156         (WebCore::RenderTable::header):
2157         (WebCore::RenderTable::footer):
2158         (WebCore::RenderTable::firstBody):
2159         Added some ASSERT here. Also renamed m_head to m_header
2160         and m_foot to m_footer to match the getter and to avoid
2161         unneeded abbreviation.
2162
2163         (WebCore::RenderTable::hasSections):
2164         (WebCore::RenderTable::topSection):
2165         Updated the previous functions to use the section getters.
2166
2167 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2168
2169         Use HashMap<OwnPtr> for UserScriptMap and UserStyleSheetMap
2170         https://bugs.webkit.org/show_bug.cgi?id=75323
2171
2172         Reviewed by Darin Adler.
2173
2174         * dom/Document.cpp:
2175         (WebCore::Document::pageGroupUserSheets):
2176         * page/PageGroup.cpp:
2177         (WebCore::PageGroup::addUserScriptToWorld):
2178         (WebCore::PageGroup::addUserStyleSheetToWorld):
2179         (WebCore::PageGroup::removeUserScriptFromWorld):
2180         (WebCore::PageGroup::removeUserStyleSheetFromWorld): fix a small mistake in
2181         previous code. Now the entry for world is removed (and deleted) only if its
2182         stylesheet vector is empty.
2183         (WebCore::PageGroup::removeUserScriptsFromWorld):
2184         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
2185         (WebCore::PageGroup::removeAllUserContent):
2186         * page/UserScriptTypes.h:
2187         * page/UserStyleSheetTypes.h:
2188
2189 2011-12-28  Andreas Kling  <awesomekling@apple.com>
2190
2191         Reduce memory used by NamedNodeMap.
2192         <http://webkit.org/b/75333>
2193
2194         Reviewed by Sam Weinig.
2195
2196         Give NamedNodeMap's attribute vector an inline capacity of 4. The vast majority
2197         of elements have <= 4 attributes, and if they don't have any we normally don't
2198         allocate an attribute map at all.
2199
2200         This reduces memory consumption by 1.2MB (on 64-bit) when loading the full HTML5
2201         spec at <http://whatwg.org/c>.
2202
2203         * dom/NamedNodeMap.h:
2204
2205 2011-12-28  Andreas Kling  <awesomekling@apple.com>
2206
2207         Reduce memory used by SpaceSplitString.
2208         <http://webkit.org/b/75315>
2209
2210         Reviewed by Sam Weinig.
2211
2212         Split the string upon creation instead of waiting until it's accessed.
2213         This allows us to get rid of all data members except the substring vector.
2214         Since we're storing AtomicStrings, this is way more memory-efficient than
2215         the previous implementation in the majority of cases.
2216
2217         Also reduced the inline capcity of the vector to 2 (from 8), after testing
2218         showed this to cover 90% of the cases on the Alexa top sites.
2219
2220         All in all this reduces memory consumption by 1.1MB (on 64-bit) when
2221         loading the full HTML5 spec at <http://whatwg.org/c>. On that same page,
2222         less than 2ms is spent (on my MBP) splitting the ~20000 strings.
2223
2224         * dom/SpaceSplitString.cpp:
2225         (WebCore::SpaceSplitStringData::createVector):
2226         (WebCore::SpaceSplitStringData::containsAll):
2227         (WebCore::SpaceSplitStringData::remove):
2228         * dom/SpaceSplitString.h:
2229         (WebCore::SpaceSplitStringData::SpaceSplitStringData):
2230         (WebCore::SpaceSplitStringData::contains):
2231         (WebCore::SpaceSplitStringData::size):
2232         (WebCore::SpaceSplitStringData::operator[]):
2233
2234 2011-12-28  ChangSeok Oh  <shivamidow@gmail.com>
2235
2236         [GTK] Fix compilation issue when selecting opengl for Accelerated compositing
2237         https://bugs.webkit.org/show_bug.cgi?id=75309
2238
2239         Reviewed by Martin Robinson.
2240
2241         Add TextureMapperGL and TextureMapperGLCairo files.
2242         They define new classes required to implement TextureMapperGL for GTK port.
2243
2244         No new tests required.
2245
2246         * GNUmakefile.list.am:
2247         * platform/graphics/cairo/TextureMapperGLCairo.cpp: Added.
2248         (WebCore::BGRA32PremultimpliedBufferCairo::BGRA32PremultimpliedBufferCairo):
2249         (WebCore::BGRA32PremultimpliedBufferCairo::~BGRA32PremultimpliedBufferCairo):
2250         (WebCore::BGRA32PremultimpliedBufferCairo::beginPaint):
2251         (WebCore::BGRA32PremultimpliedBufferCairo::data):
2252         (WebCore::BGRA32PremultimpliedBufferCairo::endPaint):
2253         (WebCore::uidForImage):
2254         (WebCore::BGRA32PremultimpliedBuffer::create):
2255         * platform/graphics/cairo/TextureMapperGLCairo.h: Added.
2256
2257 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2258
2259         Unreviewed, rolling out r103782.
2260         http://trac.webkit.org/changeset/103782
2261         https://bugs.webkit.org/show_bug.cgi?id=75328
2262
2263         broke origin-whitelisting-removal.html (Requested by kling on
2264         #webkit).
2265
2266         * page/SecurityPolicy.cpp:
2267         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
2268         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
2269         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
2270
2271 2011-12-28  Kentaro Hara  <haraken@chromium.org>
2272
2273         Enable the [Supplemental] IDL on Qt
2274         https://bugs.webkit.org/show_bug.cgi?id=75274
2275
2276         Reviewed by Adam Barth.
2277
2278         This patch enables the [Supplemental] IDL on Qt by changing the build
2279         flow of Qt as follows.
2280
2281         - Previous build flow:
2282             foreach $idl (all IDL files) {
2283                 generate-bindings.pl depends on $idl;
2284                 generate-bindings.pl reads $idl;
2285                 generate-bindings.pl generates .h and .cpp files for $idl;
2286             }
2287
2288         - New build flow (See the discussions in bug 72138 for more details):
2289             resolve-supplemental.pl depends on all IDL files;
2290             resolve-supplemental.pl reads all IDL files;
2291             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
2292             resolve-supplemental.pl outputs supplemental_dependency.tmp;
2293             foreach $idl (all IDL files) {
2294                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
2295                 generate-bindings.pl reads $idl;
2296                 generate-bindings.pl reads supplemental_dependency.tmp;
2297                 generate-bindings.pl generates .h and .cpp files for $idl,
2298                     including all attributes in the IDL files that are implementing $idl;
2299             }
2300
2301         Tests: Confirm that build succeeds.
2302                http/tests/websocket/tests/*
2303
2304         * DerivedSources.pri: Described the above build flow.
2305
2306 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2307
2308         Use HashMap<OwnPtr> in OriginAccessMap
2309         https://bugs.webkit.org/show_bug.cgi?id=75327
2310
2311         Reviewed by Andreas Kling.
2312
2313         * page/SecurityPolicy.cpp:
2314         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
2315         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
2316         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
2317
2318 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2319
2320         Use HashMap<OwnPtr> for ProgressTracker's items
2321         https://bugs.webkit.org/show_bug.cgi?id=75326
2322
2323         Reviewed by Andreas Kling.
2324
2325         * loader/ProgressTracker.cpp:
2326         (WebCore::ProgressTracker::~ProgressTracker): although is empty, the destructor was
2327         kept so in the header file we can forward declare ProgressItem and use in an OwnPtr.
2328         (WebCore::ProgressTracker::reset):
2329         (WebCore::ProgressTracker::incrementProgress):
2330         (WebCore::ProgressTracker::completeProgress): removed a useless assignment to item
2331         member just before it is deleted.
2332         * loader/ProgressTracker.h:
2333
2334 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
2335
2336         getComputedStyle for border-color is not implemented.
2337         https://bugs.webkit.org/show_bug.cgi?id=75324
2338
2339         Reviewed by Andreas Kling.
2340
2341         Implement getComputedStyle for border-color.
2342
2343         Test: fast/css/getComputedStyle/getComputedStyle-border-color-shorthand.html
2344
2345         * css/CSSComputedStyleDeclaration.cpp:
2346         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2347
2348 2011-12-28  Darin Adler  <darin@apple.com>
2349
2350         Use OwnPtr to handle lifetime and deletion of FontFace objects
2351         https://bugs.webkit.org/show_bug.cgi?id=75221
2352
2353         Reviewed by Daniel Bates.
2354
2355         * css/CSSFontFaceSource.cpp:
2356         (WebCore::CSSFontFaceSource::getFontData): Use add instead of get/set to read and
2357         then later fill a cache. Use new version of registerCustomFont that takes PassOwnPtr.
2358         * css/CSSSegmentedFontFace.cpp:
2359         (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
2360
2361         * dom/Document.cpp:
2362         (WebCore::Document::registerCustomFont): Take a PassOwnPtr instead of raw pointer.
2363         * dom/Document.h: Ditto.
2364
2365 2011-12-28  Adam Barth  <abarth@webkit.org>
2366
2367         "Fake" insertion mode in HTMLTreeBuilder doesn't do anything
2368         https://bugs.webkit.org/show_bug.cgi?id=75322
2369
2370         Reviewed by Darin Adler.
2371
2372         This machinery isn't needed anymore now that we're using the new
2373         foreign content hotness.
2374
2375         * html/parser/HTMLTreeBuilder.cpp:
2376         * html/parser/HTMLTreeBuilder.h:
2377         (WebCore::HTMLTreeBuilder::setInsertionMode):
2378
2379 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
2380
2381         getComputedStyle for border-style is not implemented.
2382         https://bugs.webkit.org/show_bug.cgi?id=75312
2383
2384         Reviewed by Andreas Kling.
2385
2386         Implement getComputedStyle for border-style.
2387
2388         Test: fast/css/getComputedStyle/getComputedStyle-border-style-shorthand.html
2389
2390         * css/CSSComputedStyleDeclaration.cpp:
2391         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2392
2393 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
2394
2395         getComputedStyle for border-bottom, border-top, border-left, border-right is not implemented.
2396         https://bugs.webkit.org/show_bug.cgi?id=74743
2397
2398         Reviewed by Tony Chang.
2399
2400         Implement getComputedStyle for border-top, border-bottom, border-right, border-left.
2401
2402         Test: fast/css/getComputedStyle/getComputedStyle-border-shorthand.html
2403
2404         * css/CSSComputedStyleDeclaration.cpp:
2405         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2406         (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForShorthandProperties):
2407         * css/CSSComputedStyleDeclaration.h:
2408
2409 2011-12-28  Robert Hogan  <robert@webkit.org>
2410
2411         Inline flow not learning height of all text descendants
2412         https://bugs.webkit.org/show_bug.cgi?id=75305
2413
2414         Reviewed by Dan Bernstein.
2415
2416         Tests: fast/inline/nested-text-descendants-expected.html
2417                fast/inline/nested-text-descendants.html
2418
2419         The root inline box would only learn it had text descendants if its first grandchild
2420         was text. It wasn't informed of subsequent text grandchildren so could not factor them 
2421         into its calculation of the line height.
2422         To fix this, propagate the existence of a text descendant to the root inline box
2423         by walking up through the text child's ancestors.
2424
2425         * rendering/InlineFlowBox.cpp:
2426         (WebCore::setHasTextDescendantsOnAncestors):
2427         (WebCore::InlineFlowBox::addToLine):
2428         * rendering/InlineFlowBox.h:
2429         (WebCore::InlineFlowBox::setHasTextDescendants):
2430
2431 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2432
2433         Unreviewed, rolling out r103620.
2434         http://trac.webkit.org/changeset/103620
2435         https://bugs.webkit.org/show_bug.cgi?id=75316
2436
2437         Causes many crashes (Requested by abarth on #webkit).
2438
2439         * loader/FrameLoaderClient.h:
2440         * page/DOMWindow.cpp:
2441         (WebCore::DOMWindow::postMessageTimerFired):
2442
2443 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
2444
2445         [V8][Chromium] 'randomString' in document.body.style always returns true
2446         https://bugs.webkit.org/show_bug.cgi?id=75313
2447
2448         Reviewed by Adam Barth.
2449
2450         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2451         (WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
2452
2453 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
2454
2455         Web Inspector: Add domain.png to WebCore.gypi / WebKit.qrc.
2456         https://bugs.webkit.org/show_bug.cgi?id=75310
2457
2458         Reviewed by Pavel Feldman.
2459
2460         * WebCore.gypi:
2461         * inspector/front-end/WebKit.qrc:
2462
2463 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
2464
2465         Web Inspector: ExperimentsSettings causes warning on chromium when reading localizedStrings.
2466         https://bugs.webkit.org/show_bug.cgi?id=75299
2467
2468         Reviewed by Pavel Feldman.
2469
2470         * inspector/front-end/Settings.js:
2471         (WebInspector.ExperimentsSettings):
2472         * inspector/front-end/SettingsScreen.js:
2473         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
2474
2475 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
2476
2477         Web Inspector: Scripts panel: add debug sidebar resizer to TabbedEditorContainer.
2478         https://bugs.webkit.org/show_bug.cgi?id=75300
2479
2480         Reviewed by Pavel Feldman.
2481
2482         * inspector/front-end/ScriptsPanel.js:
2483         * inspector/front-end/scriptsPanel.css:
2484         (#scripts-debug-sidebar-resizer-widget):
2485
2486 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
2487
2488         Web Inspector: Introduce a Profiler launcher view similar to that in the Audits panel
2489         https://bugs.webkit.org/show_bug.cgi?id=75228
2490
2491         Reviewed by Pavel Feldman.
2492
2493         * English.lproj/localizedStrings.js:
2494         * WebCore.gypi:
2495         * WebCore.vcproj/WebCore.vcproj:
2496         * inspector/front-end/AuditLauncherView.js:
2497         (WebInspector.AuditLauncherView):
2498         * inspector/front-end/AuditsPanel.js:
2499         (WebInspector.AuditsPanel):
2500         * inspector/front-end/DetailedHeapshotView.js:
2501         (WebInspector.DetailedHeapshotProfileType):
2502         (WebInspector.DetailedHeapshotProfileType.prototype.get treeItemTitle):
2503         (WebInspector.DetailedHeapshotProfileType.prototype.get description):
2504         * inspector/front-end/ProfileLauncherView.js: Added.
2505         (WebInspector.ProfileLauncherView):
2506         (WebInspector.ProfileLauncherView.prototype.setUpEventListeners):
2507         (WebInspector.ProfileLauncherView.prototype.addProfileType):
2508         (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
2509         (WebInspector.ProfileLauncherView.prototype._updateControls):
2510         (WebInspector.ProfileLauncherView.prototype._profileTypeChanged):
2511         (WebInspector.ProfileLauncherView.prototype._onProfileStarted):
2512         (WebInspector.ProfileLauncherView.prototype._onProfileFinished):
2513         * inspector/front-end/ProfileView.js:
2514         (WebInspector.CPUProfileType):
2515         (WebInspector.CPUProfileType.prototype.get treeItemTitle):
2516         (WebInspector.CPUProfileType.prototype.get description):
2517         * inspector/front-end/ProfilesPanel.js:
2518         (WebInspector.ProfileType.prototype.get treeItemTitle):
2519         (WebInspector.ProfileType.prototype.get description):
2520         (WebInspector.ProfilesPanel.prototype.get statusBarItems):
2521         (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
2522         (WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
2523         (WebInspector.ProfilesPanel.prototype._reset):
2524         (WebInspector.ProfilesPanel.prototype._showLauncherView):
2525         (WebInspector.ProfilesPanel.prototype._registerProfileType):
2526         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
2527         (WebInspector.ProfilesPanel.prototype._updateInterface):
2528         (WebInspector.ProfileTypeTreeElement):
2529         (WebInspector.ProfileTypeTreeElement.prototype.collapse):
2530         (WebInspector.ProfilesSidebarTreeElement):
2531         (WebInspector.ProfilesSidebarTreeElement.prototype.onattach):
2532         (WebInspector.ProfilesSidebarTreeElement.prototype.onselect):
2533         (WebInspector.ProfilesSidebarTreeElement.prototype.get selectable):
2534         (WebInspector.ProfilesSidebarTreeElement.prototype.refresh):
2535         * inspector/front-end/WebKit.qrc:
2536         * inspector/front-end/WelcomeView.js: Removed.
2537         * inspector/front-end/auditsPanel.css:
2538         (.audit-launcher-view .audit-launcher-view-content):
2539         (.audit-launcher-view div.button-container):
2540         (.panel-enabler-view.audit-launcher-view label):
2541         (.panel-enabler-view.audit-launcher-view label.disabled):
2542         * inspector/front-end/inspector.html:
2543         * inspector/front-end/panelEnablerView.css:
2544         (.panel-enabler-view img):
2545         (.panel-enabler-view .flexible-space):
2546         (.panel-enabler-view button:not(.status-bar-item)):
2547         (body.inactive .panel-enabler-view button, .panel-enabler-view button:disabled):
2548         (.panel-enabler-view input[type="radio"]):
2549         (.panel-enabler-view input[type="radio"]:active:not(:disabled)):
2550         (.panel-enabler-view input[type="radio"]:checked):
2551         (.panel-enabler-view input[type="radio"]:checked:active):
2552         * inspector/front-end/profilesPanel.css:
2553         (.profile-launcher-view-tree-item > .icon):
2554         (.profile-launcher-view-content):
2555         (.profile-launcher-view-content h1):
2556         (.panel-enabler-view.profile-launcher-view form):
2557         (.panel-enabler-view.profile-launcher-view label):
2558         (.profile-launcher-view-content p):
2559         (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
2560         (.profile-launcher-view-content button.running:not(.status-bar-item)):
2561         (body.inactive .profile-launcher-view-content button.running:not(.status-bar-item)):
2562
2563 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2564
2565         Unreviewed, rolling out r103763.
2566         http://trac.webkit.org/changeset/103763
2567         https://bugs.webkit.org/show_bug.cgi?id=75307
2568
2569         "Compilation fails on Snow Leopard" (Requested by yurys on
2570         #webkit).
2571
2572         * inspector/CodeGeneratorInspector.py:
2573         (Helper):
2574         (create_ad_hoc_type_declaration.Helper):
2575         (CodeGenerator.generate_type_builder):
2576         (get_in_c_type_text):
2577
2578 2011-12-28  Peter Rybin  <peter.rybin@gmail.com>
2579
2580         Web Inspector: CodeGeneratorInspector.py: generate enum types.
2581         https://bugs.webkit.org/show_bug.cgi?id=74954
2582
2583         Reviewed by Yury Semikhatsky.
2584
2585         Internal map of string contants is created. C enums are created for
2586         each JSON enum.
2587
2588         * inspector/CodeGeneratorInspector.py:
2589         (EnumConstants.add_constant):
2590         (EnumConstants):
2591         (EnumConstants.get_enum_constant_code):
2592         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
2593         (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
2594         (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
2595         (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
2596         (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
2597         (get_in_c_type_text):
2598         (get_setter_value_expression_pattern):
2599         (PlainObjectBinding.get_in_c_type_text):
2600         (PlainObjectBinding.get_setter_value_expression_pattern):
2601         (RawTypesBinding.get_in_c_type_text):
2602         (RawTypesBinding.get_setter_value_expression_pattern):
2603         (get_annotated_type_text):
2604         (MethodGenerateModes.get_modes):
2605         (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
2606         (MethodGenerateModes.StrictParameterMode):
2607         (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
2608         (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
2609         (MethodGenerateModes.RawParameterMode):
2610         (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
2611         (MethodGenerateModes.CombinedMode.get_c_param_type_text):
2612         (MethodGenerateModes):
2613         (MethodGenerateModes.CombinedMode):
2614         (MethodGenerateModes.CombinedMode.get_setter_value_expression):
2615
2616 2011-12-28  Hans Wennborg  <hans@chromium.org>
2617
2618         IndexedDB: IDBKeyRange constructor should throw when lower > upper
2619         https://bugs.webkit.org/show_bug.cgi?id=74705
2620
2621         Reviewed by Tony Chang.
2622
2623         Make IDBKeyRange throw an exception when lower > upper,
2624         or lower == upper and one or both of the bounds is open.
2625
2626         Tested in storage/indexeddb/keyrange.html.
2627
2628         * storage/IDBKeyRange.cpp:
2629         (WebCore::IDBKeyRange::bound):
2630
2631 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
2632
2633         Web Inspector: [protocol] empty enum constant should be replaced with identifier
2634         https://bugs.webkit.org/show_bug.cgi?id=75273
2635
2636         Reviewed by Yury Semikhatsky.
2637
2638         * inspector/Inspector.json:
2639         * inspector/InspectorCSSAgent.cpp:
2640         (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
2641         (WebCore::InspectorCSSAgent::detectOrigin):
2642         * inspector/InspectorStyleSheet.cpp:
2643         (WebCore::InspectorStyleSheet::buildObjectForRule):
2644         * inspector/front-end/CSSStyleModel.js:
2645         (WebInspector.CSSRule.prototype.get isRegular):
2646
2647 2011-12-27  Pavel Feldman  <pfeldman@google.com>
2648
2649         Web Inspector: complete annotating SDK component.
2650         https://bugs.webkit.org/show_bug.cgi?id=75259
2651
2652         Reviewed by Yury Semikhatsky.
2653
2654         * inspector/front-end/DebuggerPresentationModel.js:
2655         (WebInspector.DebuggerPresentationModel.prototype._addScript):
2656         * inspector/front-end/NetworkManager.js:
2657         (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
2658         (WebInspector.NetworkDispatcher.prototype._isNull):
2659         (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
2660         * inspector/front-end/Resource.js:
2661         (WebInspector.Resource.displayName):
2662         * inspector/front-end/ResourceTreeModel.js:
2663         (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
2664         (WebInspector.ResourceTreeModel.prototype._consoleMessageAdded):
2665         (WebInspector.ResourceTreeFrame.prototype.get name):
2666         * inspector/front-end/TabbedEditorContainer.js:
2667
2668 2011-12-27  Anantanarayanan G Iyengar  <ananta@chromium.org>
2669
2670         Crash in the WebKit accessibility code while attempting to retrieve the title UI element.
2671         https://bugs.webkit.org/show_bug.cgi?id=75279
2672
2673         Reviewed by Ryosuke Niwa.
2674
2675         Fix a crash in the the WebKit accessibility code which occurs while retrieving
2676         the title UI clement. The fix is to NULL check the RenderObject::node return value.
2677
2678         No test added as there is no reduction.
2679
2680         * accessibility/AccessibilityRenderObject.cpp:
2681         (WebCore::AccessibilityRenderObject::titleUIElement):
2682
2683 2011-12-27  Dominic Cooney  <dominicc@chromium.org>
2684
2685         Remove initWebKitAnimationEvent method
2686         https://bugs.webkit.org/show_bug.cgi?id=71698
2687
2688         Reviewed by Ojan Vafai.
2689
2690         Now that WebKitAnimationEvent has a constructor, we don't need
2691         this
2692         method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338> is
2693         tracking the change to the CSS Animations spec.
2694
2695         * dom/WebKitAnimationEvent.cpp:
2696         * dom/WebKitAnimationEvent.h:
2697         * dom/WebKitAnimationEvent.idl:
2698
2699 2011-12-27  Dominic Cooney   <dominicc@chromium.org>
2700
2701         Remove initWebKitTransitionEvent method
2702         https://bugs.webkit.org/show_bug.cgi?id=71701
2703
2704         Reviewed by Ojan Vafai.
2705
2706         Now that WebKitTransitionEvent has a constructor, we don't need
2707         this
2708         method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15339> is
2709         tracking the change to the CSS Transitions spec.
2710
2711         * dom/WebKitTransitionEvent.cpp:
2712         * dom/WebKitTransitionEvent.h:
2713         * dom/WebKitTransitionEvent.idl:
2714
2715 2011-12-27  Tony Chang  <tony@chromium.org>
2716
2717         Move HarfBuzz files into their own directory
2718         https://bugs.webkit.org/show_bug.cgi?id=72780
2719
2720         Reviewed by Daniel Bates.
2721
2722         FontCacheLinux.cpp got moved to platform/graphics/skia/FontCacheSkia.cpp since it wasn't HarfBuzz specific.
2723
2724         I used HarfBuzz in filenames since that seems to be how the name is capitalized on the project home page.
2725
2726         Fixed some style errors caught by the style checker.
2727
2728         * PlatformBlackBerry.cmake:
2729         * WebCore.gyp/WebCore.gyp:
2730         * WebCore.gypi:
2731         * platform/graphics/chromium/FontPlatformData.h:
2732         * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp.
2733         * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.h.
2734         * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontLinux.cpp.
2735         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp.
2736         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h.
2737         * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp.
2738         * platform/graphics/harfbuzz/HarfBuzzSkia.h: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h.
2739         * platform/graphics/harfbuzz/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/SimpleFontDataLinux.cpp.
2740         * platform/graphics/skia/FontCacheSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontCacheLinux.cpp.
2741         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
2742
2743 2011-12-27  Huang Dongsung  <luxtella@company100.net>
2744
2745         [TexMap][QT] The fragment shader in OpenGL ES2 requires the default precision
2746         qualifier.
2747         https://bugs.webkit.org/show_bug.cgi?id=75168
2748
2749         Reviewed by Noam Rosenthal.
2750
2751         No new functionality so no new tests.
2752
2753         * platform/graphics/opengl/TextureMapperGL.cpp:
2754         (WebCore::TextureMapperGL::initializeShaders):
2755
2756 2011-12-27  Ryosuke Niwa  <rniwa@webkit.org>
2757
2758         [Chromium] uninitialized variable in fakeMouseMoveEventTimerFired
2759         https://bugs.webkit.org/show_bug.cgi?id=75263
2760
2761         Reviewed by Tony Chang.
2762
2763         The failure was caused by PlatformKeyboardEvent::getCurrentModifierState in PlatformKeyboardEventChromium.cpp
2764         not initializing arguments on Linux. Fixed the failure by always assigning false to the arguments.
2765
2766         But we should really fix this function for Linux. Not recognizing any modifier isn't great.
2767
2768         * platform/chromium/PlatformKeyboardEventChromium.cpp:
2769         (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
2770
2771 2011-12-27  Kentaro Hara  <haraken@chromium.org>
2772
2773         WIP: Enable the [Supplemental] IDL on Gtk
2774         https://bugs.webkit.org/show_bug.cgi?id=74972
2775
2776         Reviewed by Adam Barth.
2777
2778         This patch enables the [Supplemental] IDL on Gtk by changing the build
2779         flow of Gtk as follows.
2780
2781         - Previous build flow:
2782             foreach $idl (all IDL files) {
2783                 generate-bindings.pl depends on $idl;
2784                 generate-bindings.pl reads $idl;
2785                 generate-bindings.pl generates .h and .cpp files for $idl;
2786             }
2787
2788         - New build flow (See the discussions in bug 72138 for more details):
2789             resolve-supplemental.pl depends on all IDL files;
2790             resolve-supplemental.pl reads all IDL files;
2791             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
2792             resolve-supplemental.pl outputs supplemental_dependency.tmp;
2793             foreach $idl (all IDL files) {
2794                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
2795                 generate-bindings.pl reads $idl;
2796                 generate-bindings.pl reads supplemental_dependency.tmp;
2797                 generate-bindings.pl generates .h and .cpp files for $idl,
2798                     including all attributes in the IDL files that are implementing $idl;
2799             }
2800
2801         Tests: Confirm that build succeeds.
2802                http/tests/websocket/tests/*
2803
2804         * GNUmakefile.am: Described the above build flow.
2805         * GNUmakefile.list.am: Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
2806         that are generated by the IDL files.
2807
2808 2011-12-27  Tony Chang  <tony@chromium.org>
2809
2810         [chromium] When building with clang, enable -Wglobal-constructors
2811         https://bugs.webkit.org/show_bug.cgi?id=74365
2812
2813         Reviewed by Adam Barth.
2814
2815         * WebCore.gyp/WebCore.gyp:
2816
2817 2011-12-27  Tony Chang  <tony@chromium.org>
2818
2819         [chromium] really enable wpo for WebCore libs and for WTF
2820         https://bugs.webkit.org/show_bug.cgi?id=75264
2821
2822         Reviewed by Adam Barth.
2823
2824         * WebCore.gyp/WebCore.gyp: The variable was getting clobbered by the
2825         value set in common.gypi.  Use a target_defaults instead to set the
2826         variable.  I tested manually on my Windows machine and
2827         WholeProgramOptimization is getting set when buildtype is Official.
2828
2829 2011-12-27  Tony Chang  <tony@chromium.org>
2830
2831         [chromium] remove references to files no longer in the tree
2832         https://bugs.webkit.org/show_bug.cgi?id=75262
2833
2834         Reviewed by Adam Barth.
2835
2836         * WebCore.gypi: platform/mac/PlatformMouseEventMac.mm and platform/mac/WheelEventMac.mm
2837         were removed in r103652.
2838
2839 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
2840
2841         Unreviewed web inspector localizedStrings.js fix.
2842
2843         * English.lproj/localizedStrings.js:
2844
2845 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
2846
2847         Web Inspector: Introduce support for experimental settings.
2848         https://bugs.webkit.org/show_bug.cgi?id=75250
2849
2850         Reviewed by Pavel Feldman.
2851
2852         * English.lproj/localizedStrings.js:
2853         * inspector/front-end/ScriptsPanel.js:
2854         * inspector/front-end/Settings.js:
2855         (WebInspector.ExperimentsSettings):
2856         (WebInspector.ExperimentsSettings.prototype.get experiments):
2857         (WebInspector.ExperimentsSettings.prototype.get experimentsEnabled):
2858         (WebInspector.ExperimentsSettings.prototype._createExperiment):
2859         (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting.get var):
2860         (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting):
2861         (set WebInspector.Experiment):
2862         (WebInspector.Experiment.prototype.get name):
2863         (WebInspector.Experiment.prototype.get title):
2864         (WebInspector.Experiment.prototype.isEnabled):
2865         (WebInspector.Experiment.prototype.setEnabled):
2866         (set WebInspector):
2867         * inspector/front-end/SettingsScreen.js:
2868         (WebInspector.SettingsScreen):
2869         (WebInspector.SettingsScreen.prototype._createExperimentsWarningSubsection):
2870         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox.listener):
2871         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
2872         * inspector/front-end/helpScreen.css:
2873         (.settings-experiments-warning-subsection-warning):
2874         (.settings-experiments-warning-subsection-message):
2875
2876 2011-12-27  Alexander Pavlov  <apavlov@chromium.org>
2877
2878         Web Inspector: exception when scrolling in JavaScriptOutline dialog with empty query
2879         https://bugs.webkit.org/show_bug.cgi?id=75255
2880
2881         Reviewed by Pavel Feldman.
2882
2883         * inspector/front-end/JavaScriptOutlineDialog.js:
2884         (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
2885
2886 2011-12-27  Pavel Feldman  <pfeldman@google.com>
2887
2888         Web Inspector: add more annotations on SDK classes.
2889         https://bugs.webkit.org/show_bug.cgi?id=75247
2890
2891         Reviewed by Yury Semikhatsky.
2892
2893         * inspector/Inspector.json:
2894         * inspector/compile-front-end.sh:
2895         * inspector/front-end/ApplicationCacheModel.js:
2896         (WebInspector.ApplicationCacheDispatcher.prototype.networkStateUpdated):
2897         * inspector/front-end/BreakpointManager.js:
2898         (WebInspector.BreakpointManager.prototype._breakpoint):
2899         * inspector/front-end/Color.js:
2900         (WebInspector.Color.prototype.get shorthex):
2901         (WebInspector.Color.prototype.get hex):
2902         (WebInspector.Color.prototype.get rgb):
2903         (WebInspector.Color.prototype.get hsl):
2904         (WebInspector.Color.prototype.get nickname):
2905         (WebInspector.Color.prototype.hasShortHex):
2906         (WebInspector.Color.prototype._individualRGBValueToFloatValue):
2907         (WebInspector.Color.prototype._rgbStringsToHex):
2908         (WebInspector.Color.prototype._parse.this.nickname.set 2):
2909         (WebInspector.Color.prototype._parse.this.hsla.set 1):
2910         (WebInspector.Color.prototype._parse.this.rgba.set 0):
2911         (WebInspector.Color.prototype._parse.set WebInspector):
2912         (WebInspector.Color.prototype._parse):
2913         * inspector/front-end/CompilerSourceMapping.js:
2914         * inspector/front-end/ConsoleModel.js:
2915         * inspector/front-end/ContentProviders.js:
2916         (WebInspector.ScriptContentProvider):
2917         (WebInspector.ConcatenatedScriptsContentProvider):
2918         (WebInspector.CompilerSourceMappingContentProvider):
2919         (WebInspector.StaticContentProvider):
2920         * inspector/front-end/CookieParser.js:
2921         (WebInspector.CookieParser.KeyValue):
2922         (WebInspector.CookieParser.prototype.parseCookie):
2923         (WebInspector.CookieParser.prototype.parseSetCookie):
2924         (WebInspector.CookieParser.prototype._extractKeyValue):
2925         * inspector/front-end/DOMStorage.js:
2926         * inspector/front-end/Database.js:
2927         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
2928         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
2929         * inspector/front-end/DebuggerModel.js:
2930         (WebInspector.DebuggerModel.Location):
2931         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2932         * inspector/front-end/DebuggerPresentationModel.js:
2933         (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
2934         * inspector/front-end/ElementsTreeOutline.js:
2935         * inspector/front-end/HAREntry.js:
2936         * inspector/front-end/NetworkLog.js:
2937         (WebInspector.NetworkLog.prototype._mainFrameNavigated):
2938         * inspector/front-end/Placard.js:
2939         * inspector/front-end/RawSourceCode.js:
2940         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
2941         (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
2942         * inspector/front-end/RemoteObject.js:
2943         (WebInspector.RemoteObject.fromPrimitiveValue):
2944         (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
2945         (WebInspector.RemoteObject.prototype.setPropertyValue):
2946         (WebInspector.LocalJSONObject.prototype.get hasChildren):
2947         (WebInspector.LocalJSONObject.prototype._children):
2948         * inspector/front-end/Resource.js:
2949         (WebInspector.Resource.restoreRevisions):
2950         (WebInspector.Resource.prototype.get queryParameters):
2951         (WebInspector.Resource.prototype.get formParameters):
2952         (WebInspector.Resource.prototype.isHttpFamily):
2953         * inspector/front-end/ResourceCategory.js:
2954         * inspector/front-end/ResourceUtils.js:
2955         * inspector/front-end/ScopeChainSidebarPane.js:
2956         (WebInspector.ScopeChainSidebarPane.prototype.update):
2957         * inspector/front-end/Script.js:
2958         (WebInspector.Script.prototype.isInlineScript):
2959         * inspector/front-end/ScriptFormatter.js:
2960         (WebInspector.ScriptFormatter.positionToLocation):
2961         * inspector/front-end/WelcomeView.js:
2962         (WebInspector.WelcomeView.prototype.addMessage):
2963         * inspector/front-end/externs.js:
2964         (Array.prototype.upperBound):
2965
2966 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
2967
2968         Web Inspector: Scripts panel tabbed editor does not reopen closed tabs.
2969         https://bugs.webkit.org/show_bug.cgi?id=75245
2970
2971         Reviewed by Pavel Feldman.
2972
2973         * inspector/front-end/NetworkItemView.js:
2974         (WebInspector.NetworkItemView):
2975         * inspector/front-end/TabbedEditorContainer.js:
2976         (WebInspector.TabbedEditorContainer):
2977         (WebInspector.TabbedEditorContainer.prototype._tabClosed):
2978         * inspector/front-end/TabbedPane.js:
2979         (WebInspector.TabbedPane.prototype.closeTab):
2980         (WebInspector.TabbedPane.prototype.selectTab):
2981
2982 2011-12-27  Yury Semikhatsky  <yurys@chromium.org>
2983
2984         Web Inspector: report per document JS event listener count
2985         https://bugs.webkit.org/show_bug.cgi?id=74298
2986
2987         This patch adds JS event listener count to the memory agent
2988         report.
2989
2990         Reviewed by Pavel Feldman.
2991
2992         Test: inspector/dom-statistics.html
2993
2994         * inspector/Inspector.json:
2995         * inspector/InspectorMemoryAgent.cpp:
2996
2997 2011-12-27  Alexander Pavlov  <apavlov@chromium.org>
2998
2999         Web Inspector: [REGRESSION] Go to Function dialog always has a minimal height
3000         https://bugs.webkit.org/show_bug.cgi?id=75254
3001
3002         Reviewed by Yury Semikhatsky.
3003
3004         * inspector/front-end/scriptsPanel.css:
3005         (.script-view):
3006
3007 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
3008
3009         Web Inspector: Create tabbed editor for scripts panel.
3010         https://bugs.webkit.org/show_bug.cgi?id=75230
3011
3012         Reviewed by Pavel Feldman.
3013
3014         * WebCore.gypi:
3015         * WebCore.vcproj/WebCore.vcproj:
3016         * inspector/compile-front-end.sh:
3017         * inspector/front-end/ScriptsNavigator.js:
3018         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes.get if):
3019         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
3020         (WebInspector.NavigatorScriptTreeElement.prototype.ondblclick):
3021         (WebInspector.NavigatorScriptTreeElement.prototype.onenter):
3022         * inspector/front-end/ScriptsPanel.js:
3023         * inspector/front-end/TabbedEditorContainer.js: Added.
3024         * inspector/front-end/TabbedPane.js:
3025         (WebInspector.TabbedPane.prototype.get visibleView):
3026         (WebInspector.TabbedPane.prototype.get selectedTabId):
3027         (WebInspector.TabbedPane.prototype.closeAllTabs):
3028         (WebInspector.TabbedPane.prototype.changeTabTitle):
3029         (WebInspector.TabbedPane.prototype.changeTabView):
3030         (WebInspector.TabbedPaneTab):
3031         (WebInspector.TabbedPaneTab.prototype.get title):
3032         (WebInspector.TabbedPaneTab.prototype.set title):
3033         (WebInspector.TabbedPaneTab.prototype.get view):
3034         (WebInspector.TabbedPaneTab.prototype.set view):
3035         (WebInspector.TabbedPaneTab.prototype._createTabElement):
3036         * inspector/front-end/WebKit.qrc:
3037         * inspector/front-end/inspector.html:
3038         * inspector/front-end/scriptsPanel.css:
3039         (.scripts-views-container):
3040         (.script-view):
3041         (#scripts-editor-container-tabbed-pane .tabbed-pane-header):
3042         (#scripts-editor-container-tabbed-pane .tabbed-pane-header-contents):
3043         (#scripts-editor-container-tabbed-pane .tabbed-pane-content):
3044
3045 2011-12-27  Pavel Feldman  <pfeldman@google.com>
3046
3047         Not reviewed: Rolling out r103703 for breaking Canvas2DLayerChromiumTest.testFullLifecycle.
3048
3049         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3050         (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
3051         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
3052         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
3053         (WebCore::Canvas2DLayerChromium::setTextureManager):
3054         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
3055         (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
3056         (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
3057         (WebCore::Canvas2DLayerChromium::cleanupResources):
3058         * platform/graphics/chromium/Canvas2DLayerChromium.h:
3059
3060 2011-12-22  Vangelis Kokkevis  <vangelis@chromium.org>
3061
3062         [chromium] Bypass the shadow texture copy for accelerated
3063         canvas when running the compositor in single threaded mode.
3064         https://bugs.webkit.org/show_bug.cgi?id=75146
3065
3066         The texture copy fails on Windows as glCopyTexImage2D() doesn't
3067         support BGRA source textures. 
3068         This change also modified Canvas2DLayerChromium::updateCompositorResources
3069         to call glCopyTexSubImage2D() instead of glCopyTexImage2D() so that
3070         the copy can work with texture allocated via the glTexStorage2D
3071         extension.
3072
3073         Reviewed by James Robinson.
3074
3075
3076         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3077         (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
3078         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
3079         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
3080         (WebCore::Canvas2DLayerChromium::setTextureManager):
3081         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
3082         (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
3083         (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
3084         (WebCore::Canvas2DLayerChromium::cleanupResources):
3085         * platform/graphics/chromium/Canvas2DLayerChromium.h:
3086
3087 2011-12-26  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3088
3089         [EFL][WK2] Implement context menu for EFL port.
3090         https://bugs.webkit.org/show_bug.cgi?id=74995
3091
3092         Reviewed by Anders Carlsson.
3093
3094         Implement missing ContextMenuEfl class in order to support WK2's context menu.
3095         Because WK2's context menu still needs WebCore's context menu implementation.
3096         And of course, this patch also can be used for WK1 without CROSS_PLATFORM_CONTEXT_MENU
3097         option.
3098
3099         * platform/ContextMenu.h:
3100         * platform/ContextMenuItem.h:
3101         * platform/PlatformMenuDescription.h:
3102         * platform/efl/ContextMenuEfl.cpp:
3103         (WebCore::ContextMenu::~ContextMenu):
3104         (WebCore::ContextMenu::appendItem):
3105         (WebCore::ContextMenu::insertItem):
3106         (WebCore::ContextMenu::itemCount):
3107         (WebCore::ContextMenu::setPlatformDescription):
3108         (WebCore::ContextMenu::platformDescription):
3109         (WebCore::ContextMenu::releasePlatformDescription):
3110         (WebCore::platformMenuDescription):
3111         (WebCore::contextMenuItemVector):
3112         * platform/efl/ContextMenuItemEfl.cpp:
3113         (WebCore::ContextMenuItem::ContextMenuItem):
3114         (WebCore::ContextMenuItem::~ContextMenuItem):
3115         (WebCore::ContextMenuItem::setType):
3116         (WebCore::ContextMenuItem::type):
3117         (WebCore::ContextMenuItem::setAction):
3118         (WebCore::ContextMenuItem::action):
3119         (WebCore::ContextMenuItem::setTitle):
3120         (WebCore::ContextMenuItem::title):
3121         (WebCore::ContextMenuItem::setChecked):
3122         (WebCore::ContextMenuItem::checked):
3123         (WebCore::ContextMenuItem::setEnabled):
3124         (WebCore::ContextMenuItem::enabled):
3125
3126 2011-12-26  Hajime Morrita  <morrita@chromium.org>
3127
3128         [Refactoring] Node::setTreeScopeRecursively() doesn't need includeRoot parameter
3129         https://bugs.webkit.org/show_bug.cgi?id=75240
3130
3131         Reviewed by Anders Carlsson.
3132
3133         No new tests. No behavior change.
3134
3135         * dom/Node.cpp:
3136         (WebCore::Node::setTreeScopeRecursively):
3137         * dom/Node.h:
3138
3139 2011-12-26  Darin Adler  <darin@apple.com>
3140
3141         Use OwnPtr and OwnArrayPtr in a couple more places
3142         https://bugs.webkit.org/show_bug.cgi?id=75211
3143
3144         Reviewed by Andreas Kling.
3145
3146         I had a patch with some changes from a while back from going through all sorts of
3147         classes and changing code to use adoptPtr. Most were landed long ago, these are the
3148         ones that still apply.
3149
3150         There are six pieces here that could each be landed separately.
3151         The big one is CSSParser.
3152
3153         * css/CSSGrammar.y: Update for members and functions that now
3154         return PassOwnPtr instead of raw pointers.
3155         * css/CSSParser.cpp:
3156         (WebCore::CSSParser::CSSParser): Remove explicit construction
3157         for m_valueList and m_data since OwnPtr and OwnArrayPtr initialize
3158         to zero without it.
3159         (WebCore::CSSParser::~CSSParser): Removed delete m_valueList and
3160         fastFree(m_data) since OwnPtr and OwnArrayPtr handle that.
3161         (WebCore::CSSParser::setupParser): Use adoptArrayPtr and new for
3162         the character array instead of fastFree/fastMalloc. Added get
3163         function calls as needed.
3164         (WebCore::CSSParser::parseValue): Added get function calls as needed.
3165         (WebCore::CSSParser::parseContent): Ditto.
3166         (WebCore::CSSParser::parseFillProperty): Ditto.
3167         (WebCore::CSSParser::parseTransformOriginShorthand): Ditto.
3168         (WebCore::CSSParser::parseBorderImage): Ditto.
3169         (WebCore::CSSParser::parseTransformOrigin): Ditto.
3170         (WebCore::CSSParser::parsePerspectiveOrigin): Ditto.
3171         (WebCore::CSSParser::sinkFloatingValueList): Changed to return PassOwnPtr.
3172         The adoptPtr call is here.
3173         (WebCore::CSSParser::sinkFloatingFunction): Ditto.
3174         (WebCore::CSSParser::markSelectorListStart): Added get function calls as needed.
3175         (WebCore::CSSParser::markSelectorListEnd): Ditto.
3176         (WebCore::CSSParser::markRuleBodyStart): Ditto.
3177         (WebCore::CSSParser::markRuleBodyEnd): Ditto.
3178         (WebCore::CSSParser::markPropertyStart): Ditto.
3179         (WebCore::CSSParser::markPropertyEnd): Ditto.
3180         * css/CSSParser.h: Moved conditional includes to their own paragraph.
3181         Made sinkFloatingValueList and sinkFloatingFunction return PassOwnPtr.
3182         Made m_valueList an OwnPtr and m_data an OwnArrayPtr.
3183         * css/SVGCSSParser.cpp:
3184         (WebCore::CSSParser::parseSVGValue): Added a call to the get function.
3185
3186         * html/PluginDocument.h: Made isPluginDocument private. Also marked all the
3187         functions that are overriding here as OVERRIDE since I was touching the header.
3188
3189         * html/parser/HTMLToken.h:
3190         (WebCore::HTMLTokenTypes::DoctypeData::DoctypeData): Removed an unneeded line
3191         explicitly initializing the base class.
3192
3193         * page/animation/AnimationBase.cpp:
3194         (WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper): Fixed indent.
3195
3196         * rendering/style/RenderStyle.h: Moved conditional includes to their own paragraph.
3197
3198         * xml/parser/MarkupTokenBase.h:
3199         (WebCore::MarkupTokenBase::beginDOCTYPE): Removed unneeded parentheses.
3200
3201 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
3202
3203         Web Inspector: Extract FileEditor from ScriptsPanel.
3204         https://bugs.webkit.org/show_bug.cgi?id=75229
3205
3206         Reviewed by Pavel Feldman.
3207
3208         * inspector/front-end/JavaScriptSourceFrame.js:
3209         (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
3210         * inspector/front-end/ScriptsNavigator.js:
3211         * inspector/front-end/ScriptsPanel.js:
3212         (WebInspector.ScriptsPanel.prototype._reset):
3213         (WebInspector.ScriptsPanel.prototype.get visibleView):
3214         (WebInspector.ScriptsPanel.prototype._updateScriptViewStatusBarItems):
3215         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced.get if):
3216         (WebInspector.ScriptsPanel.EditorContainer):
3217         (WebInspector.ScriptsPanel.EditorContainer.prototype.get currentSourceFrame):
3218         (WebInspector.ScriptsPanel.EditorContainer.prototype.show):
3219         (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
3220         (WebInspector.ScriptsPanel.EditorContainer.prototype.isSourceFrameOpen):
3221         (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
3222         (WebInspector.ScriptsPanel.EditorContainer.prototype.setSourceFrameIsDirty):
3223         (WebInspector.ScriptsPanel.EditorContainer.prototype.reset):
3224         (WebInspector.ScriptsPanel.SingleFileEditorContainer):
3225         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get currentSourceFrame):
3226         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.show):
3227         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
3228         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.isSourceFrameOpen):
3229         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
3230         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setSourceFrameIsDirty):
3231         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
3232         * inspector/front-end/UISourceCode.js:
3233         (WebInspector.UISourceCode.prototype.get domain):
3234         (WebInspector.UISourceCode.prototype.get folderName):
3235         (WebInspector.UISourceCode.prototype.get fileName):
3236         (WebInspector.UISourceCode.prototype.get displayName):
3237         (WebInspector.UISourceCode.prototype._parseURL):
3238
3239 2011-12-26  Darin Adler  <darin@apple.com>
3240
3241         Fix mutation observer build after didMoveToNewDocument change
3242         https://bugs.webkit.org/show_bug.cgi?id=75224
3243
3244         Reviewed by Hajime Morita.
3245
3246         * dom/Node.cpp:
3247         (WebCore::willCallDidMoveToNewDocument): Added.
3248         (WebCore::didMoveToNewDocumentWasCalled): Added.
3249         (WebCore::Node::setDocument): Call new debugging function.
3250         (WebCore::Node::didMoveToNewDocument): Ditto. Also use ASSERT_UNUSED
3251         unconditionally rather than UNUSED_PARAM inside and #if. Also added
3252         a new assertion that checks that hte old document was passed through
3253         properly.
3254
3255 2011-12-26  Alexander Pavlov  <apavlov@chromium.org>
3256
3257         Web Inspector: [Scripts] Implement iterative match highlighting in the "Go to Function" dialog item list
3258         https://bugs.webkit.org/show_bug.cgi?id=75226
3259
3260         Reviewed by Pavel Feldman.
3261
3262         * inspector/front-end/JavaScriptOutlineDialog.js:
3263         (WebInspector.JavaScriptOutlineDialog):
3264         (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
3265         (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
3266         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
3267         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
3268         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
3269         (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
3270         (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
3271         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter):
3272         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.highlightViewportItems):
3273         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.clearHighlight):
3274         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._highlightItem):
3275         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._viewportRowRange):
3276         * inspector/front-end/javaScriptOutlineDialog.css:
3277         (.js-outline-dialog > .container > div.item > span.highlight):
3278
3279 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
3280
3281         Web Inspector: Extract FileSelector from ScriptsPanel.
3282         https://bugs.webkit.org/show_bug.cgi?id=75173
3283
3284         Reviewed by Pavel Feldman.
3285
3286         * inspector/front-end/ScriptsNavigator.js:
3287         (WebInspector.ScriptsNavigator):
3288         (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
3289         (WebInspector.ScriptsNavigator.prototype.show):
3290         (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
3291         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
3292         (WebInspector.ScriptsNavigator.prototype.scriptSelected):
3293         * inspector/front-end/ScriptsPanel.js:
3294         (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
3295         (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
3296         (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
3297         (WebInspector.ScriptsPanel.prototype._reset):
3298         (WebInspector.ScriptsPanel.prototype._showSourceLine):
3299         (WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
3300         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
3301         (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
3302         (WebInspector.ScriptsPanel.prototype._scriptSelected):
3303         (WebInspector.ScriptsPanel.FileSelector):
3304         (WebInspector.ScriptsPanel.FileSelector.prototype.get defaultFocusedElement):
3305         (WebInspector.ScriptsPanel.FileSelector.prototype.show):
3306         (WebInspector.ScriptsPanel.FileSelector.prototype.addUISourceCode):
3307         (WebInspector.ScriptsPanel.FileSelector.prototype.isScriptSourceAdded):
3308         (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
3309         (WebInspector.ScriptsPanel.FileSelector.prototype.setScriptSourceIsDirty):
3310         (WebInspector.ScriptsPanel.FileSelector.prototype.replaceUISourceCodes):
3311         (WebInspector.ScriptsPanel.ComboBoxFileSelector):
3312         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.get defaultFocusedElement):
3313         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.show):
3314         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.showDebugSidebarResizeWidget):
3315         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.addUISourceCode):
3316         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.isScriptSourceAdded):
3317         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
3318         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
3319         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addToHistory):
3320         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
3321         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._showScriptFoldersSettingChanged):
3322         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._reset):
3323         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.setScriptSourceIsDirty):
3324         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._createEditorToolbar):
3325         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.get var):
3326         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
3327         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
3328         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
3329         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._resetFilesSelect):
3330         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._updateBackAndForwardButtons):
3331         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
3332         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
3333         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
3334         * inspector/front-end/inspector.html:
3335         * inspector/front-end/utilities.js:
3336         ():
3337
3338 2011-12-26  Alexander Pavlov  <apavlov@chromium.org>
3339
3340         Web Inspector: Implement "Go to Function" dialog for JavaScript
3341         https://bugs.webkit.org/show_bug.cgi?id=75092
3342
3343         Reviewed by Pavel Feldman.
3344
3345         * English.lproj/localizedStrings.js:
3346         * WebCore.gypi:
3347         * WebCore.vcproj/WebCore.vcproj:
3348         * inspector/compile-front-end.sh:
3349         * inspector/front-end/JavaScriptOutlineDialog.js: Added.
3350         (WebInspector.JavaScriptOutlineDialog.onMouseDown):
3351         (WebInspector.JavaScriptOutlineDialog):
3352         (WebInspector.JavaScriptOutlineDialog.didAddChunk):
3353         (WebInspector.JavaScriptOutlineDialog.install):
3354         (WebInspector.JavaScriptOutlineDialog._show):
3355         (WebInspector.JavaScriptOutlineDialog.createShortcut):
3356         (WebInspector.JavaScriptOutlineDialog.prototype._resizeWindow):
3357         (WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
3358         (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
3359         (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
3360         (WebInspector.JavaScriptOutlineDialog.prototype._selectFirstItem):
3361         (WebInspector.JavaScriptOutlineDialog.prototype._hide):
3362         (WebInspector.JavaScriptOutlineDialog.prototype._onBlur):
3363         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
3364         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
3365         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
3366         (WebInspector.JavaScriptOutlineDialog.prototype._scheduleFilter):
3367         (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
3368         (WebInspector.JavaScriptOutlineDialog.prototype._onClick):
3369         (WebInspector.JavaScriptOutlineDialog.prototype._onMouseMove):
3370         (WebInspector.JavaScriptOutlineDialog.prototype._highlightFunctionLine):
3371         * inspector/front-end/JavaScriptSourceFrame.js:
3372         (WebInspector.JavaScriptSourceFrame.prototype.get uiSourceCode):
3373         * inspector/front-end/ScriptsPanel.js:
3374         (WebInspector.ScriptsPanel.prototype._didBuildOutlineChunk):
3375         (WebInspector.ScriptsPanel.prototype._reset):
3376         (WebInspector.ScriptsPanel.prototype.requestVisibleScriptOutline):
3377         (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
3378         * inspector/front-end/WebKit.qrc:
3379         * inspector/front-end/inspector.html:
3380         * inspector/front-end/javaScriptOutlineDialog.css: Added.
3381         (.js-outline-dialog):
3382         (.js-outline-dialog > input):
3383         (.js-outline-dialog > div.progress):
3384         (.js-outline-dialog > div.container):
3385         (.js-outline-dialog > .container > div.item):
3386         (.js-outline-dialog > .container > div.item.selected):
3387
3388 2011-12-26  Pavel Feldman  <pfeldman@google.com>
3389
3390         Web Inspector: make SDK compilation component self-contained.
3391         https://bugs.webkit.org/show_bug.cgi?id=75172
3392
3393         Reviewed by Yury Semikhatsky.
3394
3395         * inspector/compile-front-end.sh:
3396         * inspector/front-end/ConsoleMessage.js:
3397         (WebInspector.ConsoleMessageImpl):
3398         (WebInspector.ConsoleMessageImpl.prototype.get stackTrace):
3399         (WebInspector.ConsoleMessageImpl.prototype.clone):
3400         * inspector/front-end/ConsoleModel.js:
3401         (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
3402         (WebInspector.ConsoleMessage):
3403         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
3404         (WebInspector.ConsoleMessage.prototype.updateRepeatCount):
3405         (WebInspector.ConsoleMessage.prototype.clone):
3406         * inspector/front-end/DebuggerPresentationModel.js:
3407         (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
3408         * inspector/front-end/ResourceUtils.js:
3409         * inspector/front-end/UIUtils.js:
3410         (WebInspector.resetToolbarColors):
3411         (WebInspector.populateHrefContextMenu):
3412
3413 2011-12-26  Hajime Morrita  <morrita@google.com>
3414
3415         Unreviewed bad merge fix.
3416
3417         * svg/SVGSVGElement.cpp:
3418         (WebCore::SVGSVGElement::didMoveToNewDocument):
3419
3420 2011-12-25  Hajime Morrita  <morrita@chromium.org>
3421
3422         https://bugs.webkit.org/show_bug.cgi?id=74067
3423         Refactoring: Unitfy willMoveToNewDocument() and didMoveToNewDocument()
3424
3425         Reviewed by Darin Adler.
3426
3427         No new tests. No behavior change.
3428
3429         This change combines two method Node::willMoveToNewOwnerDocument() and Node::didMoveToNewOwnerDocument()
3430         into Node::didMoveToNewDocument(Document* oldDocument).
3431
3432         The intention of this change is:
3433         - Making upcoming refactoring (Bug 59816) possible. The refactoring will turn Node::m_document into
3434           Node::m_treeScope, and we will no longer have Node::setDocument() where we can invoke both
3435           willMoveToNewDocument() and didMoveToNewDocument() at once.
3436         - Killing one extra virtual method call.
3437         - Making the concept of "move" clearer by keeping such an operation into the single method.
3438
3439         * dom/Node.cpp:
3440         (WebCore::setWillMoveToNewDocumentWasCalled):
3441         (WebCore::setDidMoveToNewDocumentWasCalled):
3442         (WebCore::Node::setDocument):
3443         (WebCore::Node::didMoveToNewDocument):
3444         * dom/Node.h:
3445         * dom/StyledElement.cpp:
3446         (WebCore::StyledElement::attributeChanged):
3447         * html/FormAssociatedElement.cpp:
3448         (WebCore::FormAssociatedElement::didMoveToNewDocument):
3449         * html/FormAssociatedElement.h:
3450         * html/HTMLFormControlElement.cpp:
3451         (WebCore::HTMLFormControlElement::didMoveToNewDocument):
3452         (WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
3453         * html/HTMLFormControlElement.h:
3454         * html/HTMLFormElement.cpp:
3455         (WebCore::HTMLFormElement::didMoveToNewDocument):
3456         * html/HTMLFormElement.h:
3457         * html/HTMLImageElement.cpp:
3458         (WebCore::HTMLImageElement::didMoveToNewDocument):
3459         * html/HTMLImageElement.h:
3460         * html/HTMLInputElement.cpp:
3461         (WebCore::HTMLInputElement::didMoveToNewDocument):
3462         * html/HTMLInputElement.h:
3463         * html/HTMLMediaElement.cpp:
3464         (WebCore::HTMLMediaElement::didMoveToNewDocument):
3465         * html/HTMLMediaElement.h:
3466         * html/HTMLObjectElement.cpp:
3467         (WebCore::HTMLObjectElement::didMoveToNewDocument):
3468         * html/HTMLObjectElement.h:
3469         * html/HTMLPlugInImageElement.cpp:
3470         (WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
3471         * html/HTMLPlugInImageElement.h:
3472         * html/HTMLVideoElement.cpp:
3473         (WebCore::HTMLVideoElement::didMoveToNewDocument):
3474         * html/HTMLVideoElement.h:
3475         * html/ImageDocument.cpp:
3476         (WebCore::ImageDocumentElement::didMoveToNewDocument):